연결할 수 없는 인스턴스 문제 해결 - Amazon Elastic Compute Cloud

연결할 수 없는 인스턴스 문제 해결

연결할 수 없는 Amazon EC2 인스턴스의 문제를 해결하려면 다음 방법을 사용할 수 있습니다.

인스턴스 재부팅

연결할 수 없게 된 인스턴스를 재부팅하는 기능도 문제 해결과 일반 인스턴스 관리용으로 유용합니다.

Reset 버튼을 눌러서 컴퓨터를 재설정할 수 있게 되는 즉시, Amazon EC2 콘솔, CLI 또는 API를 사용하여 EC2 인스턴스를 재설정할 수 있습니다. 자세한 내용은 인스턴스 재부팅 단원을 참조하십시오.

인스턴스 콘솔 출력

콘솔 출력은 문제 진단을 위한 유용한 도구입니다. 인스턴스가 종료되거나 SSH 데몬을 시작하기 전에 연결할 수 없게 되는 서비스 구성 문제 또는 커널 문제를 해결하는 데 특히 유용합니다.

  • Linux 인스턴스 – 인스턴스 콘솔 출력은 컴퓨터에 연결된 실제 모니터에 일반적으로 표시되는 정확한 콘솔 출력을 표시합니다. 콘솔 출력은 인스턴스 전환 상태(시작, 중지, 재부팅 및 종료) 직후에 게시된 버퍼링된 정보를 반환합니다. 게시된 출력은 지속적으로 업데이트되지 않습니다. 최대값일 것 같을 때만 업데이트됩니다.

  • Windows 인스턴스 - 인스턴스 콘솔 출력에는 최근 3개의 시스템 이벤트 로그 오류가 포함됩니다.

옵션으로 인스턴스 수명 주기 동안 언제든지 최신 직렬 콘솔 출력을 검색할 수 있습니다. 이 옵션은 AWS Nitro 시스템에 구축된 인스턴스에서만 지원됩니다. Amazon EC2 콘솔에서는 지원하지 않습니다.

참고

게시된 출력의 최근 64 KB만 저장되며, 마지막 게시 후 1시간 이상의 분량이 제공되는 셈입니다.

인스턴스 소유자만 콘솔 출력에 액세스할 수 있습니다.

다음 방법 중 하나를 사용하여 콘솔 출력을 가져옵니다.

Console
콘솔 출력을 가져오려면
  1. https://console.aws.amazon.com/ec2/에서 Amazon EC2 콘솔을 엽니다.

  2. 왼쪽 탐색 창에서 인스턴스를 선택합니다.

  3. 인스턴스를 선택하고 작업, 모니터링 및 문제 해결, 시스템 로그 가져오기를 차례로 선택합니다.

Command line
콘솔 출력을 가져오려면

다음 명령 중 하나를 사용할 수 있습니다. 명령줄 인터페이스에 대한 자세한 내용은 Amazon EC2 액세스 섹션을 참조하세요.

연결할 수 없는 인스턴스의 스크린샷 캡처

인스턴스에 연결할 수 없는 경우 인스턴스의 스크린샷을 캡처하여 이미지로 볼 수 있습니다. 이미지에는 인스턴스의 상태에 관한 가시성이 제공되므로 더 빠르게 문제를 해결할 수 있습니다.

인스턴스가 실행 중이거나 인스턴스가 중단된 후에 스크린샷을 생성할 수 있습니다. 이미지는 JPG 형식으로 생성되며, 100KB보다 크지 않습니다. 스크린샷의 데이터 전송 비용은 따로 들지 않습니다.

제한 사항

이 기능은 다음에서 지원되지 않습니다.

지원되는 리전

