

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

# 遷移工作負載：Windows 擷取前驗證
<a name="ex-migrate-instance-win-validation"></a>

您可以使用 WIGs前驗證程式指令碼來驗證執行個體是否已準備好擷取到您的 AMS 帳戶。工作負載擷取 (WIGS) 擷取前驗證會執行檢查，例如作業系統類型、可用磁碟空間、是否存在衝突的第三方軟體等。執行時，WIGS 擷取前驗證會產生螢幕資料表和選用的日誌檔案。結果會為每個驗證檢查提供通過/失敗狀態，以及失敗原因。此外，您可以自訂驗證測試。

常見問答集：
+ **如何使用 Windows WIGS 擷取前驗證？**

  您可以從 GUI 和 Web 瀏覽器執行驗證，也可以使用 Windows PowerShell、SSM Run Command 或 SSM Session Manager。

  **選項 1：從 GUI 和 Web 瀏覽器執行**

  若要從 GUI 和 Web 瀏覽器執行 Windows 預 WIGs，請執行下列動作：

  1. 下載具有驗證指令碼的 ZIP 檔案：

      [Windows WIGS 擷取前驗證 ZIP 檔案](samples/windows-prewigs-validation.zip)。

  1. 將連接的規則解壓縮到您選擇的目錄。

  1. 請遵循 **README.md** 檔案中的指示。

  **選項 2：從 Windows PowerShell、SSM Run Command 或 SSM Session Manager 執行**

  **Windows 2016 及更新版本**

  1. 使用驗證指令碼下載 ZIP 檔案。

     ```
     $DestinationFile = "$env:TEMP\WIGValidation.zip"
     
     $Bucket = 'https://docs.aws.amazon.com/managedservices/latest/appguide/samples/windows-prewigs-validation.zip'
     $DestinationFile = "$env:TEMP\WIGValidation.zip"
     $ScriptFolder = "$env:TEMP\AWSManagedServices.PreWigs.Validation"
     ```

  1. 從 移除現有檔案`C:\Users\AppData\Local\Temp\AWSManagedServices.PreWigs.Validation`。

     ```
     Remove-Item $scriptFolder -Recurse -Force -ErrorAction Ignore
     ```

  1. 叫用指令碼。

     ```
     Invoke-WebRequest -Uri $bucket -OutFile $DestinationFile             
     Add-Type -Assembly "system.io.compression.filesystem"
     ```

  1. 將附加檔案解壓縮至您選擇的目錄。

     ```
     [io.compression.zipfile]::ExtractToDirectory($DestinationFile, $env:TEMP)
     ```

  1. 以互動方式執行驗證指令碼並檢視結果。

     ```
     Import-Module .\AWSManagedServices.PreWigs.Validation.psm1 -force
     Invoke-PreWIGsValidation -RunWithoutExitCodes
     ```

  1. （選用） 若要擷取結束代碼區段中列出的錯誤**代碼**，請在沒有 `RunWithoutExitCodes`選項的情況下執行指令碼。請注意，此命令會終止作用中的 PowerShell 工作階段。

     ```
     Import-Module .\AWSManagedServices.PreWigs.Validation.psm1 -force
     Invoke-PreWIGsValidation
     ```

  **Windows 2012 R2 及更早版本**

  如果您執行的是 Windows Server 2012R2 或更低版本，您必須先設定 TLS，才能下載 zip 檔案。若要設定 TLS，請完成下列步驟：

  1. 使用驗證指令碼下載 ZIP 檔案。

     ```
     $DestinationFile = "$env:TEMP\WIGValidation.zip"
     
     $Bucket = 'https://docs.aws.amazon.com/managedservices/latest/appguide/samples/windows-prewigs-validation.zip'
     $DestinationFile = "$env:TEMP\WIGValidation.zip"
     $ScriptFolder = "$env:TEMP\AWSManagedServices.PreWigs.Validation"
     ```

  1. 如果有現有的驗證檔案，請將其移除。

     ```
     Remove-Item $scriptFolder -Recurse -Force -ErrorAction Ignore
     ```

  1. 設定 TLS 版本。

     ```
     [System.Net.ServicePointManager]::SecurityProtocol = 'TLS12'
     ```

  1. 下載 WIG 驗證。

     ```
     Invoke-WebRequest -Uri $bucket -OutFile $DestinationFile             
     Add-Type -Assembly "system.io.compression.filesystem"
     ```

  1. 將連接的規則解壓縮到您選擇的目錄。

     ```
     [io.compression.zipfile]::ExtractToDirectory($DestinationFile, $env:TEMP)
     ```

  1. 以互動方式執行驗證指令碼並檢視結果。

     ```
     Import-Module .\AWSManagedServices.PreWigs.Validation.psm1 -force
     Invoke-PreWIGsValidation -RunWithoutExitCodes
     ```

  1. （選用） 若要擷取**結束代碼**區段中列出的錯誤代碼，請在沒有 RunWithoutExitCodes 選項的情況下執行指令碼。請注意，此命令會終止作用中的 PowerShell 工作階段。

     ```
     Import-Module .\AWSManagedServices.PreWigs.Validation.psm1 -force
     Invoke-PreWIGsValidation
     ```
