Amazon ECS의 서비스에 대한 "the closest matching container-instance container-instance-id encountered error 'AGENT'" 오류를 해결하려면 어떻게 해야 합니까?

최종 업데이트 날짜: 2019년 7월 3일

Amazon Elastic Container Service(Amazon ECS)에서 작업을 배치하려고 하면 다음 오류가 표시됩니다. "[AWS service] was unable to place a task because no container instance met all of its requirements. The closest matching container-instance container-instance-id encountered error 'AGENT'."

간략한 설명

이 오류는 작업 배치를 위해 설계된 컨테이너 인스턴스에서 실행되는 Amazon ECS 컨테이너 에이전트의 연결이 끊긴 경우 표시될 수 있습니다.

참고: 이전 오류 메시지가 표시되지 않은 경우 표시된 오류 메시지에 따라 다음 문서를 선택하십시오.

해결 방법

이 오류를 해결하려면 다음 문제 해결 단계를 수행하십시오.

에이전트 로그 확인

1.    SSH를 사용하여 컨테이너 인스턴스에 연결합니다.

2.    /var/log/ecs/ecs-agent.log.YYYY-MM-DD-HH에서 에이전트 로그를 확인합니다.

참고: 로그에 해당하는 타임스탬프로 위의 타임스탬프를 바꾸십시오.

인스턴스에서 에이전트가 실행되고 있는지 확인

1.    SSH를 사용하여 EC2 인스턴스에 연결합니다.

2.    컨테이너 목록을 반환하려면 다음 명령을 실행합니다.

docker ps

ecs-agent라는 이름으로 실행되는 컨테이너를 찾습니다. 자세한 내용은 Amazon ECS 에이전트가 연결 해제된 상태로 보이는 이유는 무엇입니까?를 참조하십시오.

에이전트 다시 시작

Amazon ECS-optimized AMI를 사용하는 경우 해당하는 명령을 사용하여 에이전트를 중지하고 다시 시작합니다.

Amazon ECS-optimized Amazon Linux 2 AMI의 경우 다음 명령을 실행합니다.

sudo systemctl restart ecs

Amazon ECS-optimized Amazon Linux AMI의 경우 다음 명령을 실행합니다.

sudo stop ecs && sudo start ecs