Ongoing service disruptions
For the most recent update on ongoing service disruptions affecting the AWS Middle East (UAE) Region (ME-CENTRAL-1), refer to the AWS Health Dashboard. For information on AWS Service migration, see How do I migrate my services to another region?
FAQ: 특정 수명 주기 상태에서 멈춘 Amazon ECS 작업
Amazon Elastic Container Service(Amazon ECS) 작업이 특정 수명 주기 상태에서 멈춘 이유를 알고 싶습니다.
Q: Amazon ECS 작업이 PROVISIONING 상태에서 멈추는 이유는 무엇입니까?
ECS 스케줄러가 Amazon Elastic Compute Cloud(Amazon EC2) 시작 유형에서 적합한 ECS 인스턴스를 찾을 수 없는 경우, 시작 유형을 사용하는 작업이 PROVISIONING 상태로 남아 있을 수 있습니다. 기존 컨테이너 인스턴스에 작업을 실행할 공간이 있는 경우에도 발생합니다.
PROVISIONING 상태의 작업은 대기열을 형성합니다. Amazon ECS는 메모리, 포트, 탄력적 네트워크 인터페이스, GPU 및 CPU와 관련된 리소스 제약으로 인해 배포할 수 없는 작업을 대기열에 추가합니다. 추가 리소스를 사용할 수 있게 되면 이러한 작업은 RUNNING 상태로 전환됩니다.
용량 공급자의 확장을 관리하는 경우, 기존 인스턴스에서 충분한 리소스를 확보할 수 없더라도 작업이 즉시 실패하지는 않습니다. 대신 작업이 PROVISIONING 상태로 전환됩니다. 확장을 관리하지 않으면 용량을 찾을 수 없는 작업은 즉시 실패합니다.
문제가 발생하고 awsvpc 모드의 작업이 탄력적 네트워크 인터페이스를 프로비저닝할 수 없는 경우, 해당 작업은 PROVISIONING 상태로 남아 있을 수 있습니다. AWS Fargate 작업도 문제가 발생하고 탄력적 네트워크 인터페이스를 프로비저닝할 수 없으면 PROVISIONING 상태로 남아 있을 수 있습니다.
Q: 용량 공급자를 사용할 때 Amazon ECS 작업이 PROVISIONING 상태에서 STOPPED 상태로 전환되는 이유는 무엇입니까?
다음과 같은 이유로 ECS가 PROVISIONING 상태에서 멈출 수 있습니다.
- 구성 오류
- 리소스 제약
- 용량 공급자 사양과의 불일치
이러한 문제를 해결하려면 다음 작업을 수행하십시오.
-
용량 공급자와 연결된 Auto Scaling 그룹이 최대 인스턴스 수에 도달했는지 확인합니다. 한도에 도달하면 ECS는 추가 작업을 프로비저닝할 수 없습니다.
-
Auto Scaling 그룹과 연결된 시작 템플릿과 함께 Amazon EC2 시작 유형을 사용하는 경우 사용자 데이터를 확인합니다. 다음 형식의 클러스터 이름이 올바른지 확인합니다.
#!/bin/bash echo "ECS_CLUSTER=MyCluster" >> /etc/ecs/ecs.config -
올바른 신뢰 관계를 가진 ecsInstanceRole 정책이 Auto Scaling 그룹과 연결된 인스턴스에 연결되어 있는지 확인합니다.
-
Amazon ECS 서비스의 이벤트를 확인합니다. 다음 오류가 표시되면 인스턴스가 시작되었지만 연결된 로드 밸런서에 맞게 설정되지는 않은 것입니다.
대상이 로드 밸런서에 대해 사용으로 설정되지 않은 가용 영역에 있음 -
작업에 지정된 서브넷과 용량 공급자가 관리하는 컨테이너 인스턴스가 동일한 가용 영역에 있는지 확인합니다. aws-vpc 네트워크 모드에서 용량 공급자 전략으로 시작하는 작업의 경우 동일한 가용 영역에 있어야 합니다.
-
EC2 Linux 인스턴스에서 awsvpc 네트워크 모드를 사용하는 작업의 경우 탄력적 네트워크 인터페이스에는 공용 IP 주소가 제공되지 않습니다. 인터넷에 액세스하려면 NAT 게이트웨이를 사용하도록 구성된 개인 서브넷에서 작업을 시작해야 합니다. 공용 서브넷에서 시작하는 작업은 인터넷에 액세스할 수 없으며 PROVISIONING 상태에서 멈출 수 있습니다.
자세한 내용은 Amazon ECS 서비스 이벤트 메시지 보기를 참조하십시오.
Q. Amazon ECS 작업이 PENDING 상태에서 멈추는 이유는 무엇입니까?
Amazon ECS가 컨테이너 에이전트의 추가 조치를 기다리는 경우 작업은 PENDING 상태가 됩니다. 작업에 리소스를 사용할 수 있게 될 때까지 작업은 이 상태로 유지됩니다.
자세한 내용은 Amazon ECS 작업이 PENDING 상태로 멈춘 이유는 무엇입니까?를 참조하십시오.
Q: Amazon ECS 작업이 ACTIVATING 상태에서 멈추는 이유는 무엇입니까?
컨테이너의 메인 프로세스가 RUNNING 상태로 전환되었을 때 Amazon ECS가 추가 단계를 수행하면 작업이 ACTIVATING 상태가 됩니다. 예를 들어, 서비스 검색을 사용하는 작업의 경우 서비스 검색 리소스를 만들어야 합니다.
여러 Elastic Load Balancing 대상 그룹을 사용하는 서비스의 일부인 작업의 경우, 이 상태에서 대상 그룹 등록이 발생합니다. 작업이 ACTIVATING 상태이면 Amazon ECS는 대상 그룹 등록 또는 서비스 검색 리소스에서 해당 작업이 완료될 때까지 기다립니다.
Q: 서비스 검색을 사용하는 작업이 ACTIVATING 상태에서 멈추는 이유는 무엇입니까?
AWS CloudTrail 이벤트 기록에서 다음과 같은 해당 서비스 검색 서비스 관련 API 호출을 확인하십시오.
- CreatePrivateDnsNamespace
- CreateService
- RegisterInstance
- UpdateInstanceCustomHealthStatus
위 API 작업은 AmazonECSServiceRolePolicy AWS 관리형 정책에 정의되어 있습니다. API 호출이 SeviceNotFound 또는 InternalFailure와 같은 오류 코드로 실패한 경우 서비스 검색 고려 사항을 따라야 합니다.
Q: Elastic Load Balancing 대상 그룹을 사용하는 작업이 ACTIVATING 상태에서 멈추는 이유는 무엇입니까?
Amazon ECS에서 컨테이너의 상태를 확인하는 데 시간이 오래 걸리면 작업이 ACTIVATING 상태에서 멈출 수 있습니다. 총 소요 시간을 계산하려면 HealthCheckIntervalSeconds와 HealthyThresholdCount 파라미터를 곱하십시오. 상태 확인 프로세스의 속도를 높이려면 검사 횟수와 검사 간격을 줄이십시오. CloudTrail 이벤트를 확인하여 해당 Elastic Load Balancing RegisterTargets API 호출에 대해 오류나 장애가 보고되었는지 확인하십시오.
Q: Amazon ECS 작업이 STOPPED 상태여야 하는데 RUNNING 상태에서 멈추는 이유는 무엇입니까?
애플리케이션에 문제가 있거나 작업이 잘못 구성되면 작업이 RUNNING 상태로 유지될 수 있습니다.
이러한 문제를 해결하려면 다음 작업을 수행하십시오.
- 애플리케이션 로그에서 컨테이너가 종료되지 않는 이유에 대한 오류 또는 정보를 검토하십시오. 필수 컨테이너가 종료되면 작업은 STOPPED 상태로 전환됩니다.
- 작업이 Amazon ECS 서비스의 일부인 경우 DeploymentConfiguration 파라미터가 올바르게 설정되었는지 확인하십시오.
- 작업이 로드 밸런서를 사용하는 Amazon ECS 서비스의 일부인 경우 deregistration delay 파라미터가 올바르게 설정되었는지 확인하십시오.
- ECS_CONTAINER_STOP_TIMEOUT 값이 올바르게 설정되었는지 확인하십시오.
- 작업을 위해 Amazon ECS exec를 활성화하십시오. 그런 다음 ECS exec를 사용하여 컨테이너에 로그인하여 애플리케이션의 문제를 해결합니다.
자세한 내용은 컨테이너 인스턴스가 DRAINING으로 설정된 경우 중지하는 데 시간이 오래 걸리는 Amazon ECS 작업의 문제를 해결하려면 어떻게 해야 합니까?를 참조하십시오.
Q: Amazon ECS 작업이 DEACTIVATING 상태에서 멈추는 이유는 무엇입니까?
DEACTIVATING 상태에서는 Amazon ECS가 작업을 중지하기 전에 추가 단계를 수행합니다. 예를 들어, 여러 Elastic Load Balancing 대상 그룹을 사용하는 서비스의 일부인 작업의 경우 이 상태에서 대상 그룹 등록 취소가 발생합니다.
다음과 같은 이유로 인해 작업이 DEACTIVATING 상태로 유지될 수 있습니다.
- Elastic Load Balancing 대상 그룹과 관련된 리소스를 삭제해야 작업이 대상 그룹에서 등록을 취소할 수 있습니다.
- Amazon ECS 서비스를 생성할 때 파라미터로 지정된 사용자 지정 역할에는 필요한 Elastic Load Balancing 권한이 없습니다.
- 작업이 활성화되면 사용자 지정 역할을 삭제합니다.
서비스 정의에서 지정한 대상 그룹과 AWS ID 및 액세스 관리(IAM) 역할이 있는지 확인하십시오. 또한 서비스 정의에 필요한 신뢰 정책과 Elastic Load Balancing 권한이 포함되어 있는지 확인하십시오.
작업이 DEACTIVATING 상태에서 전환되는 데 걸리는 시간을 최적화하려면 deregistration_delay.timeout_seconds 및 deregistration_delay.timeout_seconds 파라미터를 조정하십시오. 자세한 내용은 로드 밸런서 연결 드레이닝을 참조하십시오.
Q: Amazon ECS 작업이 DEPROVISIONING 상태에서 멈추는 이유는 무엇입니까?
Amazon ECS는 작업이 중지된 후 STOPPED 상태로 전환되기 전에 추가 단계를 수행합니다. 예를 들어 awsvpc 네트워크 모드를 사용하는 작업의 경우 Amazon ECS는 탄력적 네트워크 인터페이스를 분리하고 삭제합니다.
다음과 같은 이유로 인해 작업이 DEPROVISIONING 상태로 유지될 수 있습니다.
-
작업이 종료되기 전에 서비스와 관련된 서비스 연결 역할을 삭제했습니다. 서비스가 서비스 연결 역할을 사전 정의하고 서비스가 사용자를 대신하여 다른 AWS 서비스를 호출하는 데 필요한 모든 권한을 포함합니다. 다음 명령을 실행하여 서비스 연결 역할이 서비스와 연결되어 있는지 확인하십시오.
$aws ecs describe-services --cluster CLUSTER-NAME --services SERVICE-NAME -
대상 그룹에서 작업 등록을 취소하기 전에 대상 그룹을 삭제했습니다.
- 언어
- 한국어
