Amazon ECS 이벤트
Amazon ECS는 각 작업 및 서비스의 상태를 추적합니다. 작업 또는 서비스 상태가 변경되면 이벤트가 생성되고 Amazon EventBridge로 전달됩니다. 이러한 이벤트는 작업 상태 변경 이벤트 및 서비스 작업 이벤트로 분류됩니다. 다음 섹션에서 이러한 이벤트 및 가능한 원인을 보다 자세하게 설명합니다.
Amazon ECS는 컨테이너 인스턴스 상태 변경 이벤트, 작업 상태 변경 이벤트, 서비스 작업 및 서비스 배포 상태 변경 이벤트와 같은 이벤트 유형을 생성하여 EventBridge로 전송합니다.
-
컨테이너 인스턴스 상태 변경
-
작업 상태 변경
-
배포 상태 변경
-
서비스 작업
참고
향후 Amazon ECS가 다른 이벤트 유형, 소스 및 세부 정보를 추가할 수 있습니다. 코드의 이벤트 JSON 데이터를 역직렬화하는 경우 추가 속성이 추가되었을 때 문제를 방지하기 위해 애플리케이션이 알 수 없는 속성을 처리할 수 있도록 준비해야 합니다.
경우에 따라 동일한 활동에 대해 복수의 이벤트가 생성됩니다. 예를 들어 작업이 컨테이너 인스턴스에서 시작되면 새 작업에 대해 작업 상태 변경 이벤트가 생성됩니다. 컨테이너 인스턴스의 가용 리소스(예: CPU, 메모리 및 가용 포트)의 변동을 설명하기 위해 컨테이너 인스턴스 상태 변경 이벤트가 생성됩니다. 또한 컨테이너 인스턴스가 종료될 때도 컨테이너 인스턴스, 컨테이너 에이전트 연결 상태 및 해당 컨테이너 인스턴스에서 실행되는 모든 작업에 대해 이벤트가 생성됩니다.
컨테이너 상태 변경 및 작업 상태 변경 이벤트에는 두 개의 version
필드가 있습니다. 하나는 이벤트의 기본 본문에 있고 다른 하나는 이벤트의 detail
객체에 있습니다. 다음은 이러한 두 필드 간의 차이점에 대해 설명합니다.
-
이벤트의 본문 내
version
필드는 모든 이벤트에서0
으로 설정됩니다. Eventbridge 파라미터에 대한 자세한 내용은 Amazon EventBridge 사용 설명서의 AWS 서비스 이벤트 메타데이터를 참조하세요. -
이벤트의
detail
객체 내version
필드는 연결된 리소스의 버전을 설명합니다. 리소스 상태가 바뀔 때마다 이 버전이 증가합니다. 이벤트를 여러 번 보낼 수 있으므로 이 필드를 사용하여 중복 이벤트를 식별할 수 있습니다. 중복 이벤트는detail
객체에서 동일한 버전을 갖습니다. EventBridge를 사용하여 Amazon ECS 컨테이너 인스턴스 및 작업 상태를 복제하는 경우, Amazon ECS API에서 보고된 리소스 버전과 리소스(detail
객체 내부)에 대해 EventBridge에서 보고된 버전을 비교하여 이벤트 스트림 버전이 최신임을 확인할 수 있습니다.
서비스 작업 이벤트는 본문의 version
필드만 포함합니다.
Amazon ECS 및 EventBridge를 통합하는 방법에 대한 자세한 내용은 Amazon EventBridge 및 Amazon ECS 통합