Complete a 3 Question Survey and Earn a re:Post Badge
Help improve AWS Support Official channel in re:Post and share your experience - complete a quick three-question survey to earn a re:Post badge!
Amazon ECS 작업의 태깅 문제를 해결하려면 어떻게 해야 합니까?
Amazon Elastic Container Service(Amazon ECS) 작업 태그 관련 문제를 해결하고 싶습니다.
해결 방법
참고: AWS Command Line Interface(AWS CLI) 명령을 실행할 때 오류가 발생하면 AWS CLI의 오류 해결을 참조하십시오. 또한 최신 AWS CLI 버전을 사용하고 있는지 확인하십시오.
Amazon ECS를 사용하여 작업 태그를 설정할 때 다음과 같은 문제가 발생할 수 있습니다.
- 태그는 서비스 또는 작업 정의에서 작업으로 전파되지 않습니다.
- 태그의 ARN 및 리소스 ID 형식이 오래된 것입니다.
- AWS Identity and Access Management(IAM) 권한 또는 태그 제한이 없기 때문에 새 Amazon ECS 리소스를 생성하거나 여기에 태그를 추가할 수 없습니다.
- AWS Billings and Cost Management 콘솔의 청구 페이지에서는 Amazon ECS 태그를 볼 수 없습니다.
PropagateTags 파라미터를 사용하여 서비스 또는 작업 정의에서 작업으로 전파
PropagateTags 파라미터는 기본적으로 활성화되지 않습니다. 작업 정의 또는 서비스의 태그를 작업에 복사하려면 PropagateTags를 활성화합니다. 작업을 실행하거나, 서비스를 생성하거나, 서비스를 업데이트할 때 태그를 복사할 수 있습니다.
참고: 다음 명령에서 servicename을 서비스 이름으로, clustername을 클러스터 이름으로, region을 AWS 리전으로 바꾸십시오. 또한 taskdefinitionname을 작업 정의 이름으로, taskdefinitionversion을 작업 정의 버전으로 바꾸십시오.
PropagateTags가 특정 서비스에서 활성화되었는지 확인하려면 다음 describe-services 명령을 실행합니다.
aws ecs describe-services --services servicename --cluster clustername --region region --query 'services[*].propagateTags' --output text
새 독립 실행형 작업에 대한 태그 전파를 활성화하려면 다음 run-task 명령을 실행합니다.
aws ecs run-task --cluster clustername --task-definition taskdefinitionname:taskdefinitionversion --launch-type FARGATE/EC2 --propagate-tags TASK_DEFINITION/SERVICE
새 서비스에 대한 태그 전파를 활성화하려면 다음 create-service 명령을 실행합니다.
aws ecs create-service --cluster clustername --service-name servicename --task-definition taskdefinitionname:taskdefinitionversion --desired-count 2 --launch-type FARGATE --platform-version LATEST --network-configuration "awsvpcConfiguration={subnets=[subnet-abcdef123],securityGroups=[sg-pqrst5678]}" --propagateTags TASK_DEFINITION/SERVICE
기존 서비스에 대한 태그 전파를 활성화하려면 다음 update-service 명령을 실행합니다.
aws ecs update-service --cluster clustername --service servicename --propagate-tags SERVICE/TASK_DEFINITION --force-new-deployment
Amazon ECS 콘솔을 사용하여 태그 전파를 켤 수도 있습니다.
다음 단계를 완료합니다.
- Amazon ECS 콘솔을 엽니다.
- Amazon ECS 리소스의 리전을 선택합니다.
- 탐색 창에서 작업 정의를 선택합니다.
- 리소스 목록에서 작업 정의를 선택한 다음 작업을 선택합니다.
- 서비스 생성 또는 작업 실행을 선택합니다.
- 작업 태깅 구성에서 서비스 또는 작업 정의를 선택합니다.
참고: 기본 옵션은 전파 안 함입니다.
AWS CloudFormation을 사용하여 Amazon ECS에서 태그를 구성하려면 AWS::ECS::Service 리소스를 선언해야 합니다. AWS::ECS::Service를 선언하려면 SERVICE 또는 TASK_DEFINITION 값과 함께 EnableECSManagedTags 및 PropagateTags 속성을 사용합니다.
참고:
- CloudFormation에서 스택을 생성한 후 Amazon ECS 속성 관련 서비스 태그를 사용하려면 스택 및 리소스 교체를 업데이트해야 합니다. 자세한 내용은 스택 리소스의 업데이트 동작 이해를 참조하십시오.
- Amazon ECS RunTask API에서 직접 실행하는 작업에 대해 구성할 수 있는 것과 동일한 구성을 예약된 작업에 대해서도 적용할 수 있습니다.
올바른 ARN 형식 사용
Amazon ECS 리소스에 태그를 지정하려면 새 ARN 및 ID 형식을 사용해야 합니다. Amazon ECS 배포를 새 형식으로 마이그레이션하려면 Amazon ECS 배포를 새 ARN 및 리소스 ID 형식으로 마이그레이션 섹션을 참조하십시오.
참고: 기존 리소스는 리소스를 다시 생성한 후에만 새 ARN 형식을 수신합니다.
IAM 엔터티에 필요한 권한이 있는지 확인하고 태그 제한 확인
모든 AWS 계정은 태깅 권한 부여를 사용합니다. Amazon ECS 리소스를 생성할 때 리소스를 태깅하려면 IAM 보안 주체에 ecs:TagResource 권한이 있어야 합니다. 다음 Amazon ECS API에도 이 권한이 있어야 합니다.
- CreateCapacityProvider
- CreateCluster
- CreateService
- CreateTaskSet
- RegisterContainerInstance
- RegisterTaskDefinition
- RunTask
- StartTask
Amazon ECS 서비스에 태그를 추가하거나 리소스를 생성할 수 없는 경우 다음 단계를 완료하여 이 문제를 해결하십시오.
- AWS CloudTrail 이벤트에서 TagResource 이벤트를 확인합니다.
- 다음 오류 메시지 중 하나에 대한 이벤트를 검토합니다.
"AccessDenied"
-또는-
"The tags cannot be updated at this time. Wait a few minutes and try again"
위의 오류 중 하나가 표시되면 IAM 엔터티에 ecs:TagResource 권한이 없는 것입니다. - IAM 콘솔 또는 AWS CLI를 사용하여 IAM 엔터티에 ecs:TagResource 권한을 추가합니다.
- 리소스를 다시 생성하거나 Amazon ECS 클러스터에 태그를 다시 추가합니다.
- Amazon ECS 태그가 태그 제한을 준수하는지 확인하십시오.
Billing and Cost Management 문제가 있는지 확인
Amazon ECS 작업을 태그별로 필터링하여 비용을 확인할 수 없는 경우 필요한 태그가 Amazon ECS 작업에 있는지 확인하십시오. 다음 list-tags-for-resource 명령을 실행합니다.
aws ecs list-tags-for-resource --resource-arn value
참고: value를 작업 ARN으로 바꾸십시오.
Amazon ECS 콘솔을 사용하여 Amazon ECS 작업의 태그를 확인하려면 다음 단계를 완료합니다.
- Amazon ECS 콘솔을 엽니다.
- Amazon ECS 리소스의 리전을 선택합니다.
- 탐색 창에서 리소스 유형(예: 클러스터)을 선택합니다.
- 리소스를 선택한 다음 태그를 선택하면 해당 리소스에 대해 존재하는 모든 태그를 볼 수 있습니다.
관리형 태그를 확인하려면 Amazon ECS 관리형 태그를 활성화해야 합니다. Amazon ECS 관리형 태그가 활성화되었는지 확인하려면 다음 describe-services 명령을 실행합니다.
aws ecs describe-services --services servicename --cluster clustername --region region --query 'services[*].enableECSManagedTags' --output text
참고: servicename을 서비스 이름으로, clustername을 클러스터 이름으로, region을 리전으로 바꾸십시오.
명령 출력에서 enableECSManagedTags가 true로 설정되었는지 확인합니다.
콘솔을 사용하여 Amazon ECS 관리형 태그를 활성화하려면 다음 단계를 완료하십시오.
- Amazon ECS 콘솔을 엽니다.
- Amazon ECS 리소스의 리전을 선택합니다.
- 탐색 창에서 작업 정의를 선택합니다.
- 리소스 목록에서 작업 정의를 선택한 다음 작업을 선택합니다.
- 서비스 생성 또는 작업 실행을 선택합니다.
- 작업 태깅 구성에서 ECS 관리형 태그 활성화를 선택합니다.
AWS CLI를 사용하여 Amazon ECS 관리형 태그를 활성화하려면 update-service 명령을 실행합니다.
aws ecs update-service --cluster clustername --service servicename --enable-ecs-managed-tags --force-new-deployment
참고: clustername을 클러스터 이름으로, servicename을 서비스 이름으로 바꾸십시오.
AWS Cost Explorer에 태그가 표시되지 않아도 결제에 사용하는 태그가 나열될 수 있습니다. 이 문제를 해결하려면 Billing and Cost Management 콘솔에서 비용 할당 태그를 활성화하십시오.
참고: 태그가 활성화되는 데 최대 24시간이 걸릴 수 있습니다.
관련 정보

관련 콘텐츠
- 질문됨 한 달 전lg...