EKS Observability : 필수 메트릭
현재 환경
모니터링은 인프라 및 애플리케이션 소유자가 시스템의 과거 및 현재 상태를 확인하고 이해할 수 있는 솔루션으로 정의되며, 정의된 메트릭 또는 로그를 수집하는 데 초점을 맞춥니다.
모니터링은 수년에 걸쳐 발전해 왔습니다. 문제를 디버그하고 해결하기 위한 디버그 및 덤프 로그 작업에서 시작하여 syslogs, top 등과 같은 명령줄 도구를 사용한 기본 모니터링으로 발전했고, 이를 대시보드에서 시각화할 수 있게 되었습니다. 클라우드의 등장과 규모의 증가로 우리는 그 어느 때보다 많은 것을 추적하고 있습니다. 업계는 인프라 및 애플리케이션 소유자가 시스템을 능동적으로 문제 해결하고 디버그할 수 있는 솔루션인 Observability로 더 많이 전환했습니다. Observability는 메트릭에서 도출된 패턴을 보는 데 더 초점을 맞춥니다.
메트릭, 왜 중요한가?
메트릭은 생성된 시간 순서로 유지되는 일련의 숫자 값입니다. 환경의 서버 수, 디스크 사용량, 초당 처리하는 요청 수 또는 이러한 요청을 완료하는 지연 시간까지 모든 것을 추적하는 데 사용됩니다. 메트릭은 시스템이 어떻게 수행되고 있는지 알려주는 데이터입니다. 소규모든 대규모든 클러스터를 운영하든, 시스템의 건강 상태와 성능에 대한 인사이트를 얻으면 개선 영역을 식별하고, 문제를 해결하고 추적하며, 전체적으로 워크로드의 성능과 효율성을 개선할 수 있습니다. 이러한 변경 사항 은 클러스터에 소비하는 시간과 리소스에 영향을 미칠 수 있으며, 이는 비용으로 직결됩니다.
메트릭 수집
EKS 클러스터에서 메트릭을 수집하는 것은 세 가지 컴포넌트로 구성됩니다:
- 소스: 이 가이드에 나열된 것과 같이 메트릭이 생성되는 곳.
- 에이전트: EKS 환경에서 실행되는 애플리케이션으로, 종종 에이전트라고 불리며, 모니터링 데이터를 수집하고 이 데이터를 두 번째 컴포넌트로 푸시합니다. 이 컴포넌트의 예로는 AWS Distro for OpenTelemetry(ADOT)와 CloudWatch Agent가 있습니다.
- 목적지: 모니터링 데이터 저장 및 분석 솔루션으로, 일반적으로 시계열 형식 데이터에 최적화된 데이터 서비스입니다. 이 컴포넌트의 예로는 Amazon Managed Service for Prometheus와 AWS CloudWatch가 있습니다.
참고: 이 섹션에서 구성 예시는 AWS Observability Accelerator의 관련 섹션에 대한 링크입니다. 이는 EKS 메트릭 수집 구현에 대한 최신 안내와 예시를 제공하기 위한 것입니다.