이 기능은 다음 리전에서 사용 가능합니다.

  • US East (N. Virginia) Region

  • US East (Ohio) Region

  • US West (N. California) Region

  • US West (Oregon) Region

  • 아프리카(케이프타운) 리전

  • Asia Pacific (Hong Kong) Region

  • 아시아 태평양(하이데라바드) 리전

  • Asia Pacific (Jakarta) Region

  • Asia Pacific (Melbourne) Region

  • Asia Pacific (Mumbai) Region

  • Asia Pacific (Osaka) Region

  • Asia Pacific (Seoul) Region

  • 아시아 태평양(싱가포르) 리전

  • 아시아 태평양(시드니) 리전

  • 아시아 태평양(도쿄) 리전

  • 캐나다(중부) 리전

  • 캐나다 서부(캘거리) 리전

  • 중국(베이징) 리전

  • 중국(닝샤) 리전

  • Europe (Frankfurt) Region

  • 유럽(아일랜드) 리전

  • Europe (London) Region

  • 유럽(밀라노) 리전

  • Europe (Paris) Region

  • 유럽(스페인) 리전

  • Europe (Stockholm) Region

  • 유럽(취리히) 리전

  • Israel (Tel Aviv) Region

  • South America (São Paulo) Region

  • Middle East (Bahrain) Region

  • Middle East (UAE) Region

Console
인스턴스의 스크린샷을 가져오는 방법
  1. https://console.aws.amazon.com/ec2/에서 Amazon EC2 콘솔을 엽니다.

  2. 왼쪽 탐색 창에서 인스턴스를 선택합니다.

  3. 캡처할 인스턴스를 선택합니다.

  4. [작업(Actions)], [모니터링 및 문제 해결(Monitor and troubleshoot)], [인스턴스 스크린샷 가져오기(Get instance screenshot)]를 선택합니다.

  5. [다운로드(Download)]를 선택하거나 이미지를 마우스 오른쪽 버튼으로 클릭하여 다운로드하고 저장합니다.

Command line
인스턴스 스크린샷을 캡처하는 방법

다음 명령 중 하나를 사용할 수 있습니다. 반환되는 내용은 base64-encoded입니다. 명령줄 인터페이스에 대한 자세한 내용은 Amazon EC2 액세스 섹션을 참조하세요.

Windows 인스턴스에 대한 일반적인 스크린샷

다음 정보를 사용하면 서비스에서 반환되는 스크린샷을 바탕으로 연결할 수 없는 Windows 인스턴스의 문제 해결에 도움을 받을 수 있습니다.

로그온 화면(Ctrl+Alt+Delete)

콘솔 스크린샷 서비스에서 다음을 반환했습니다.

로그온 화면입니다.

인스턴스가 로그온 중에 연결할 수 없게 되면 네트워크 구성 또는 Windows 원격 데스크톱 서비스에 문제가 있을 수 있습니다. 프로세스에서 대량의 CPU를 사용 중인 경우 인스턴스가 응답하지 않을 수도 있습니다.

네트워크 구성

다음 정보를 사용하여 AWS, Microsoft Windows와 로컬(또는 온프레미스) 네트워크 구성이 인스턴스에 대한 액세스를 차단하고 있지 않은지 확인합니다.

AWS 네트워크 구성
구성 확인
보안 그룹 구성 포트 3389가 보안 그룹용으로 열려 있는지 확인합니다. 올바른 퍼블릭 IP 주소에 연결 중인지 확인합니다. 인스턴스가 탄력적 IP와 연결되지 않은 경우, 퍼블릭 IP는 인스턴스가 중지/시작된 후 바뀝니다. 자세한 내용은 원격 데스크톱으로 원격 컴퓨터에 연결할 수 없음 섹션을 참조하세요.
VPC 구성(네트워크 ACL) Amazon VPC에 대한 ACL(액세스 제어 목록)이 액세스를 차단하고 있지 않은지 확인합니다. 자세한 내용은 Amazon VPC 사용 설명서의 네트워크 ACL을 참조하세요.
VPN 구성 가상 프라이빗 네트워크(VPN)를 사용하여 VPC에 연결 중인 경우 VPN 터널 연결을 확인하세요. 자세한 내용은 Amazon VPC에 대한 VPN 터널 연결의 문제 해결 방법 섹션을 참조하세요.
Windows 네트워크 구성
구성 확인
Windows 방화벽 Windows 방화벽이 인스턴스에 대한 연결을 차단하고 있지 않은지 확인하세요. 원격 데스크톱 문제 해결 섹션 원격 데스크톱으로 원격 컴퓨터에 연결할 수 없음의 7번째 글머리 기호 항목에 설명되어 있는 것처럼 Windows 방화벽을 비활성화합니다.
고급 TCP/IP 구성(정적 IP 사용) 정적 IP 주소를 구성했기 때문에 인스턴스가 응답하지 않을 수도 있습니다. VPC의 경우 네트워크 인터페이스를 생성하고 인스턴스에 연결합니다.

