疑難排解 Windows VSS EBS 快照 - Amazon Elastic Compute Cloud

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

疑難排解 Windows VSS EBS 快照

在嘗試任何其他疑難排解步驟之前,建議您先確認下列詳細資料。

檢查記錄檔

如果您在建立VSSEBS快照時遇到問題或收到錯誤訊息,您可以在 Systems Manager 主控台中檢視命令輸出。

對於建立VSS快照的 Systems Manager 文件,您可以在執行時間將CollectDiagnosticLogs參數設定為 True ""。當CollectDiagnosticLogs參數設定為 "True「時,VSS會收集額外的記錄檔以協助偵錯。如需詳細資訊,請參閱收集其他診斷記錄

如果您收集診斷記錄檔,Systems Manager 文件會將它們儲存在您的執行個體中,位於下列位置:C:\ProgramData\Amazon\AwsVss\Logs\timestamp.zipCollectDiagnosticLogs參數的預設值為 "False"。

注意

如需其他偵錯說明,您可以將.zip檔案傳送至 AWS Support。

無論您是否收集診斷記錄,都可以使用下列其他記錄檔:

  • %ProgramData%\Amazon\SSM\InstanceData\InstanceID\document\orchestration\SSMCommandID\awsrunPowerShellScript\runPowerShellScript\stdout

  • %ProgramData%\Amazon\SSM\InstanceData\InstanceID\document\orchestration\SSMCommandID\awsrunPowerShellScript\runPowerShellScript\stderr

您也可以開啟事件檢視器 Windows 應用程式,然後選擇 Windows 日誌 應用程式來檢視其他日誌。若要查看特別來自 EC2 Windows VSS 提供者和磁碟區陰影複製服務的事件,請根據條款Ec2VssSoftwareProvider來源篩選VSS

如果您將 Systems Manager 與VPC端點搭配使用,且 Systems Manager SendCommandAPI動作 (在主控台中執行命令) 失敗,請確認您已正確設定下列端點:com.amazonaws。region.ec2。

如果未定義 Amazon EC2 端點,則列舉連接EBS磁碟區的呼叫會失敗,進而導致 Systems Manager 命令失敗。如需有關使用 Systems Manager 設定VPC端點的詳細資訊,請參閱AWS Systems Manager 使用手冊中的建立虛擬私有雲端端點

收集其他診斷記錄

若要在使用 Systems Manager send 命令執行VSS快照文件時收集其他診斷記錄,請在執行階段將CollectDiagnosticLogs輸入參數設定為 True ""。建議您在疑難排解時將此參數設定為 True ""。

若要查看指令行範例,請選取下列其中一個標籤。

AWS CLI

下列範例會在中執行 AWSEC2-CreateVssSnapshot Systems Manager 文件 AWS CLI:

aws ssm send-command \ --document-name "AWSEC2-CreateVssSnapshot" \ --instance-ids "i-1234567890abcdef0" \ --parameters '{"description":["Example - create diagnostic logs at runtime."],"tags":["Key=tag_name,Value=tag_value"],"CollectDiagnosticLogs":["True"]}'
PowerShell

下列範例會在中執行 AWSEC2-CreateVssSnapshot Systems Manager 文件 PowerShell:

Send-SSMCommand -DocumentName AWSEC2-CreateVssSnapshot -InstanceId "i-1234567890abcdef0" -Parameter @{'description'='Example - create diagnostic logs at runtime.';'tags'='Key=tag_name,Value=tag_value';'CollectDiagnosticLogs'='True'}

在已設定 Proxy 的執行個體VSS上使用

如果您在使用 Proxy 連線EC2端點的執行個體上建立VSSEBS快照時遇到問題,請確認執行個體上的下列設定:

  • 驗證 Proxy 是否已設定為執行個體區域中的EC2服務端點,並IMDS可透過執行身分 AWS Tools for Windows PowerShell 執行來連線SYSTEM。

  • 若要支援使用系統設定的 Win HTTP Proxy,請確定您已在執行個體上安裝最新AwsVssComponents版本。如需有關設定 Win HTTP Proxy 的詳細資訊,請參閱 Microsoft 網站上適用於 Windows 超文字傳輸通訊協定的 Netsh 命令 (WINHTTP)

