本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
使用EC2Rescue和 Systems Manager 對受損的 Windows 執行個體
AWS Support 提供「Systems Manager 執行命令」文件,以連接啟用系統管理員的執行個體,以便在 Windows Server 上執EC2Rescue行。執行命令文件稱為 AWSSupport-RunEC2RescueForWindowsTool
。
此 Systems Manager 執行命令文件會執行下列任務:
-
下載並驗證EC2Rescue視窗伺服器。
-
匯入 PowerShell 模組以簡化您與工具的互動。
-
EC2RescueCmd使用提供的命令和參數運行。
Systems Manager 執行命令文件接受三個參數:
-
命令-EC2Rescue 用於 Windows 伺服器動作。目前允許的值為:
-
ResetAccess重設本機管理員密碼。會重設目前執行個體的本機管理員密碼,隨機產生的密碼則以
/EC2Rescue/Password/<INSTANCE_ID>
安全存放在參數存放區中。如果您選取此動作且不提供任何參數,則會使用預設KMS金鑰自動加密密碼。或者,您可以在參數中指定KMS金鑰 ID,使用您自己的金鑰加密密碼。 -
CollectLogs使用此
/collect:all
動作EC2Rescue針對 Windows 伺服器執行。如果您選取此動作,Parameters
必須包含要將日誌上傳到該處的 Amazon S3 儲存貯體名稱。 -
FixAll使用此
/rescue:all
動作EC2Rescue針對 Windows 伺服器執行。如果您選取此動作,Parameters
必須包含要救援的區塊型儲存設備名稱。
-
-
參數-要為指定指令傳遞的 PowerShell 參數。
注意
為了使ResetAccess動作正常運作,您的 Amazon EC2 執行個體需要附加下列政策,才能將加密的密碼寫入參數存放區。將此原則附加到相關IAM角色之後,請稍候幾分鐘,然後再嘗試重設執行個體的密碼。
使用預設KMS金鑰:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ssm:PutParameter" ], "Resource": [ "arn:aws:ssm:
region
:account_id
:parameter/EC2Rescue/Passwords/<instanceid>
" ] } ] }
使用自定義KMS密鑰:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ssm:PutParameter" ], "Resource": [ "arn:aws:ssm:
region
:account_id
:parameter/EC2Rescue/Passwords/<instanceid>
" ] }, { "Effect": "Allow", "Action": [ "kms:Encrypt" ], "Resource": [ "arn:aws:kms:region
:account_id
:key/<kmskeyid>
" ] } ] }
下列程序說明如何在 JSON Amazon EC2 主控台中檢視此文件。
若要檢視JSON系 Systems Manager 執行命令文件
-
在https://console.aws.amazon.com/systems-manager/家
中打開 Systems Manager 控制台。 -
在導覽窗格中,展開 Shared Services (系統管理員共享服務) 並選擇 Documents (文件)。
-
在搜尋列中,將 Owner (擁有者) 設定為 Owned by Me or Amazon (由我或 Amazon 所有) 並將 Document name prefix (文件名稱前綴) 設定為
AWSSupport-RunEC2RescueForWindowsTool
。 -
選取
AWSSupport-RunEC2RescueForWindowsTool
文件,選擇「內容」,然後檢視JSON。
範例
以下是一些關於如何使用 Systems Manager 執行命令文件來執行 Windows 伺服器的範EC2Rescue例,使用 AWS CLI. 若要取得有關使用傳送指令的更多資訊 AWS CLI,請參閱《指AWS CLI 令參考》。
嘗試修正離線根磁碟區內的所有已識別問題
嘗試修正連接到 Amazon EC2 Windows 執行個體的離線根磁碟區上所有已識別的問題:
aws ssm send-command --instance-ids "
i-0cb2b964d3e14fd9f
" --document-name "AWSSupport-RunEC2RescueForWindowsTool" --comment "EC2Rescue offline volume xvdf
" --parameters "Command=FixAll, Parameters='xvdf
'" --output text
從目前的 Amazon EC2 視窗執行個體收集日誌
從目前線上 Amazon EC2 Windows 執行個體收集所有日誌,並將其上傳到 Amazon S3 儲存貯體:
aws ssm send-command --instance-ids "
i-0cb2b964d3e14fd9f
" --document-name "AWSSupport-RunEC2RescueForWindowsTool" --comment "EC2Rescue online log collection to S3
" --parameters "Command=CollectLogs, Parameters='YOURS3BUCKETNAME
'" --output text
從離線的 Amazon EC2 Windows 執行個體磁碟區收集日誌
從連接到 Amazon EC2 Windows 執行個體的離線磁碟區收集所有日誌,並使用預先簽署URL的方式將它們上傳到 Amazon S3:
aws ssm send-command --instance-ids "
i-0cb2b964d3e14fd9f
" --document-name "AWSSupport-RunEC2RescueForWindowsTool" --comment "EC2Rescue offline log collection to S3
" --parameters "Command=CollectLogs, Parameters=\"-Offline -BlockDeviceNamexvdf
-S3PreSignedUrl 'YOURS3PRESIGNEDURL
'\"" --output text
重設本機管理員密碼
下列範例示範您可用以重設本機管理員密碼的方法。輸出提供參數存放區的連結,您可以在其中找到隨機產生的安全密碼,然後以本機管理員身分用於 Amazon EC2 Windows 執行個體。RDP
使用預設的 AWS KMS key 別名/aws/ssm 重設線上執行個體的本機管理員密碼:
aws ssm send-command --instance-ids "
i-0cb2b964d3e14fd9f
" --document-name "AWSSupport-RunEC2RescueForWindowsTool" --comment "EC2Rescue online password reset
" --parameters "Command=ResetAccess" --output text
使用金鑰重設線上執行個體的本機管理員密KMS碼:
aws ssm send-command --instance-ids "
i-0cb2b964d3e14fd9f
" --document-name "AWSSupport-RunEC2RescueForWindowsTool" --comment "EC2Rescue online password reset
" --parameters "Command=ResetAccess, Parameters=a133dc3c-a2g4-4fc6-a873-6c0720104bf0
" --output text
注意
在此範例中,索KMS引鍵為a133dc3c-a2g4-4fc6-a873-6c0720104bf0
。