AWS Distro for OpenTelemetry를 사용하여 Amazon ECS에서 Container Insights 설정
AWS Distro for OpenTelemetry를 사용하여 Amazon ECS 클러스터에서 CloudWatch Container Insights를 설정하려는 경우 이 단원을 참조하세요. AWS Distro for Open Telemetry에 대한 자세한 내용은 AWS Distro for OpenTelemetry
다음 단계에서는 Amazon ECS를 실행 중인 클러스터가 이미 있다고 가정합니다. Amazon ECS와 함께 AWS Distro for Open Telemetry를 사용하고 이러한 용도로 Amazon ECS 클러스터를 설정하는 방법에 대한 자세한 내용은 Amazon Elastic Container Service에서 AWS Distro for OpenTelemetry Collector 설정
1단계: 태스크 역할 생성
첫 번째 단계는 AWS OpenTelemetry Collector가 사용할 클러스터에서 태스크 역할을 생성하는 것입니다.
AWS Distro for OpenTelemetry에 대한 태스크 역할을 생성하려면
https://console.aws.amazon.com/iam/
에서 IAM 콘솔을 엽니다. -
탐색 창에서 정책을 선택한 후 정책 생성을 선택합니다.
-
[JSON] 탭을 선택하고 다음 정책을 복사합니다.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "logs:PutLogEvents", "logs:CreateLogGroup", "logs:CreateLogStream", "logs:DescribeLogStreams", "logs:DescribeLogGroups", "ssm:GetParameters" ], "Resource": "*" } ] }
-
정책 검토를 선택합니다.
-
이름에
AWSDistroOpenTelemetryPolicy
를 입력한 다음, [정책 생성(Create policy)]을 선택합니다. -
왼쪽 탐색 창에서 [역할(Roles)]을 선택한 다음, [역할 생성(Create role)]을 선택합니다.
-
서비스 목록에서 [Elastic Container Service]를 선택합니다.
-
페이지 하단에서 [Elastic Container Service 태스크(Elastic Container Service Task)]를 선택한 후 [다음: 권한(Next: Permissions)]을 선택합니다.
-
정책 목록에서 AWSDistroOpenTelemetryPolicy를 검색합니다.
-
[AWSDistroOpenTelemetryPolicy] 옆의 확인란을 선택합니다.
-
[다음: 태그(Next: Tags)]를 선택한 후 [다음: 검토(Next: Review)]를 선택합니다.
-
[역할 이름(Role name)]에
AWSOpenTelemetryTaskRole
을 입력한 다음, [역할 생성(Create role)]을 선택합니다.
2단계: 태스크 실행 역할 생성
다음 단계는 AWS OpenTelemetry Collector에 대한 태스크 실행 역할을 생성하는 것입니다.
AWS Distro for OpenTelemetry에 대한 태스크 실행 역할을 생성하려면
https://console.aws.amazon.com/iam/
에서 IAM 콘솔을 엽니다. -
왼쪽 탐색 창에서 [역할(Roles)]을 선택한 다음, [역할 생성(Create role)]을 선택합니다.
-
서비스 목록에서 [Elastic Container Service]를 선택합니다.
-
페이지 하단에서 [Elastic Container Service 태스크(Elastic Container Service Task)]를 선택한 후 [다음: 권한(Next: Permissions)]을 선택합니다.
-
정책 목록에서 AmazonECSTaskExecutionRolePolicy를 검색한 다음, [AmazonECSTaskExecutionRolePolicy] 옆의 확인란을 선택합니다.
-
정책 목록에서 CloudWatchLogsFullAccess를 검색한 다음, [CloudWatchLogsFullAccess] 옆의 확인란을 선택합니다.
-
정책 목록에서 AmazonSSMReadOnlyAccess를 검색한 다음, [AmazonSSMReadOnlyAccess] 옆의 확인란을 선택합니다.
-
[다음: 태그(Next: Tags)]를 선택한 후 [다음: 검토(Next: Review)]를 선택합니다.
-
[역할 이름(Role name)]에
AWSOpenTelemetryTaskExecutionRole
을 입력한 다음, [역할 생성(Create role)]을 선택합니다.
3단계: 태스크 정의 생성
다음 단계는 태스크 정의를 생성하는 것입니다.
AWS Distro for OpenTelemetry에 대한 태스크 정의를 생성하려면
https://console.aws.amazon.com/ecs/v2
에서 콘솔을 엽니다. -
탐색 창에서 태스크 정의(Task definitions)를 선택합니다.
-
새 태스크 정의 생성(Create new Task Definition), 새 태스크 정의 생성(Create new Task Definition)을 선택합니다.
-
태스크 정의 패밀리(Task definition family)에서 태스크 정의에 대해 고유한 이름을 지정합니다.
-
컨테이너를 구성한 후 다음을 선택합니다.
-
지표 및 로깅에서 지표 수집 사용을 선택합니다.
-
다음을 선택합니다.
-
Create를 선택합니다.
Amazon ECS와 함께 AWS OpenTelemetry Collector를 사용하는 방법에 대한 자세한 내용은 Amazon Elastic Container Service에서 AWS Distro for OpenTelemetry Collector 설정
4단계: 태스크 실행
마지막 단계는 생성한 태스크를 실행하는 것입니다.
AWS Distro for OpenTelemetry에 대한 태스크를 실행하려면
https://console.aws.amazon.com/ecs/v2
에서 콘솔을 엽니다. -
왼쪽 탐색 창에서 [태스크 정의(Task Definitions)]를 선택한 다음, 방금 생성한 태스크를 선택합니다.
-
작업, 배포, 태스크 실행을 선택합니다.
-
배포(Deploy), 태스크 실행(Run task)을 선택합니다.
-
컴퓨팅 옵션 섹션의 기존 클러스터에서 클러스터를 선택합니다.
-
생성(Create)을 선택합니다.
-
그런 다음, CloudWatch 콘솔에서 새 지표를 확인할 수 있습니다.
https://console.aws.amazon.com/cloudwatch/
에서 CloudWatch 콘솔을 엽니다. -
왼쪽 탐색 창에서 Metrics를 선택합니다.
ECS/ContainerInsights 네임스페이스가 표시됩니다. 해당 네임스페이스를 선택하면 8개의 지표가 표시됩니다.