로컬 또는 온프레미스 네트워크 구성

로컬 네트워크 구성이 액세스를 차단하고 있지 않은지 확인합니다. 연결할 수 없는 인스턴스와 똑같은 VPC에서 다른 인스턴스에 연결해 보세요. 다른 인스턴스에 액세스할 수 없는 경우 로컬 네트워크 관리자와 협력하여 로컬 정책이 액세스를 제한하고 있는지 확인합니다.

원격 데스크톱 서비스 문제

인스턴스가 로그온 중에 연결할 수 없게 되면 해당 인스턴스에 원격 데스크톱 서비스(RDS) 문제가 있을 수 있습니다.

작은 정보

AWSSupport-TroubleshootRDP 런북을 사용하여 원격 데스크톱 프로토콜(RDP) 연결에 영향을 줄 수 있는 다양한 설정을 확인하고 수정할 수 있습니다. 자세한 내용은 AWS Systems Manager Automation 실행서 참조에서 AWSSupport-TroubleshootRDP를 참조하세요.

원격 데스크톱 서비스 구성
구성 확인
RDS가 실행 중임 인스턴스에서 RDS가 실행 중인지 확인합니다. Microsoft Management Console(MMC) 서비스 스냅인(services.msc)을 사용하여 인스턴스에 연결합니다. 서비스 목록에서 원격 데스크톱 서비스실행인지 확인합니다. 그렇지 않은 경우 이 서비스를 시작한 다음 시작 유형을 자동으로 설정합니다. 서비스 스냅인을 사용하여 인스턴스에 연결할 수 없으면 인스턴스에서 루트 볼륨을 분리하고, 볼륨의 스냅샷을 생성하거나 볼륨에서 AMI를 만들고, 원본 볼륨을 보조 볼륨과 동일한 가용 영역에 있는 다른 인스턴스에 연결하고, 시작 레지스트리 키를 수정합니다. 위 작업을 마쳤으면 루트 볼륨을 원본 인스턴스에 다시 연결합니다.
RDS가 활성화됨

서비스가 시작되더라도 비활성화될 수 있습니다. 원격 레지스트리를 사용하여 EC2 인스턴스에서 원격 데스크톱 활성화에 설명되어 있는 것처럼 인스턴스에서 루트 볼륨을 분리하고, 볼륨의 스냅샷을 생성하거나 볼륨에서 AMI를 만들고, 원본 볼륨을 보조 볼륨과 동일한 가용 영역에 있는 다른 인스턴스에 연결하고, Terminal Server(터미널 서버) 레지스트리 키를 수정하여 서비스를 활성화합니다.

위 작업을 마쳤으면 루트 볼륨을 원본 인스턴스에 다시 연결합니다.

높은 CPU 사용률

Amazon CloudWatch를 사용하여 인스턴스에서 CPUUtilization (Maximum) 측정치를 확인합니다. CPUUtilization (Maximum) 수치가 높으면 CPU 사용률이 낮아지기를 기다렸다가 다시 연결해 보세요. 다음과 같은 원인으로 CPU 사용률이 높아질 수 있습니다.

  • Windows 업데이트

  • 보안 소프트웨어 검사

  • 사용자 지정 시작 스크립트

  • 작업 스케줄러

