驗證 Azure 註冊

先使用 Azure Stack Hub 整備檢查程式工具 (AzsReadinessChecker) 驗證 Azure 訂用帳戶已準備好與 Azure Stack Hub 搭配使用,再開始進行 Azure Stack Hub 部署。 整備檢查程式會驗證:

  • 您使用的 Azure 訂用帳戶是否為支援的類型。 訂用帳戶必須是雲端解決方案提供者 (CSP) 或 Enterprise 合約 (EA)。
  • 您用來向 Azure 註冊訂用帳戶的帳戶可以登入 Azure,且為訂用帳戶的擁有者。

如需 Azure Stack Hub 註冊的詳細資訊,請參閱向 Azure 註冊 Azure Stack Hub

取得整備檢查工具

PowerShell 資源庫 \(英文\) 下載最新版的 AzsReadinessChecker

安裝和設定

必要條件

需要下列必要條件:

Az PowerShell 模組

您將需要安裝 Az PowerShell 模組。 如需指示,請參閱安裝 PowerShell Az 預覽模組

Microsoft Entra環境

  • 識別會與 Azure Stack Hub 搭配使用的 Azure 訂用帳戶擁有者的帳戶使用者名稱和密碼。
  • 識別您會使用的 Azure 訂用帳戶的訂用帳戶識別碼。

驗證 Azure 註冊的步驟

  1. 開啟已提升權限的 PowerShell 命令提示字元,然後執行下列命令以安裝 AzsReadinessChecker

    Install-Module -Name Az.BootStrapper -Force -AllowPrerelease
    Install-AzProfile -Profile 2020-09-01-hybrid -Force
    Install-Module -Name Microsoft.AzureStack.ReadinessChecker
    
  2. 從 PowerShell 提示字元中,執行下列命令以將 $subscriptionID 設定為您將使用的 Azure 訂用帳戶。 以您自己的訂用帳戶 ID 取代 xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx

    $subscriptionID = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
    
  3. 從 PowerShell 命令提示字元,執行下列命令:

    Connect-AzAccount -subscription $subscriptionID
    
  4. 從 PowerShell 命令提示字元,執行下列命令以開始驗證您的訂用帳戶。 提供您的Microsoft Entra系統管理員和Microsoft Entra租使用者名稱:

    Invoke-AzsRegistrationValidation  -RegistrationSubscriptionID $subscriptionID
    
  5. 在此工具執行之後,請檢閱輸出。 確認登入和註冊需求的狀態均正確。 驗證成功時,系統會顯示類似以下範例的輸出:

    Invoke-AzsRegistrationValidation v1.2100.1448.484 started.
    Checking Registration Requirements: OK
    
    Log location (contains PII): C:\Users\[*redacted*]\AppData\Local\Temp\AzsReadinessChecker\AzsReadinessChecker.log
    Report location (contains PII): C:\Users\[*redacted*]\AppData\Local\Temp\AzsReadinessChecker\AzsReadinessCheckerReport.json
    Invoke-AzsRegistrationValidation Completed
    

報告與記錄檔

每當驗證執行時,它會將結果記錄到 AzsReadinessChecker.logAzsReadinessCheckerReport.json。 PowerShell 中的驗證結果會一同顯示這些檔案的位置。

這些檔案可協助您在部署 Azure Stack Hub 或調查驗證問題之前共用驗證狀態。 這兩個檔案會保存每個後續驗證檢查的結果。 此報告會向部署團隊提供身分識別設定的確認。 記錄檔可協助部署或支援小組調查驗證問題。

這兩個檔案預設都會寫入至 C:\Users\username\AppData\Local\Temp\AzsReadinessChecker\AzsReadinessCheckerReport.json

  • 在執行的命令列結尾使用 -OutputPath <path> 參數以指定不同的報告位置。
  • 在執行的命令結尾使用 -CleanReport 參數,從 AzsReadinessCheckerReport.json 清除先前執行工具時留下的資訊。

如需詳細資訊,請參閱 Azure Stack Hub 驗證報告

驗證失敗

如果驗證檢查失敗,則會在 PowerShell 視窗中顯示有關失敗的詳細資料。 此工具也會將相關資訊記錄至 AzsReadinessChecker.log 檔案中。

下列範例會提供更多有關於常見驗證失敗的資訊。

使用者必須是訂用帳戶的擁有者

Invoke-AzsRegistrationValidation v1.1809.1005.1 started.
Checking Registration Requirements: Fail
Error Details for registration account admin@contoso.onmicrosoft.com:
The user admin@contoso.onmicrosoft.com is role(s) Reader for subscription 3f961d1c-d1fb-40c3-99ba-44524b56df2d. User must be an owner of the subscription to be used for registration.
Additional help URL https://aka.ms/AzsRemediateRegistration

Log location (contains PII): C:\Users\username\AppData\Local\Temp\AzsReadinessChecker\AzsReadinessChecker.log
Report location (contains PII): C:\Users\username\AppData\Local\Temp\AzsReadinessChecker\AzsReadinessCheckerReport.json
Invoke-AzsRegistrationValidation Completed

原因 - 帳戶不是 Azure 訂用帳戶的系統管理員。

解決方式 - 使用屬於 Azure 訂用帳戶系統管理員的帳戶,以作為 Azure Stack Hub 部署的使用量計費帳戶。

過期或暫時的密碼

Invoke-AzsRegistrationValidation v1.1809.1005.1 started.
Checking Registration Requirements: Fail
Error Details for registration account admin@contoso.onmicrosoft.com:
Checking Registration failed with: Retrieving TenantId for subscription [subscription ID] using account admin@contoso.onmicrosoft.com failed with AADSTS50055: Force Change Password.
Trace ID: [Trace ID]
Correlation ID: [Correlation ID]
Timestamp: 2018-10-22 11:16:56Z: The remote server returned an error: (401) Unauthorized.

Log location (contains PII): C:\Users\username\AppData\Local\Temp\AzsReadinessChecker\AzsReadinessChecker.log
Report location (contains PII): C:\Users\username\AppData\Local\Temp\AzsReadinessChecker\AzsReadinessCheckerReport.json
Invoke-AzsRegistrationValidation Completed

原因 - 帳戶無法登入,因為密碼已過期,或屬於暫時密碼。

解決方式 - 在 PowerShell 中執行下列命令,然後遵循提示來重設密碼。

Login-AzureRMAccount

另一種方式是以該帳戶的擁有者身分登入 Azure 入口網站,然後系統將會強制使用者變更密碼。

不明的使用者類型

Invoke-AzsRegistrationValidation v1.1809.1005.1 started.
Checking Registration Requirements: Fail
Error Details for registration account admin@contoso.onmicrosoft.com:
Checking Registration failed with: Retrieving TenantId for subscription <subscription ID> using <account> failed with unknown_user_type: Unknown User Type

Log location (contains PII): C:\Users\username\AppData\Local\Temp\AzsReadinessChecker\AzsReadinessChecker.log
Report location (contains PII): C:\Users\username\AppData\Local\Temp\AzsReadinessChecker\AzsReadinessCheckerReport.json
Invoke-AzsRegistrationValidation Completed

原因- 帳戶無法登入指定的Microsoft Entra環境。 在此範例中,AzureChinaCloud 會指定為 AzureEnvironment。

解決方式 - 確認此帳戶對指定的 Azure 環境是有效的。 在 PowerShell 中,執行下列命令以確認此帳戶是可在特定環境中使用的有效帳戶:

Login-AzureRmAccount -EnvironmentName AzureChinaCloud

後續步驟