Amazon ECS 서비스 작업 이벤트 - Amazon Elastic Container Service

Amazon ECS 서비스 작업 이벤트

Amazon ECS는 세부 정보 유형 ECS 서비스 태스크와 함께 서비스 작업 이벤트를 보냅니다. 컨테이너 인스턴스 및 작업 상태 변경 이벤트와 달리 서비스 작업 이벤트는 details 응답 필드에 버전 번호를 포함하지 않습니다. 다음은 Amazon ECS 서비스 작업 이벤트에 대한 EventBridge 규칙을 만드는 데 사용되는 이벤트 패턴입니다. 자세한 정보는 Amazon EventBridge 사용 설명서EventBridge 규칙 생성을 참조하세요.

{ "source": [ "aws.ecs" ], "detail-type": [ "ECS Service Action" ] }

Amazon ECS는 INFO, WARNERROR이벤트 유형과 함께 이벤트를 보냅니다. 다음은 서비스 작업 이벤트입니다.

INFO 이벤트 유형이 있는 서비스 작업 이벤트

SERVICE_STEADY_STATE

이 서비스는 건강하고 원하는 수의 작업으로 안정적인 상태에 도달합니다. 서비스 스케줄러는 주기적으로 상태를 보고하므로 이 메시지를 여러 번 받을 수 있습니다.

TASKSET_STEADY_STATE

작업 세트는 건강하고 원하는 수의 작업으로 안정적인 상태에 도달합니다.

CAPACITY_PROVIDER_STEADY_STATE

서비스와 관련된 용량 공급자가 안정적인 상태에 도달합니다.

SERVICE_DESIRED_COUNT_UPDATED

서비스 스케줄러가 서비스 또는 작업 세트에 대해 계산된 원하는 수를 업데이트하는 경우. 사용자가 원하는 수를 수동으로 업데이트하면 이 이벤트가 전송되지 않습니다.

WARN 이벤트 유형이 있는 서비스 작업 이벤트

SERVICE_TASK_START_IMPAIRED

서비스가 일부 태스크를 시작할 수 없습니다.

SERVICE_DISCOVERY_INSTANCE_UNHEALTHY

서비스 검색을 사용하는 서비스에 비정상 작업이 포함되어 있습니다. 서비스 스케줄러는 서비스 레지스트리 내의 작업이 비정상임을 감지합니다.

ERROR 이벤트 유형이 있는 서비스 작업 이벤트

SERVICE_DAEMON_PLACEMENT_CONSTRAINT_VIOLATED

DAEMON 서비스 스케줄러 전략을 사용하는 서비스의 작업이 더 이상 서비스에 대한 배치 제약 전략을 충족하지 않습니다.

ECS_OPERATION_THROTTLED

Amazon ECS API 스로틀 한도로 인해 서비스 스케줄러가 제한되었습니다.

SERVICE_DISCOVERY_OPERATION_THROTTLED

AWS Cloud Map API 스로틀 한도로 인해 서비스 스케줄러가 제한되었습니다. 이 문제는 서비스 검색을 사용하도록 구성된 서비스에서 발생할 수 있습니다.

SERVICE_TASK_PLACEMENT_FAILURE

서비스 스케줄러가 태스크를 배치할 수 없습니다. 원인은 reason 필드에 설명됩니다.

이 서비스 이벤트가 발생하는 일반적인 원인은 태스크를 배치할 클러스터의 리소스가 부족하기 때문입니다. 예를 들어 사용 가능한 컨테이너 인스턴스의 CPU 또는 메모리 용량이 충분하지 않거나 사용 가능한 컨테이너 인스턴스가 없는 경우입니다. 또 다른 일반적인 원인은 Amazon ECS 컨테이너 에이전트가 컨테이너 인스턴스에서 연결 해제되어 스케줄러가 태스크를 배치 할 수 없는 경우입니다.

SERVICE_TASK_CONFIGURATION_FAILURE

서비스 스케줄러가 구성 오류로 인해 태스크를 배치할 수 없습니다. 원인은 reason 필드에 설명됩니다.

이 서비스 이벤트가 발생하는 일반적인 원인은 태그가 서비스에 적용되었지만 사용자 또는 역할이 해당 지역의 새로운 Amazon 리소스 이름(ARN) 형식을 선택하지 않았기 때문입니다. 자세한 정보는 Amazon 리소스 이름(ARN) 및 ID을 참조하세요. 또 다른 일반적인 원인은 제공된 작업 IAM 역할을 Amazon ECS가 맡을 수 없기 때문입니다.

예 서비스 안정 상태 이벤트

서비스 안정 상태 이벤트는 다음과 같은 형식으로 제공됩니다. EventBridge 파라미터에 대한 자세한 정보는 Amazon EventBridge 사용 설명서이벤트 및 이벤트 패턴을 참조하세요.

