Windows EC2 인스턴스의 문제를 해결하기 위해 EC2 직렬 콘솔, SAC 및 부팅 메뉴를 활성화하려면 어떻게 해야 합니까?
Windows 인스턴스의 Amazon Elastic Compute Cloud (Amazon EC2) 직렬 콘솔, SAC(Special Admin Console, 특수 관리 콘솔) 및 부팅 메뉴를 문제 해결하고 싶습니다.
간략한 설명
Windows 인스턴스에서 EC2 직렬 콘솔, SAC 및 부팅 메뉴를 활성화하려면 AWSSupport-EnableWindowsEC2SerialConsole 자동화 런북을 사용하십시오. AWS Systems Manager에서 관리하는 실행 중 상태의 인스턴스인 경우, 런북은 Systems Manager Run Command PowerShell 스크립트를 실행합니다. 이 스크립트는 SAC 및 부팅 메뉴를 활성화합니다. 중지됨 상태이거나 Systems Manager에서 관리하지 않는 인스턴스의 경우, 런북은 AWSSupport-StartEC2RescueWorkflow 자동화 워크플로를 사용합니다. 이 워크플로는 임시 EC2 인스턴스를 생성하여 오프라인으로 변경을 수행합니다.
직렬 콘솔을 사용하여 Windows 인스턴스 문제를 수동으로 해결하십시오. Amazon EC2 직렬 콘솔은 인스턴스의 직렬 포트에 연결되어 부팅, 네트워크 구성 및 기타 문제를 해결하도록 도움을 줍니다. 직렬 콘솔은 인스턴스에 네트워킹 기능이 필요하지 않으며, 명령을 사용하여 인스턴스의 직렬 포트에서 작동합니다. 직렬 콘솔 세션은 인스턴스가 재부팅되고 중지되는 동안 지속됩니다. 인스턴스가 재부팅되면 시작 시점부터 부팅 메시지가 표시됩니다.
지원되는 인스턴스 패밀리 및 AWS 리전에 대한 자세한 내용은 EC2 직렬 콘솔의 사전 요구 사항을 참조하십시오.
해결 방법
자동화 런북 사용
사전 요구 사항: AWS Identify and Access Management(IAM) 사용자 또는 역할에 필요한 권한이 있어야 합니다. 자세한 내용은 AWSSupport-EnableWindowsEC2SerialConsole의 필요한 IAM 권한을 참조하십시오.
중요:
- SAC를 활성화하면 암호 검색을 사용하는 EC2 서비스가 Amazon EC2 콘솔에서 작동하지 않습니다. 자세한 내용은 (Windows 인스턴스) SAC를 사용하여 인스턴스 문제 해결을 참조하십시오.
- 직렬 콘솔에 대한 액세스를 구성하려면 AWS 계정 수준에서 직렬 콘솔 액세스 권한을 부여해야 합니다. 그런 다음, IAM 정책을 구성하여 사용자에게 액세스 권한을 부여합니다. 또한 모든 인스턴스에서 암호 기반 사용자를 구성해야 합니다. 자세한 내용은 EC2 직렬 콘솔 액세스 구성을 참조하십시오.
- 계정에서 직렬 콘솔이 활성화되어 있는지 확인하는 방법에 대한 자세한 내용은 직렬 콘솔에 대한 계정 액세스 상태 보기를 참조하십시오.
- 직렬 콘솔 액세스는 Nitro System에 구축된 가상화된 인스턴스에서만 지원됩니다.
런북을 사용하려면 다음 단계를 수행하십시오.
- 시스템 관리자 콘솔을 엽니다.
- 탐색 창에서 Shared Resources(공유 리소스)를 선택한 다음 Documents(문서)를 선택합니다.
- Automation documents(자동화 문서)를 선택한 다음 AWSSupport-EnableWindowsEC2SerialConsole을 검색하고 선택합니다.
- Execute automation(자동화 실행)을 선택합니다.
- 입력 파라미터에 다음 값을 입력합니다.
InstanceId(필수): EC2 인스턴스의 ID입니다.
AutomationAssumeRole(선택 사항): Systems Manager Automation이 사용자를 대신하여 작업을 수행할 수 있도록 하는 AWS Identity and Access Management(IAM) 역할의 ARN입니다. 역할이 지정되지 않은 경우, Systems Manager Automation은 이 런북을 시작하는 사용자의 권한을 사용합니다.
HelperInstanceType(조건부): 오프라인 인스턴스에 대한 EC2 직렬 콘솔 액세스를 구성하기 위해 런북에서 프로비저닝하는 Amazon EC2 인스턴스의 유형입니다.
HelperInstanceProfileName(조건부): 도우미 인스턴스의 기존 IAM 인스턴스 프로파일 이름입니다. 이 정보는 중지됨 상태의 인스턴스에서 SAC 및 부팅 메뉴를 켤 때 필요합니다. Systems Manager에서 인스턴스를 관리하지 않는 경우에도 필요합니다. IAM 인스턴스 프로파일이 지정되지 않은 경우 자동화에서 프로파일을 생성합니다.
SubnetId(조건부): 도우미 인스턴스의 서브넷 ID입니다. 기본적으로 자동화에서는 제공된 인스턴스가 있는 동일한 서브넷을 사용합니다.
참고: 대상 인스턴스가 중지된 상태에 있거나 Systems Manager에서 관리하지 않는 경우, 사용자 지정 서브넷은 다음 요구 사항을 충족해야 합니다. 인스턴스와 동일한 가용 영역에 있어야 하며 Systems Manager 엔드포인트에 액세스할 수 있어야 합니다.
CreateInstanceBackupBeforeScriptExecution(선택 사항): SAC 및 부팅 메뉴를 활성화하기 전에 EC2 인스턴스의 Amazon Machine Image(AMI) 백업을 생성하려면 True를 선택합니다. AMI는 자동화가 완료된 후에도 계속 유지됩니다. AMI에 대한 액세스를 보호하거나 삭제하는 것은 사용자의 책임입니다.
BackupAmazonMachineImagePrefix(조건부): CreateInstanceBackupBeforeScriptExecution 파라미터가 True로 설정된 경우 생성되는 AMI의 접두사입니다. - Execute(실행)를 선택합니다.
- Outputs(출력) 섹션에서 자세한 결과를 검토합니다. 다음은 출력에 포함되는 섹션입니다.
EnableSACAndBootMenu.Output: EnableSACAndBootMenu 단계의 명령 실행 출력입니다.
GetExecutionDetails.OfflineScriptOutput: RunAutomationToInjectOfflineScriptForEnablingSACAndBootMenu 단계에서 실행한 오프라인 스크립트의 출력입니다.
GetExecutionDetails.BackupBeforeScriptExecution: CreateInstanceBackupBeforeScriptExecution 입력 파라미터가 True인 경우 가져온 백업 AMI의 이미지 ID입니다.
직렬 콘솔을 수동으로 사용하여 Windows 인스턴스 문제 해결
직렬 콘솔을 사용하여 Windows 인스턴스 문제를 해결하려면 다음 작업 중 하나를 수행하십시오.
참고: 시작하기 전에 직렬 콘솔에 대한 액세스를 구성해야 합니다.
SAC 켜기
SAC를 켜려면 다음 단계를 완료하십시오.
-
원격 데스크톱 프로토콜(RDP)을 사용하여 Windows 인스턴스에 연결한 후 다음 명령을 실행합니다.
SAC를 켭니다.
bcdedit /ems {current} on bcdedit /emssettings EMSPORT:1 EMSBAUDRATE:115200부팅 메뉴를 활성화합니다.
bcdedit /set {bootmgr} displaybootmenu yes bcdedit /set {bootmgr} timeout 15 bcdedit /set {bootmgr} bootems yes -
인스턴스를 재부팅하여 업데이트된 구성을 적용합니다.
shutdown -r -t 0참고: 이전의 명령을 사용하여 SAC를 켜고 구성하면 Amazon EC2 콘솔에서 SAC를 직접 연결할 수 있습니다.
SAC를 오프라인으로 켜기
SAC를 오프라인으로 켜려면 다음 단계를 완료하십시오.
-
Amazon EC2 콘솔을 엽니다.
-
탐색 창에서 Instances(인스턴스)를 선택한 다음 Instance(인스턴스)를 선택합니다.
-
영향을 받은 인스턴스를 선택하고 Instance state(인스턴스 상태)를 선택한 다음, Stop instance(인스턴스 중지)를 선택합니다.
-
Launch instances(인스턴스 시작)를 선택한 다음, 영향을 받는 인스턴스와 동일한 가용 영역에 임시 인스턴스를 생성합니다.
참고: 다른 버전의 Windows를 사용하는 인스턴스 유형을 선택해야 합니다. 예를 들어 인스턴스가 Windows Server 2016이면 Windows Server 2012 R2 또는 2019 인스턴스를 선택합니다. -
탐색 창에서 Elastic Block Store를 선택한 다음 Volumes(볼륨)을 선택합니다.
-
영향을 받는 인스턴스의 루트 Amazon Elastic Block Store(Amazon EBS) 볼륨을 선택합니다.
-
Amazon EBS 볼륨을 분리하고 기본 디바이스 이름(xvdf)을 사용하여 볼륨을 임시 인스턴스에 연결합니다.
-
RDP를 사용하여 임시 인스턴스에 연결한 다음, 디스크 관리 유틸리티를 사용하여 볼륨을 Windows에서 사용할 수 있도록 만듭니다.
-
명령 프롬프트를 열고 다음 명령을 실행합니다.
참고: d를 연결된 보조 볼륨의 드라이브 문자로 바꾸십시오.
bcdedit /store d:\boot/bcd /set {default} ems on bcdedit /store d:\boot/bcd /emssettings EMSPORT:1 EMSBAUDRATE:115200 bcdedit /store d:\boot/bcd /set {bootmgr} displaybootmenu yes bcdedit /store d:\boot/bcd /set {bootmgr} timeout 15 bcdedit /store d:\boot/bcd /set {bootmgr} bootems yes -
디스크 관리 유틸리티에서 연결된 드라이브를 선택합니다. 컨텍스트 메뉴를 열고 Offline(오프라인)을 선택합니다.
-
Amazon EC2 콘솔에서 영향을 받는 볼륨을 임시 인스턴스에서 분리합니다. 디바이스 이름이 /dev/sda1인 원본 볼륨을 원래 인스턴스에 다시 연결합니다. 볼륨을 루트 볼륨으로 지정하려면 이 디바이스 이름을 지정해야 합니다.
-
직렬 콘솔에서 SAC를 사용하여 인스턴스를 시작합니다.
-
(선택 사항) 임시 인스턴스를 삭제하거나 중지합니다.
관련 정보
AWS Support Automation Workflow(SAW)
관련 콘텐츠
- 질문됨 2년 전
