EC2 인스턴스를 시작하거나 실행할 수 없는 이유는 무엇인가요?
Amazon Elastic Compute Cloud(Amazon EC2) 인스턴스를 시작하거나 실행할 수 없습니다.
간략한 설명
EC2 인스턴스를 시작하거나 실행하지 못하는 이유는 여러 가지가 있습니다. 인스턴스를 시작하려고 할 때 오류 코드가 표시되지 않으면 먼저 AWS Command Line Interface(AWS CLI)에서 describe-instances 명령을 실행합니다. 그런 다음 인스턴스 ID를 지정하여 문제의 원인을 확인합니다.
다음 예제에서 MYINSTANCE를 시작하려는 인스턴스의 ID로 바꾸세요.
참고: AWS CLI 명령을 실행할 때 오류가 발생하는 경우 최신 버전의 AWS CLI를 사용하고 있는지 확인하세요.
describe-instances 명령을 실행합니다.
aws ec2 describe-instances --instance-id MYINSTANCE --output json
명령이 반환하는 JSON 응답에서 StateReason 메시지를 확인합니다.
다음 예제에서 반환된 StateReason은 Client.InternalError입니다.
"StateReason": { "Message": "Client.InternalError: Client error on launch", "Code": "Client.InternalError" },
해결 방법
다음은 인스턴스를 시작하지 못하는 원인이 될 수 있는 일반적인 오류입니다.
InsufficientInstanceCapacity
다음과 같은 오류 메시지를 받게 됩니다.
"An error occurred (InsufficientInstanceCapacity) when calling the RunInstances operation (reached max retries: 4). We currently do not have sufficient capacity in the Availability Zone you requested."
이 오류는 온디맨드 용량이 부족하여 요청을 완료할 수 없는 경우에 발생합니다.
이 오류를 해결하는 방법은 EC2 인스턴스를 시작하거나 실행할 때 발생하는 InsufficientInstanceCapacity 오류를 해결하려면 어떻게 해야 합니까?를 참조하세요.
InstanceLimitExceeded
다음과 같은 오류 메시지를 받게 됩니다.
"Your quota allows for 0 more running instance(s)."
이 오류는 AWS 리전에서 허용되는 최대 개수의 인스턴스를 시작한 경우에 발생합니다.
이 오류를 해결하는 방법은 EC2 인스턴스를 시작할 때 발생하는 InstanceLimitExceeded 오류를 해결하려면 어떻게 해야 하나요?를 참조하세요.
UnauthorizedOperation
UnauthorizedOperation 오류는 인스턴스를 시작하려는 사용자에게 필요한 권한이 없음을 나타냅니다. 이 오류를 해결하려면 EC2 인스턴스 시작 중에 "UnauthorizedOperation" 오류가 발생한 후 인증 실패 메시지를 디코딩하려면 어떻게 해야 하나요?를 참조하세요.
요청한 구성은 현재 지원되지 않습니다.
이 오류는 다음 두 가지 문제로 인해 발생합니다.
1. 지정된 인스턴스 유형이 요청한 가용 영역에서 지원되지 않습니다. 특정 가용 영역에서 인스턴스 유형의 가용성을 확인하려면 AWS CLI에서 aws ec2 describe-instance-type-offerings 명령을 실행합니다. 그런 다음 지원되는 가용 영역에서 인스턴스를 시작합니다.
예를 들어 다음 명령을 사용하여 us-east-1의 모든 가용 영역에서 c5.2xlarge 인스턴스 유형의 가용성을 확인합니다.
aws ec2 describe-instance-type-offerings --location-type availability-zone --filters Name=instance-type,Values=c5.2xlarge --region us-east-1
2. 인스턴스를 시작하는 데 사용된 Amazon Machine Image(AMI)가 선택한 인스턴스 유형을 지원하지 않습니다. 인스턴스 유형 또는 패밀리를 선택하기 전에 AWS Marketplace의 AMI 설명을 참조하세요. 이 문제는 일반적으로 AWS Marketplace AMI를 사용하고 AWS CLI를 사용하여 AWS Marketplace AMI를 시작할 때 발생합니다. Amazon EC2 콘솔에서 인스턴스를 시작할 때 지원되지 않는 인스턴스는 사용할 수 없습니다.
Client.InternalError
이 오류가 발생하는 이유는 몇 가지가 있습니다.
- Amazon Elastic Block Store(Amazon EBS) 볼륨이 인스턴스에 올바르게 연결되지 않았습니다.
- 인스턴스에 연결된 EBS 볼륨이 오류 상태입니다.
- 암호화된 EBS 볼륨이 인스턴스에 연결됩니다. 그러나 암호 해독을 위해 AWS Key Management Service(AWS KMS)에 액세스할 수 있는 권한은 없습니다.
이러한 문제를 해결하는 방법에 대한 자세한 내용은 시작하려고 할 때 중지되거나 종료되는 Amazon EC2 인스턴스 문제를 해결하려면 어떻게 해야 하나요?를 참조하세요.
디스크 가득 참 오류
인스턴스의 공간이 부족하고 감사 서비스가 부팅되자마자 시스템을 중지하면 디스크 가득 참 오류가 발생합니다.
참고: 계속하기 전에 스냅샷을 생성하여 볼륨의 데이터를 백업하는 것이 좋습니다.
중요: 이러한 해결 단계를 수행하려면 인스턴스를 시작하고 중지해야 합니다. 다음 사항에 유의하세요.
- 인스턴스가 중지되면 인스턴스 스토어 볼륨의 데이터가 손실됩니다. 자세한 내용은 인스턴스의 루트 디바이스 유형 확인을 참조하세요.
- Amazon EC2 Auto Scaling 그룹의 일부인 인스턴스를 중지하면 인스턴스가 종료될 수 있습니다. Amazon EMR, AWS CloudFormation 및 AWS Elastic Beanstalk을 사용하여 시작된 인스턴스는 AWS Auto Scaling 그룹의 일부일 수 있습니다. 이 시나리오에서 인스턴스 종료 여부는 Auto Scaling 그룹에 대한 인스턴스 스케일 인 보호 설정에 따라 달라집니다. 인스턴스가 Auto Scaling 그룹의 일부인 경우, 진행하기 전에 Auto Scaling 그룹에서 인스턴스를 일시적으로 제거합니다.
- 인스턴스를 중지하고 다시 시작하면 인스턴스의 퍼블릭 IP 주소가 변경됩니다. 외부 트래픽을 인스턴스로 라우팅할 때는 퍼블릭 IP 주소 대신 탄력적 IP 주소를 사용하는 것이 좋습니다.
디스크 가득 참 오류를 해결하려면 다음을 수행합니다.
1. Amazon EC2 콘솔을 엽니다.
2. 탐색 창에서 [인스턴스(instance)]를 선택한 다음 인스턴스를 선택합니다.
3. 인스턴스를 중지합니다.
4. 중지된 인스턴스에서 EBS 루트 볼륨(Linux의 경우 /dev/xvda)을 분리합니다.
5. 손상된 인스턴스와 동일한 가용 영역에서 새 EC2 인스턴스를 시작합니다. 새 인스턴스가 복구 인스턴스가 됩니다.
6. 4단계에서 분리한 루트 볼륨을 보조 디바이스로 복구 인스턴스에 연결합니다.
참고: 보조 볼륨을 연결할 때 다른 디바이스 이름을 사용할 수 있습니다.
8. 6단계에서 복구 인스턴스에 연결된 새 볼륨의 탑재 지점 디렉터리를 생성합니다. 다음 예제에서 탑재 지점 디렉터리는 /mnt/rescue입니다.
참고: 다음 $ sudo 명령은 Linux 환경에만 적용됩니다.
$ sudo mkdir /mnt/rescue
9. 8단계에서 생성한 디렉터리에 볼륨을 탑재합니다.
$ sudo mount /dev/xvdf /mnt/rescue
참고: 디바이스(이 예에서는 /dev/xvdf)가 연결된 복구 인스턴스의 디바이스 이름이 다를 수 있습니다. 올바른 디바이스 이름을 확인하려면 lsblk 명령을 사용하여 탑재 지점과 사용 가능한 디스크 디바이스를 확인하세요.
10. 루트 볼륨 크기를 늘립니다.
11. 파티션을 확장합니다.
12. umount 명령을 실행하여 볼륨의 탑재를 해제합니다.
$ sudo umount /mnt/rescue
13. 임시 인스턴스에서 볼륨을 분리합니다.
14. 볼륨을 디바이스 이름(Linux의 경우 /dev/xvda)으로 원래 인스턴스에 연결한 다음 인스턴스를 시작하여 성공적으로 부팅되는지 확인합니다.
15. 감사 서비스 구성을 검토하여 공간이 부족할 경우 머신을 중지(종료)하는 옵션이 없는 것을 확인합니다. Amazon Linux 및 Amazon Linux 2의 경우 감사 서비스 구성이 /etc/audit/auditd.conf에 다음 옵션을 포함해야 합니다.
max_log_file_action = ROTATE admin_space_left_action = SUSPEND disk_full_action = SUSPEND disk_error_action = SUSPEND
관련 정보
인스턴스 시작 문제 해결 - Linux
인스턴스 시작 문제 해결 - Windows
관련 콘텐츠
- 질문됨 한 달 전lg...
- 질문됨 2달 전lg...
- 질문됨 2달 전lg...
- 질문됨 11일 전lg...
- AWS 공식업데이트됨 2년 전
- AWS 공식업데이트됨 일 년 전