보류 중 상태에서 멈춘 Fargate의 Amazon ECS 태스크 문제를 해결하려면 어떻게 해야 하나요?

3분 분량
0

AWS Fargate에서 실행 중인 Amazon Elastic Container Service(Amazon ECS) 태스크가 보류 중 상태에서 멈췄습니다.

해결 방법

서브넷에서 사용 중인 인터넷 경로 확인

퍼블릭 서브넷의 Fargate 태스크인 경우

Fargate 태스크에 할당된 퍼블릭 IP 주소와 인터넷 게이트웨이에 대한 기본 경로(0.0.0.0/0)가 있는지 확인합니다. 이렇게 하려면 태스크를 시작하거나 새 서비스를 생성할 때 Enable auto-assign public IPv4 address(퍼블릭 IPv4 주소 자동 할당 사용) 확인란을 선택합니다. 자세한 내용은 퍼블릭 IPv4 주소를 참조하세요.

참고: 기존 태스크 또는 서비스에 대해서는 Enable auto-assign public IPv4 address(퍼블릭 IPv4 주소 자동 할당 사용) 확인란을 선택할 수 없습니다.

프라이빗 서브넷의 Fargate 태스크인 경우

Fargate 태스크에 NAT 게이트웨이, AWS PrivateLink 또는 다른 인터넷 연결 소스에 대한 기본 경로(0.0.0.0/0)가 있는지 확인합니다.

네트워크 액세스 제어 목록 및 보안 그룹 설정 확인

네트워크 액세스 제어 목록(네트워크 ACL)과 보안 그룹이 서브넷에서 포트 443에 대한 아웃바운드 액세스를 차단하지 않는지 확인합니다. 자세한 내용은 보안 그룹을 사용하여 리소스에 대한 트래픽 제어를 참조하세요.

참고: 발신 트래픽을 활성화하고 Amazon ECS 엔드포인트에 연결하려면 포트 443에 대한 아웃바운드 액세스 권한이 Fargate 태스크에 있어야 합니다.

VPC 엔드포인트 확인

AWS PrivateLink를 사용하는 경우 필요한 엔드포인트가 있는지 확인합니다.

Fargate 플랫폼 버전 1.3.0 이하에 필요한 엔드포인트:

  • com.amazonaws.region.ecr.dkr
  • S3 게이트웨이 엔드포인트

Fargate 플랫폼 버전 1.4.0 이상에 필요한 엔드포인트:

  • com.amazonaws.region.ecr.dkr
  • com.amazonaws.region.ecr.api
  • S3 게이트웨이 엔드포인트

참고: 태스크 정의에서 AWS Secrets Manager, SSM 파라미터 또는 Amazon CloudWatch Logs를 사용하는 경우 엔드포인트를 정의해야 할 수 있습니다. 자세한 내용은 AWS Secrets Manager VPC 엔드포인트 사용인터페이스 VPC 엔드포인트에서 CloudWatch Logs 사용을 참조하세요.

PrivateLink를 사용하는 동안 VPC 엔드포인트의 보안 그룹에서 Fargate 인프라가 이러한 보안 그룹을 사용하도록 허용하는지 확인하세요.

AWS Identity and Access Management(IAM) 역할 및 권한 확인

태스크 실행 역할은 사용자를 대신하여 AWS API를 호출할 수 있는 권한을 Amazon ECS 컨테이너 및 Fargate 에이전트에 부여합니다. 다음과 같은 경우 Fargate에 이 역할이 필요합니다.

  • Amazon Elastic Container Registry(Amazon ECR)에서 컨테이너 이미지 가져오기
  • awslogs 로그 드라이버 사용
  • 프라이빗 레지스트리 인증 사용
  • Secrets Manager 암호 또는 AWS Systems Manager Parameter Store 파라미터를 사용하여 민감한 데이터 참조

사용 사례에 앞의 시나리오가 포함된 경우 태스크 실행 역할에 올바른 권한이 정의되어 있는지 확인합니다. 필요한 권한의 전체 목록은 Amazon ECS 태스크 실행 IAM 역할을 참조하세요.

이미지 가져오기 문제 확인

Fargate 태스크에 대해 cannotpullcontainer 오류가 발생하는 경우 Fargate에서 Amazon ECS 태스크의 "cannotpullcontainererror" 오류를 해결하려면 어떻게 해야 합니까?를 참조하세요.

이중 스택 모드의 VPC

Fargate와 함께 이중 스택 모드의 VPC를 사용하는 경우 인터넷 액세스를 위해 인터넷 게이트웨이 또는 IPv6 주소가 할당된 태스크를 위한 아웃바운드 전용 인터넷 게이트웨이로 VPC를 구성할 수 있습니다. 자세한 내용은 이중 스택 모드의 VPC 사용을 참조하세요.

참고: 문제 해결을 위해 Amazon ECS Exec를 사용하여 태스크 또는 서비스의 컨테이너 인스턴스에서 로그를 검색할 수도 있습니다.

컨테이너 종속성이 정의됨

태스크 정의에 정의된 컨테이너 종속성으로 인해 Fargate 작업이 무기한 PENDING 상태가 될 수 있습니다. 예시: containerA가 containerB의 특정 상태에 종속되는 경우, containerA는 containerB가 해당 상태에 도달할 때까지 PENDING 상태로 유지될 것으로 예상됩니다. 그러나 containerB가 원하는 상태에 도달하지 못하면 작업은 무기한 PENDING 상태로 유지됩니다. 종속성이 적절한지 확인하거나 종속성을 평가하십시오.

자세한 내용은 컨테이너 종속성을 참조하십시오.


AWS 공식
AWS 공식업데이트됨 일 년 전