자세한 내용은 Amazon CloudWatch 사용 설명서특정 리소스에 대한 통계 얻기를 참조하세요. 추가적인 문제 해결 팁은 Windows 시작 직후 높은 CPU 사용량(Windows 인스턴스만 해당) 섹션을 참조하세요.

복구 콘솔 화면

콘솔 스크린샷 서비스에서 다음을 반환했습니다.

복구 콘솔 스크린샷입니다.

bootstatuspolicyignoreallfailures로 설정되어 있지 않은 경우 운영 체제가 복구 콘솔로 부팅되고 이 상태로 고착될 수 있습니다. 다음 절차에 따라 bootstatuspolicy 구성을 ignoreallfailures로 변경합니다.

기본적으로 AWS에서 제공하는 퍼블릭 Windows AMI에 대한 정책 구성은 ignoreallfailures로 설정됩니다.

  1. 연결할 수 없는 인스턴스를 중지합니다.

  2. 루트 볼륨의 스냅샷을 생성합니다. 루트 볼륨은 /dev/sda1로서 인스턴스에 연결됩니다.

    연결할 수 없는 인스턴스에서 루트 볼륨을 분리하고, 볼륨의 스냅샷을 생성하거나 볼륨에서 AMI를 만들고, 이를 보조 볼륨과 동일한 가용 영역에 있는 다른 인스턴스에 연결합니다.

    주의

    임시 인스턴스와 원본 인스턴스가 동일한 AMI를 사용하여 시작되는 경우 추가 단계를 수행해야 합니다. 그렇지 않으면 디스크 서명 충돌로 인해 루트 볼륨 복원 후 원본 인스턴스를 부팅할 수 없습니다. 동일한 AMI를 사용하여 임시 인스턴스를 생성해야 하는 경우 디스크 서명 충돌을 피하기 위해 디스크 서명 충돌의 단계를 완료하세요.

    또는 임시 인스턴스에 대한 다른 AMI를 선택합니다. 예를 들어 원본 인스턴스에서 Windows Server 2016용 AMI를 사용할 경우 Windows Server 2019용 AMI를 사용하여 임시 인스턴스를 시작합니다.

  3. 인스턴스에 로그인하고 명령 프롬프트에서 다음 명령을 실행하여 bootstatuspolicy 구성을 ignoreallfailures로 변경합니다.

    bcdedit /store Drive Letter:\boot\bcd /set {default} bootstatuspolicy ignoreallfailures
  4. 볼륨을 연결하지 못했던 인스턴스에 다시 연결하고 인스턴스를 다시 시작합니다.

Windows 부팅 관리자 화면

콘솔 스크린샷 서비스에서 다음을 반환했습니다.

Windows 부팅 관리자 화면입니다.

운영 체제의 시스템 파일 및/또는 레지스트리에서 치명적 손상이 발생했습니다. 인스턴스가 이 상태로 고착되면 최근 백업 AMI에서 인스턴스를 복구하거나 대체 인스턴스를 시작해야 합니다. 인스턴스 상의 데이터에 액세스할 필요가 있는 경우에는 연결할 수 없는 인스턴스에서 모든 루트 볼륨을 분리하고, 이들 볼륨의 스냅샷을 생성하거나 볼륨에서 AMI를 만들고, 이들을 보조 볼륨과 동일한 가용 영역에 있는 다른 인스턴스에 연결합니다.

Sysprep 화면

콘솔 스크린샷 서비스에서 다음을 반환했습니다.

Sysprep 화면입니다.

Sysprep 호출에 EC2Config Service를 사용하지 않았거나 Sysprep 실행 중에 운영 체제에 장애가 발생한 경우 이 화면이 나타날 수 있습니다. EC2Rescue를 사용하여 암호를 재설정할 수 있습니다. 그렇지 않으면 Windows Sysprep으로 AMI 생성 단원을 참조하세요.