錯誤:解凍管連接逾時、解凍時發生錯誤、等待VSS凍結逾時或其他逾時錯誤

EC2Windows 提VSS供者可能會因為執行個體上的活動或服務而逾時,防止以VSS基礎的快照集及時進行。Windows VSS 架構提供了一個不可設定的 10 秒視窗,在此期間暫停與檔案系統的通訊。在這段期間,AWSEC2-CreateVssSnapshot 會對磁碟區執行快照。

下列問題可能會導致 EC2 Windows VSS 提供者在快照期間遇到時間限制:

  • 磁碟區的過多 I/O

  • 實例EC2API上的響應速度慢

  • 分段的磁碟區

  • 與某些防毒軟體不相容

  • VSS應用程式撰寫程式的問題

  • 為大量模組啟用「模 PowerShell 組記錄」時,可能會導致 PowerShell 指令碼執行速度變慢

執行 AWSEC2-CreateVssSnapshot 命令文件時遇到的大部分逾時問題是與備份時執行個體的工作負載過高相關。下列動作可協助您成功建立快照:

  • 重試 AWSEC2-CreateVssSnapshot 命令來查看快照是否成功。若在某些情況下重試成功,減少執行個體負載可能使快照更加成功。

  • 等候一段時間,待執行個體上的工作負載減少,再重試 AWSEC2-CreateVssSnapshot 命令。或者,您可以在執行個體處於低壓力時嘗試快照。

  • 當系統上的防毒軟體關閉時,請嘗試VSS快照。如果這樣可以解決問題,請參閱防毒軟體指示,並將其設定為允許VSS快照。

  • 如果您的帳戶在執行快照的相同區域內有大量 Amazon EC2 API 呼叫,API節流可能會延遲快照作業。若要減少節流影響,請使用最新AwsVssComponents的套件。此套件會利用此EC2CreateSnapshotsAPI動作來減少變更動作的數量,例如每個磁碟區快照建立和標記。

  • 如果您同時執行多個 AWSEC2-CreateVssSnapshot 命令指令碼,您可以採取下列步驟來減少並行問題。

    • 請考慮在較低API活動期間排程快照。

    • 如果您Run Command在 Systems Manager 主控台中使用 (或SendCommand在API) 中執行命令指令碼,您可以使用 Systems Manager 速率控制來減少並行性。

      您也可以使用 Systems Manager 速率控制來減少使用 Systems Manager 執行命令指令碼之類 AWS Backup 服務的並行性。

  • 在 Shell 中執行命令 vssadmin list writers,並查看是否有回報系統上任何寫入器的上次錯誤欄位中任何錯誤。如有任何寫入器回報逾時錯誤,請考慮在執行個體負載較少時重試快照。

  • 當您使用較小的實例類型時 t2 | t3 | t3a. 納米或 t2 | t3 | t3a.micro,可能會發生由於內存和CPU約束而導致的超時。下列動作可能有助於減少逾時問題。

    • 在拍攝快照之前,請先關閉記憶體或CPU密集型應用

    • 嘗試在執行個體活動較低期間建立快照。

錯誤:無法叫用方法。僅在此語言模式下的核心類型上支援方法調用

PowerShell 語言模式未設定為時,您將會遇到此錯誤FullLanguage。文AWSEC2-CreateVssSnapshotSSM件需 PowerShell 要設定為FullLanguage模式。

若要驗證語言模式,請在PowerShell 主控台的執行個體上執行下列命令:

$ExecutionContext.SessionState.LanguageMode

如需語言模式的詳細資訊,請參閱 Microsoft 文件中的 about_Language_Modes