**注意**  
您可以下載並執行 PowerShell 指令碼。若要這樣做，請下載 [pre-wigs-validation-powershell-scripts.zip](samples/pre-wigs-validation-powershell-scripts.zip)。
+ **Windows WIGS 擷取前驗證會執行哪些驗證？**

  AMS Windows WIGS 擷取前驗證解決方案會驗證下列項目：

  1. 開機磁碟區至少有 10 GB 可用。

  1. AMS 支援作業系統。

  1. 執行個體具有特定的執行個體描述檔。

  1. 執行個體不包含防毒軟體或虛擬化軟體。

  1. 至少一個網路轉接器上已啟用 DHCP。

  1. 執行個體已準備好供 Sysprep 使用。
     + 對於 2008 R2 和 2012 Base 和 R2，Sysprep 會驗證：
       + 有一個 unattend.xml 檔案
       + sppnp.dll file （若有） 未損毀
       + 作業系統尚未升級
       + Sysprep 的執行次數未超過 Microsoft 指導方針的次數上限
     + 對於 2016 年及更高版本，上述所有檢查都會略過，因為這不會造成該作業系統的問題

  1. Windows 管理檢測 (WMI) 子系統運作狀態良好。

  1. 已安裝必要的驅動程式。

  1. 已安裝並執行 SSM Agent 和 。

  1. 系統會發出警告，以驗證機器是否因為 RDS 授權組態而處於寬限期。

  1. 已正確設定必要的登錄機碼。如需詳細資訊，請參閱擷取前驗證 zip 檔案中的 README。
+ **為什麼支援自訂組態檔案？**

  指令碼旨在同時在內部部署實體伺服器和 AWS EC2 執行個體上執行。不過，如上表所示，在內部部署執行時，某些測試將會失敗。例如，資料中心中的實體伺服器沒有執行個體描述檔。在這類情況下，您可以編輯組態檔案來略過執行個體描述檔測試，以避免混淆。
+ **如何確保我有最新版本的指令碼？**

  Windows WIGS 擷取前驗證解決方案up-to-date將在主要文件頁面上的 **AMS 協助程式檔案**區段下提供。
+ **指令碼是唯讀的嗎？**

  指令碼設計為唯讀，但其產生的日誌檔案除外，但應遵循最佳實務以在非生產環境中執行指令碼。
+ **Linux 是否可使用 WIGS 預先擷取驗證？**

  是。Linux 版本於 2019 年 10 月 31 日啟動。您可以在主要文件頁面的 **AMS 協助程式檔案**區段下取得。