준비 화면

콘솔 스크린샷 서비스에서 다음을 반환했습니다.

준비 화면입니다.

인스턴스 콘솔 스크린샷 서비스를 반복적으로 새로 고쳐 진행률 링이 돌고 있는지 확인합니다. 링이 돌고 있으면 운영 체제가 시작할 때까지 기다립니다. Amazon CloudWatch를 사용하여 인스턴스에서 CPUUtilization (Maximum) 측정치를 확인하여 운영 체제가 활성 상태인지 알아볼 수도 있습니다. 진행률 링이 돌고 있지 않으면 인스턴스가 부팅 프로세스에서 더 진행되지 못하고 중단될 수 있습니다. 인스턴스를 재부팅합니다. 다시 부팅했는데도 이 문제가 해결되지 않으면 최근 백업 AMI에서 인스턴스를 복구하거나 대체 인스턴스를 시작하세요. 인스턴스 상의 데이터에 액세스할 필요가 있는 경우에는 연결할 수 없는 인스턴스에서 루트 볼륨을 분리하고, 볼륨의 스냅샷을 생성하거나 볼륨에서 AMI를 만듭니다. 그런 다음, 보조 볼륨과 동일한 가용 영역에 있는 다른 인스턴스에 연결합니다.

Windows 업데이트 화면

콘솔 스크린샷 서비스에서 다음을 반환했습니다.

Windows 업데이트 화면입니다.

Windows 업데이트 프로세스에서는 레지스트리가 업데이트됩니다. 업데이트를 마칠 때까지 기다리세요. 업데이트 중에 다시 부팅하거나 인스턴스를 중지하면 데이터가 손상될 수 있으므로 그렇게 하지 마세요.

참고

Windows 업데이트 프로세스는 업데이트 중에 서버의 리소스를 소비할 수 있습니다. 이 문제가 자주 발생하면 더 빠른 인스턴스 유형과 더 빠른 EBS 볼륨의 사용을 고려해 보세요.

Chkdsk

콘솔 스크린샷 서비스에서 다음을 반환했습니다.

Chkdsk 화면입니다.

Windows는 드라이브에서 chkdsk 시스템 도구를 실행하여 파일 시스템 레지스트리를 확인하고 논리적 파일 시스템 오류를 수정합니다. 프로세스가 완료될 때까지 기다립니다.

호스트 컴퓨터 실패 시 인스턴스 복구

기본 호스트 컴퓨터 하드웨어와 관련하여 복구할 수 없는 문제가 발생한 경우 AWS는 인스턴스 중지 이벤트를 예약할 수 있습니다. 이러한 이벤트가 발생하기 전에 이메일을 통해 알림이 전달됩니다.

실패한 호스트 컴퓨터에서 실행 중인 Amazon EBS 지원 인스턴스를 복구하려면
  1. 인스턴스 스토어 볼륨의 중요 데이터를 Amazon EBS 또는 Amazon S3으로 백업합니다.

  2. 인스턴스를 중지합니다.

  3. 인스턴스를 시작합니다.

  4. 중요 데이터를 복원합니다.

자세한 내용은 Amazon EC2 인스턴스 중지 및 시작 섹션을 참조하세요.

실패한 호스트 컴퓨터에서 실행 중인 인스턴스 스토어 지원 인스턴스를 복구하려면
  1. 인스턴스에서 AMI를 만듭니다.

  2. 이미지를 Amazon S3으로 업로드합니다.

  3. 중요 데이터를 Amazon EBS 또는 Amazon S3으로 백업합니다.

  4. 인스턴스를 종료합니다.

  5. AMI에서 새 인스턴스를 시작합니다.

  6. 중요 데이터를 새 인스턴스로 모두 복원합니다.