{ "version": "0", "id": "af3c496d-f4a8-65d1-70f4-a69d52e9b584", "detail-type": "ECS Service Action", "source": "aws.ecs", "account": "111122223333", "time": "2019-11-19T19:27:22Z", "region": "us-west-2", "resources": [ "arn:aws:ecs:us-west-2:111122223333:service/default/servicetest" ], "detail": { "eventType": "INFO", "eventName": "SERVICE_STEADY_STATE", "clusterArn": "arn:aws:ecs:us-west-2:111122223333:cluster/default", "createdAt": "2019-11-19T19:27:22.695Z" } }
예 용량 공급자 안정 상태 이벤트

용량 공급자 안정 상태 이벤트는 다음 형식으로 제공됩니다.

{ "version": "0", "id": "b9baa007-2f33-0eb1-5760-0d02a572d81f", "detail-type": "ECS Service Action", "source": "aws.ecs", "account": "111122223333", "time": "2019-11-19T19:37:00Z", "region": "us-west-2", "resources": [ "arn:aws:ecs:us-west-2:111122223333:service/default/servicetest" ], "detail": { "eventType": "INFO", "eventName": "CAPACITY_PROVIDER_STEADY_STATE", "clusterArn": "arn:aws:ecs:us-west-2:111122223333:cluster/default", "capacityProviderArns": [ "arn:aws:ecs:us-west-2:111122223333:capacity-provider/ASG-tutorial-capacity-provider" ], "createdAt": "2019-11-19T19:37:00.807Z" } }
예 서비스 작업 시작 장애 이벤트

서비스 작업 시작 장애 이벤트는 다음 형식으로 제공됩니다.

{ "version": "0", "id": "57c9506e-9d21-294c-d2fe-e8738da7e67d", "detail-type": "ECS Service Action", "source": "aws.ecs", "account": "111122223333", "time": "2019-11-19T19:55:38Z", "region": "us-west-2", "resources": [ "arn:aws:ecs:us-west-2:111122223333:service/default/servicetest" ], "detail": { "eventType": "WARN", "eventName": "SERVICE_TASK_START_IMPAIRED", "clusterArn": "arn:aws:ecs:us-west-2:111122223333:cluster/default", "createdAt": "2019-11-19T19:55:38.725Z" } }
예 서비스 작업 배치 실패 이벤트

서비스 작업 배치 실패 이벤트는 다음 형식으로 제공됩니다. EventBridge 파라미터에 대한 자세한 정보는 Amazon EventBridge 사용 설명서이벤트 및 이벤트 패턴을 참조하세요.

다음 예제에서는 작업이 FARGATE_SPOT 용량 공급자를 사용하려고 시도했지만 서비스 스케줄러가 Fargate 스팟 용량을 획득할 수 없습니다.

{ "version": "0", "id": "ddca6449-b258-46c0-8653-e0e3a6d0468b", "detail-type": "ECS Service Action", "source": "aws.ecs", "account": "111122223333", "time": "2019-11-19T19:55:38Z", "region": "us-west-2", "resources": [ "arn:aws:ecs:us-west-2:111122223333:service/default/servicetest" ], "detail": { "eventType": "ERROR", "eventName": "SERVICE_TASK_PLACEMENT_FAILURE", "clusterArn": "arn:aws:ecs:us-west-2:111122223333:cluster/default", "capacityProviderArns": [ "arn:aws:ecs:us-west-2:111122223333:capacity-provider/FARGATE_SPOT" ], "reason": "RESOURCE:FARGATE", "createdAt": "2019-11-06T19:09:33.087Z" } }

EC2 시작 유형에 대한 다음 예에서는 컨테이너 인스턴스 2dd1b186f39845a584488d2ef155c131에서 태스크를 시작하려고 했지만 CPU가 부족하여 서비스 스케줄러가 태스크를 배치할 수 없습니다.

{ "version": "0", "id": "ddca6449-b258-46c0-8653-e0e3a6d0468b", "detail-type": "ECS Service Action", "source": "aws.ecs", "account": "111122223333", "time": "2019-11-19T19:55:38Z", "region": "us-west-2", "resources": [ "arn:aws:ecs:us-west-2:111122223333:service/default/servicetest" ], "detail": { "eventType": "ERROR", "eventName": "SERVICE_TASK_PLACEMENT_FAILURE", "clusterArn": "arn:aws:ecs:us-west-2:111122223333:cluster/default", "containerInstanceArns": [ "arn:aws:ecs:us-west-2:111122223333:container-instance/default/2dd1b186f39845a584488d2ef155c131" ], "reason": "RESOURCE:CPU", "createdAt": "2019-11-06T19:09:33.087Z" } }