ECS 작업 및 컨테이너 배포를 모니터링하도록 CloudWatch Container Insights를 구성하려면 어떻게 해야 하나요?

4분 분량
0

Amazon Elastic Container Service(Amazon ECS) 작업 및 컨테이너 배포를 모니터링하도록 Amazon CloudWatch Container Insights를 구성하고 싶습니다. 어떻게 해야 하나요?

간략한 설명

Container Insights는 클러스터, 작업 및 서비스 수준에서 지표를 수집합니다. 여기에는 CPU, 메모리, 디스크 및 네트워크와 같은 리소스 사용이 포함되며 수집된 지표는 CloudWatch 자동 대시보드에서 사용할 수 있습니다.

기본적으로 Container Insights에 대해 모든 새 클러스터를 활성화하도록 Amazon ECS를 구성할 수 있습니다. 또는 클러스터 생성 중에 클러스터 설정을 통해 개별 클러스터에서 Container Insights를 활성화할 수 있습니다. AWS Command Line Interface(AWS CLI)를 사용하여 기존 클러스터에서 Container Insights를 활성화할 수도 있습니다.

해결 방법

참고: AWS CLI 명령을 실행할 때 오류가 발생하는 경우, 최신 버전의 AWS CLI를 사용하고 있는지 확인하세요.

계정 설정 수정

Container Insights 계정 설정에 옵트인하여 생성된 모든 새 클러스터에 대해 Container Insights를 활성화합니다.

CloudWatch 콘솔을 사용하여 계정 설정 수정

  1. Amazon ECS 콘솔을 엽니다.
  2. 탐색 창에서 계정 설정을 수정할 리전을 선택합니다.
  3. **계정 설정(Account Settings)**을 선택합니다.
  4. CloudWatch Container Insights 섹션에서 인증된 AWS Identity and Access Management(IAM) 사용자 및 역할에 대한 각 계정 설정의 확인란을 선택하거나 선택 취소할 수 있습니다. 완료한 후 **저장(Save)**을 선택합니다.
  5. 확인 화면에서 **확인(Confirm)**을 선택하여 선택 사항을 저장합니다.

AWS 계정 루트 사용자로 로그인하면 계정의 기본 설정을 변경할 수 있습니다. 또는 계정에서 특정 IAM 사용자 또는 IAM 역할의 설정을 변경할 수 있습니다.

계정의 모든 IAM 사용자 또는 역할에 대한 기본 계정 설정 수정(AWS CLI)

이 명령을 사용하여 계정의 모든 IAM 사용자 또는 역할에 대한 기본 계정 설정을 수정합니다. IAM 사용자 또는 역할이 이러한 설정을 명시적으로 재정의하지 않는 한, 결과 변경 사항은 전체 AWS 계정에 적용됩니다.

aws ecs put-account-setting-default --name containerInsights --value enabled --region <REGION_NAME>

자세한 내용은 계정 설정 수정(Modifying account settings)을 참조하세요.

Container Insights가 활성화된 클러스터 생성

Amazon ECS 콘솔 또는 AWS CLI를 사용하여 클러스터를 생성하는 동안 Container Insights를 활성화할 수 있습니다.

콘솔을 사용하여 Container Insights가 활성화된 클러스터 생성

참고: 새 Amazon ECS 콘솔(v2)을 사용하여 이 단계를 완료해야 합니다. 클래식 콘솔을 사용하려면 클래식 콘솔을 사용하여 클러스터 생성을 참조하세요.

  1. Amazon ECS 콘솔을 엽니다.
  2. 탐색 창에서 클러스터를 생성할 리전을 선택합니다.
  3. **클러스터(Clusters)**를 선택한 다음 **클러스터 생성(Create cluster)**을 선택합니다.
  4. 클러스터 구성 섹션에서 클러스터를 생성하는 데 필요한 설정을 선택합니다.
  5. **모니터링(Monitoring)**을 확장한 다음 Container Insights 사용을 켭니다.
  6. **생성(Create)**을 선택합니다.

AWS CLI를 사용하여 Container Insights가 활성화된 클러스터 생성

Container Insights가 활성화된 새 클러스터를 생성하려면 다음 명령을 실행합니다.

aws ecs create-cluster --cluster-name <CLUSTER_NAME> --settings "name=containerInsights,value=enabled" --region <REGION_NAME>

기존 Amazon ECS 클러스터에서 Container Insights 활성화

기존 클러스터에서 Container Insights를 활성화하려면 다음 명령을 실행합니다.

aws ecs update-cluster-settings --cluster <CLUSTER_NAME> --settings name=containerInsights,value=enabled --region <REGION_NAME>

Container Insights 고려 사항

CloudWatch Container Insights를 사용할 때는 다음 사항에 유의하세요.

  • Amazon Elastic Compute Cloud(Amazon EC2) 시작 유형을 사용하는 경우 작업에 컨테이너 CPU 리소스 구성이 필요하지 않습니다. ECS 작업 수준에서 CPU 사용률 지표를 표시하려면 작업 정의 내 작업 수준 또는 컨테이너 수준에서 CPU 파라미터를 정의합니다.
  • 네트워크 지표는 AWS Fargate에서 실행되는 모든 작업에 사용할 수 있습니다. 브리지 또는 awsvpc 네트워크 모드를 사용하여 Amazon EC2 인스턴스에서 실행되는 작업에 대해서도 네트워크 지표를 사용할 수 있습니다.
  • EC2 인스턴스에서 호스팅되는 ECS 클러스터에서 인스턴스 수준 지표를 수집하려면 CloudWatch 에이전트를 배포합니다.

CloudWatch Logs Insights를 사용하여 Container Insights 데이터 보기

Amazon ECS용 Container Insights에서 수집한 지표는 단일 작업을 추적할 수 있을 만큼 세분화되지 않았습니다. 이는 사용 가능한 지표가 전부 작업 정의 제품군 수준에서 집계되고 평균화되기 때문입니다. 수집된 성능 데이터를 심층적으로 분석하려면 CloudWatch Logs Insights 쿼리를 사용하세요.

Container Insights 성능 지표는 성능 로그 이벤트를 사용하여 로그 형태로 자동 수집됩니다. CloudWatch Logs 인사이트 콘솔을 열고 다음 형식의 로그 그룹을 선택합니다.

/aws/ecs/containerinsights/<CLUSTER_NAME>/performance

예를 들어 다음 쿼리는 CPU 및 메모리에 대한 작업 수준 사용량을 표시합니다.

stats avg(CpuUtilized) as CPU, avg(MemoryUtilized) as Mem by TaskId
| filter Type="Task"
| sort Mem, CPU desc

관련 정보

Amazon ECS Container Insights 지표

클러스터 및 서비스 수준 지표를 위해 Amazon ECS에서 Container Insights 설정

Amazon ECS에서 EC2 인스턴스 수준 지표를 수집하기 위해 CloudWatch 에이전트 배포

Container Insights 지표 보기

AWS 공식
AWS 공식업데이트됨 2년 전