연결할 수 없는 Windows 인스턴스 문제 해결용 공통 스크린샷
연결할 수 없는 Windows 인스턴스 문제 해결용 공통 스크린샷
서비스가 반환한 스크린샷을 기반으로 연결할 수 없는 Windows 인스턴스를 문제 해결하는 데 다음 정보를 사용할 수 있어요.
출처: 문서
본문
서비스가 반환한 스크린샷을 기반으로 연결할 수 없는 Windows 인스턴스를 문제 해결하는 데 다음 정보를 사용할 수 있습니다.
로그온 화면 (Ctrl+Alt+Delete)
Console Screenshot Service가 다음을 반환했습니다.
로그온 중에 인스턴스에 연결할 수 없게 된다면 네트워크 구성이나 Windows Remote Desktop Services에 문제가 있을 수 있어요. 프로세스가 많은 CPU를 사용하고 있다면 인스턴스가 응답하지 않을 수도 있습니다.
네트워크 구성
AWS, Microsoft Windows, 로컬(또는 온프레미스) 네트워크 구성이 인스턴스에 대한 액세스를 차단하지 않는지 다음 정보를 사용해 확인하세요.
AWS 네트워크 구성
| 구성 | 확인 사항 |
|---|---|
| 보안 그룹 구성 | 보안 그룹에 대해 포트 3389가 열려 있는지 확인. 올바른 공용 IP 주소에 연결하고 있는지 확인. 인스턴스가 탄력적 IP와 연결되지 않았다면 인스턴스가 중지/시작된 후 공용 IP가 변경됩니다. 자세한 내용은 Remote Desktop can't connect to the remote computer를 참고. |
| VPC 구성 (네트워크 ACL) | Amazon VPC의 액세스 제어 목록(ACL)이 액세스를 차단하지 않는지 확인. 자세한 내용은 Amazon VPC User Guide의 Network ACLs를 참고. |
| VPN 구성 | 가상 사설 네트워크(VPN)를 사용해 VPC에 연결하고 있다면 VPN 터널 연결을 확인. 자세한 내용은 Troubleshooting AWS Client VPN: Tunnel connectivity issues to a VPC를 참고. |
Windows 네트워크 구성
| 구성 | 확인 사항 |
|---|---|
| Windows 방화벽 | Windows 방화벽이 인스턴스에 대한 연결을 차단하지 않는지 확인. 원격 데스크톱 문제 해결 섹션의 7번 항목에 설명된 대로 Windows 방화벽을 비활성화. |
| 고급 TCP/IP 구성 (정적 IP 사용) | 정적 IP 주소를 구성했기 때문에 인스턴스가 응답하지 않을 수 있음. VPC의 경우 네트워크 인터페이스를 만들고 인스턴스에 연결. |
로컬 또는 온프레미스 네트워크 구성: 로컬 네트워크 구성이 액세스를 차단하지 않는지 확인합니다. 연결할 수 없는 인스턴스와 같은 VPC에 있는 다른 인스턴스에 연결해 보세요. 다른 인스턴스에도 액세스할 수 없다면 로컬 네트워크 관리자와 협력해 로컬 정책이 액세스를 제한하는지 확인하세요.
Remote Desktop Services 문제
로그온 중에 인스턴스에 연결할 수 없으면 인스턴스의 Remote Desktop Services(RDS)에 문제가 있을 수 있어요.
Tip
AWSSupport-TroubleshootRDPrunbook을 사용해 Remote Desktop Protocol(RDP) 연결에 영향을 줄 수 있는 다양한 설정을 확인하고 수정할 수 있어요. 자세한 내용은 AWS Systems Manager Automation runbook reference의AWSSupport-TroubleshootRDP를 참고하세요.
Remote Desktop Services 구성
| 구성 | 확인 사항 |
|---|---|
| RDS 실행 중 | RDS가 인스턴스에서 실행 중인지 확인. Microsoft Management Console(MMC) Services 스냅인(services.msc)을 사용해 인스턴스에 연결. 서비스 목록에서 Remote Desktop Services가 실행 중인지 확인. 실행 중이 아니라면 시작하고 시작 유형을 Automatic으로 설정. Services 스냅인으로 인스턴스에 연결할 수 없다면 인스턴스에서 루트 볼륨을 분리하고, 볼륨의 스냅샷을 만들거나 AMI를 만든 뒤, 원래 볼륨을 같은 가용 영역의 다른 인스턴스에 보조 볼륨으로 연결하고 Start 레지스트리 키를 수정. 완료되면 루트 볼륨을 원래 인스턴스에 다시 연결. |
| RDS 활성화 | 서비스가 시작되어도 비활성화되어 있을 수 있음. 인스턴스에서 루트 볼륨을 분리하고, 볼륨의 스냅샷을 만들거나 AMI를 만든 뒤, 원래 볼륨을 같은 가용 영역의 다른 인스턴스에 보조 볼륨으로 연결하고 Enable Remote Desktop on an EC2 instance with remote registry에 설명된 대로 Terminal Server 레지스트리 키를 수정해 서비스를 활성화. 완료되면 루트 볼륨을 원래 인스턴스에 다시 연결. |
높은 CPU 사용량
Amazon CloudWatch를 사용해 인스턴스의 CPUUtilization (Maximum) 지표를 확인해요. **CPUUtilization (Maximum)**이 높은 숫자라면 CPU가 내려갈 때까지 기다렸다가 다시 연결해 보세요. 높은 CPU 사용량은 다음으로 인해 발생할 수 있어요.
- Windows Update
- 보안 소프트웨어 검사
- 사용자 지정 시작 스크립트
- 작업 스케줄러
자세한 내용은 Amazon CloudWatch User Guide의 Get Statistics for a Specific Resource를 참고하세요. 추가 문제 해결 팁은 High CPU usage shortly after Windows starts (Windows instances only)를 참고하세요.
복구 콘솔 화면 (Recovery console screen)
Console Screenshot Service가 다음을 반환했습니다.
bootstatuspolicy가 ignoreallfailures로 설정되지 않은 경우 운영체제가 복구 콘솔로 부팅되어 이 상태에 갇힐 수 있어요. 다음 절차를 사용해 bootstatuspolicy 구성을 ignoreallfailures로 변경하세요.
AWS가 제공하는 공용 Windows AMI의 기본 정책 구성은 ignoreallfailures로 설정되어 있습니다.
Warning
임시 인스턴스를 만들 때 원본 인스턴스와 같은 AMI를 사용하면 복원된 루트 볼륨을 부팅할 때 **디스크 서명 충돌(disk signature collision)**이 발생할 수 있어요.
- 연결할 수 없는 인스턴스를 중지합니다.
- 루트 볼륨의 스냅샷을 만듭니다. 루트 볼륨은
/dev/sda1로 인스턴스에 연결되어 있습니다. 연결할 수 없는 인스턴스에서 루트 볼륨을 분리하고, 볼륨의 스냅샷을 만들거나 AMI를 만든 뒤, 같은 가용 영역의 다른 인스턴스에 보조 볼륨으로 연결합니다. 임시 인스턴스와 원본 인스턴스가 같은 AMI로 시작되었다면, 루트 볼륨을 복원한 후 디스크 서명 충돌 때문에 원본 인스턴스를 부팅하지 못할 수 있으므로 추가 단계를 완료해야 합니다. 같은 AMI로 임시 인스턴스를 만들어야 한다면 디스크 서명 충돌을 피하려면 Disk signature collision의 단계를 완료하세요. 또는 임시 인스턴스에 다른 AMI를 선택하세요. 예를 들어 원본 인스턴스가 Windows Server 2016용 AMI를 사용한다면 Windows Server 2019용 AMI로 임시 인스턴스를 시작하세요. - 인스턴스에 로그인하고 명령 프롬프트에서 다음 명령을 실행해
bootstatuspolicy구성을ignoreallfailures로 변경합니다.
bcdedit /store Drive Letter:\boot\bcd /set {default} bootstatuspolicy ignoreallfailures
- 볼륨을 연결할 수 없는 인스턴스에 다시 연결하고 인스턴스를 다시 시작합니다.
Windows 부팅 관리자 화면 (Windows boot manager screen)
Console Screenshot Service가 다음을 반환했습니다.
운영체제가 시스템 파일 및/또는 레지스트리의 치명적 손상을 겪었습니다. 인스턴스가 이 상태에 갇히면 최근 백업 AMI에서 인스턴스를 복구하거나 교체 인스턴스를 시작해야 합니다. 인스턴스의 데이터에 액세스해야 한다면 연결할 수 없는 인스턴스에서 모든 루트 볼륨을 분리하고, 해당 볼륨의 스냅샷을 만들거나 AMI를 만든 뒤, 같은 가용 영역의 다른 인스턴스에 보조 볼륨으로 연결합니다.
Sysprep 화면
Console Screenshot Service가 다음을 반환했습니다.
EC2Config 서비스를 사용해 Sysprep을 호출하지 않았거나 운영체제가 Sysprep 실행 중에 실패한 경우 이 화면이 표시될 수 있어요. EC2Rescue를 사용해 비밀번호를 재설정할 수 있습니다. 그렇지 않으면 Create an Amazon EC2 AMI using Windows Sysprep을 참고하세요.
준비 중 화면 (Getting ready screen)
Console Screenshot Service가 다음을 반환했습니다.
Instance Console Screenshot Service를 반복적으로 새로 고쳐 진행 링이 회전하고 있는지 확인해요. 링이 회전하고 있다면 운영체제가 시작될 때까지 기다리세요. Amazon CloudWatch를 사용해 인스턴스의 CPUUtilization (Maximum) 지표를 확인해 운영체제가 활성 상태인지 볼 수도 있습니다. 진행 링이 회전하지 않는다면 인스턴스가 부팅 과정에 멈춰 있을 수 있습니다. 인스턴스를 재부팅해요. 재부팅으로 문제가 해결되지 않으면 최근 백업 AMI에서 인스턴스를 복구하거나 교체 인스턴스를 시작합니다. 인스턴스의 데이터에 액세스해야 한다면 연결할 수 없는 인스턴스에서 루트 볼륨을 분리하고, 볼륨의 스냅샷을 만들거나 AMI를 만든 뒤, 같은 가용 영역의 다른 인스턴스에 보조 볼륨으로 연결합니다.
Windows Update 화면
Console Screenshot Service가 다음을 반환했습니다.
Windows Update 프로세스가 레지스트리를 업데이트하고 있습니다. 업데이트가 끝날 때까지 기다리세요. 업데이트 중 데이터 손상이 발생할 수 있으므로 인스턴스를 재부팅하거나 중지하지 마세요.
Note
Windows Update 프로세스는 업데이트 중에 서버의 리소스를 소비할 수 있어요. 이 문제를 자주 겪는다면 더 빠른 인스턴스 유형과 더 빠른 EBS 볼륨을 사용하는 것을 고려하세요.
Chkdsk
Console Screenshot Service가 다음을 반환했습니다.
Windows가 드라이브에서 chkdsk 시스템 도구를 실행해 파일 시스템 무결성을 확인하고 논리적 파일 시스템 오류를 수정하고 있습니다. 프로세스가 완료될 때까지 기다리세요.