Container Insights란?

컨테이너 기반 애플리케이션과 마이크로서비스의 도입이 확대되면서 모니터링 및 관리 작업에 대한 부담도 커지고 있다. AWS는 컨테이너에서 모니터링 데이터를 안정적으로 수집하고 성능 또는 기타 문제를 분석하는 것을 돕기 위해 지난 2019년 7월 뉴욕에서 개최된 AWS Summit에서 Amazon ECS와 Aws Fargate에 대해 Amazon CloudWatch Container Insights 기능을 미리보기로 공개하였다. 이후, 2019년 9월 CloudWatch Container Insights는 기존 클러스터까지 모니터링할 수 있는 기능을 추가하여 정식 출시하였다. 

CloudWatch Container Insights를 사용하여 컨테이너식 애플리케이션 및 마이크로서비스의 지표 및 로그를 수집하고 집계하며 요약할 수 있다. Amazon EKS 및 Kubernetes에서는 Container Insights가 컨테이너화된 버전의 CloudWatch 에이전트를 사용하여 클러스터에서 실행 중인 모든 컨테이너를 검색하여 컨테이너 스택의 모든 계층에서 성능 및 운영 데이터를 수집한다. 

또한 환경에서 발생하는 변경 사항을 지속적으로 모니터링하고 업데이트하므로, 컨테이너 지표와 로그를 수집하고 모니터링, 분석, 그에 대응하는 필요한 여러 도구가 간소화되는 동시에 완벽하고 포괄적인 가시성을 확보하고 개발자의 생산성을 높이는데 집중 할 수 있게 되었다. 

Container Insights에서 수집한 지표는 CloudWatch 자동 대시보드에서 사용할 수 있으며 지표에 대해 CloudWatch 경보를 설정할 수도 있다. 

지원 플랫폼

Container Insights는 Amazon EC2, Amazon Elastic Container Service(Amazon ECS), Amazon Elastic Kubernetes Service(Amazon EKS) 및 Kubernetes 플랫폼에서 사용할 수 있다.

- Amazon ECS의 경우 Container Insights는 Linux와 Windows Server 인스턴스 모두에서 클러스터, 작업 및 서비스 수준의 지표를 수집한다. Linux 인스턴스에서만 인스턴스 레벨에서 지표를 수집할 수 있다.

- Amazon Elastic Kubernetes Service 및 Amazon EC2 인스턴스의 Kubernetes 플랫폼의 경우 Container Insights는 Linux 인스턴스에서만 지원된다.

- AWS Batch에서는 Container Insights가 지원되지 않는다. 

 

이어서 CloudWatch Container Insights를 Amazon EKS 환경에 설치하여 모니터링 결과를 확인해본다.