Amazon EKS의 관찰 가능성 - Amazon EKS

Amazon EKS의 관찰 가능성

사용 가능한 많은 모니터링 또는 로깅 도구를 사용하여 Amazon EKS에서 데이터를 관찰할 수 있습니다. 데이터 분석을 위해 Amazon EKS 로그 데이터를 AWS 서비스 또는 파트너 도구로 스트리밍할 수 있습니다. Amazon EKS 문제 해결을 위한 데이터를 제공하는 AWS Management Console에서 사용할 수 있는 서비스가 많습니다.

Amazon EKS 콘솔의 왼쪽 탐색 창에서 클러스터를 선택한 후 클러스터 이름을 선택하여 클러스터 상태와 세부 정보를 볼 수 있습니다. 클러스터에 배포된 기존의 모든 Kubernetes 리소스에 대한 세부 정보를 보려면 Kubernetes 리소스 보기 섹션을 참조하세요.

모니터링은 Amazon EKS와 AWS 솔루션의 안정성, 가용성 및 성능을 유지하는 데 중요한 부분입니다. AWS 솔루션의 모든 부분으로부터 모니터링 데이터를 수집하는 것이 좋습니다. 그렇게 하면 다중 지점 실패가 발생하는 경우 보다 쉽게 디버깅할 수 있습니다. Amazon EKS 모니터링을 시작하기 전에 모니터링 계획이 다음 문제를 해결할 수 있는지 확인합니다.

  • 목표가 무엇인가요? 클러스터가 급격히 확장될 경우 실시간 알림이 필요하나요?

  • 관찰해야 할 리소스는 무엇인가요?

  • 이러한 리소스를 얼마나 자주 관찰해야 하나요? 귀사는 위험에 신속하게 대응하고 싶나요?

  • 어떤 도구를 사용하고 싶나요? AWS Fargate를 시작의 일부로 이미 실행한 경우에는 기본 제공 로그 라우터를 사용할 수 있습니다.

  • 누가 모니터링 작업을 수행하기를 바라나요?

  • 문제가 발생하면 누구에게 알림을 보내고 싶나요?

Amazon EKS의 로깅 및 모니터링

Amazon EKS는 로깅 및 모니터링을 위한 기본 제공 도구를 제공합니다. 컨트롤 플레인 로깅은 클러스터에 대한 모든 API 호출, 사용자가 클러스터에 어떤 작업을 수행했는지 캡처하는 감사 정보 및 역할 기반 정보를 기록합니다. 자세한 내용은 AWS Prescriptive Guidance의 Logging and monitoring on Amazon EKS를 참조하세요.

Amazon EKS 컨트롤 플레인 로깅은 Amazon EKS 컨트롤 플레인에서 계정의 CloudWatch Logs로 감사 및 진단 로그를 직접 제공합니다. 이러한 로그를 통해 클러스터를 쉽게 보호하고 실행할 수 있습니다. 필요한 로그 유형을 정확하게 선택할 수 있으며, 로그는 CloudWatch의 각 Amazon EKS 클러스터에 대한 그룹에 로그 스트림으로 전송됩니다. 자세한 내용은 Amazon EKS 컨트롤 플레인 로깅 섹션을 참조하세요.

참고

Amazon CloudWatch에서 Amazon EKS 인증자 로그를 확인하면 다음 텍스트 예와 유사한 텍스트가 포함된 항목이 표시됩니다.

level=info msg="mapping IAM role" groups="[]" role="arn:aws:iam::111122223333:role/XXXXXXXXXXXXXXXXXX-NodeManagerRole-XXXXXXXX" username="eks:node-manager"

이 텍스트를 포함하는 항목이 필요합니다. username은 관리형 노드 그룹 및 Fargate에 대해 특정 작업을 수행하는 Amazon EKS 내부 서비스 역할입니다.

낮은 수준의 사용자 지정 가능한 로깅의 경우 Kubernetes 로깅을 사용할 수 있습니다.

Amazon EKS는 Amazon EKS에서 사용자, 역할 또는 AWS 서비스가 수행한 작업에 대한 레코드를 제공하는 서비스인 AWS CloudTrail과 통합됩니다. CloudTrail은 Amazon EKS에 대한 모든 API 호출을 이벤트로 캡처합니다. 캡처되는 호출에는 Amazon EKS 콘솔로부터의 호출과 Amazon EKS API 작업에 대한 코드 호출이 포함됩니다. 자세한 내용은 AWS CloudTrail을 사용하여 Amazon EKS API 호출 로깅 섹션을 참조하세요.

Kubernetes API 서버는 모니터링 및 분석에 유용한 많은 지표를 표시합니다. 자세한 내용은 Prometheus 지표 섹션을 참조하세요.

사용자 지정 Amazon CloudWatch 로그에 대해 Fluent Bit를 구성하려면 Amazon CloudWatch 사용 설명서의 Fluent Bit 설정을 참조하세요.

Amazon EKS의 로깅 및 모니터링 도구

Amazon Web Services는 Amazon EKS를 모니터링하는 데 사용할 수 있는 다양한 도구를 제공합니다. 일부 도구를 구성하여 자동 모니터링을 설정할 수 있지만 일부는 수동 호출이 필요합니다. 사용 중인 환경 및 기존 도구 집합이 허용하는 만큼 모니터링 작업을 자동화하는 것이 좋습니다.

로깅 도구
영역 도구 설명 설치

애플리케이션

Amazon CloudWatch Container Insights

컨테이너식 애플리케이션 및 마이크로서비스의 지표 및 로그를 수집하고 종합하며 요약합니다.

설정 절차

컨트롤 플레인

AWS CloudTrail

사용자, 역할 또는 서비스를 통한 API 호출을 기록합니다.

설정 절차

AWS Fargate 인스턴스의 여러 영역

AWS Fargate 로그 라우터

AWS Fargate의 경우 AWS 서비스 또는 파트너 도구로 로그를 스트리밍합니다. Fluent Bit용 AWS를 사용합니다. 로그를 다른 AWS 서비스 또는 파트너 도구로 스트리밍할 수 있습니다.

설정 절차

모니터링 도구
영역 도구 설명 설치

애플리케이션

CloudWatch Container Insights

CloudWatch Container Insights는 컨테이너 애플리케이션 및 마이크로서비스의 지표 및 로그를 수집하고 종합하며 요약합니다.

설정 절차

애플리케이션

AWS Distro for OpenTelemetry (ADOT)

상호 연관된 지표, 추적 데이터 및 메타데이터를 수집해서 AWS 모니터링 서비스 또는 파트너로 전송합니다. CloudWatch Container Insights를 통해 설정할 수 있습니다.

설정 절차

애플리케이션

Amazon DevOps Guru

노드 수준의 운영 성능 및 가용성을 감지합니다.

설정 절차

애플리케이션

AWS X-Ray

애플리케이션에 대한 추적 데이터를 수신합니다. 이 추적 데이터에는 수신 및 발신 요청과 요청에 대한 메타데이터가 포함됩니다. Amazon EKS의 경우 구현하려면 OpenTelemetry 추가 기능이 필요합니다.

설정 절차

애플리케이션 Amazon CloudWatch Observability Operator Amazon CloudWatch Observability Operator는 지표, 로그 및 추적 데이터를 수집합니다. 이를 Amazon CloudWatch 및 AWS X-Ray로 보냅니다. 설정 절차

컨트롤 플레인

Prometheus

CloudWatch Logs 수집, 아카이브 스토리지 및 데이터 검색 요율이 활성화된 컨트롤 플레인 로그에 적용됩니다.

설정 절차