針對 Azure 本機的 Azure Arc VM 管理進行疑難解答
適用於:Azure 本機版本 23H2
本文提供如何收集記錄,並針對 Azure 本機實例上的 Azure Arc 虛擬機 (VM) 問題進行疑難解答的指引。 它也會列出 Azure Arc VM 管理目前存在的限制和已知問題。
針對 Azure Arc VM 進行疑難解答
本節說明與 Azure Arc VM 管理及其建議解決方案相關的錯誤。
嘗試啟用來賓管理時失敗
試著執行 命令以啟用來賓管理時,您會看到下列錯誤:
錯誤:Deployment failed. Correlation ID: aaaa0000-bb11-2222-33cc-444444dddddd. VM Spec validation failed for guest agent provisioning: Invalid managed identity. A system-assigned managed identity must be enabled in parent resource: Invalid Configuration
此失敗是因為未為此 VM 建立受控識別。 需要系統指派的受控識別才能啟用來賓管理。
解決方法:
請遵循下列步驟來確認未為此 VM 建立受控識別,然後啟用系統指派的受控識別。
在 Azure 入口網站 中,移至 VM。 流覽至 [ 概觀 ] 頁面。 在 [屬性] 索引標籤的 [設定] 底下,[來賓管理] 應該會顯示為 [已停用]。 從右上角選取 [JSON 檢視]。
在 參數下
Identity
,應該type
會顯示為None
。若要建立受控識別,請透過 RDP 連線到 Azure 本機電腦。 執行以下命令:
az extension add --name connectedmachine
確認系統上已安裝連接的機器 CLI 擴充功能。 以下是已成功安裝延伸模組的範例輸出。
connectedmachine
表示已安裝 0.7.0 版。[v-hostl]: PS C:\Clusterstorage\lnfrastructure_l\ArcHci> az version { "azure-cli": "2.53.0", "azure-cli-core": "2.53.0", "azure-cli-telemetry": "1.1.0", "extensions": { "akshybrid": "0.1.1", "arcappliance"^ "1.0.2", "connectedk8s": "1.5.4", "connectedmachine": "0.7.0", "customlocation": "0.1.3", "hybridaks": "0.2.4", "k8s-extension": "1.4.5", "stack-hci-vm": "0.1.8" } } [v-hostl]: PS C:\ClusterStorage\Infrastructure_l\ArcHci> ```
執行下列命令,將系統受控識別指派給 VM。
az connectedmachine update --ids "<Resource Manager ID for the VM>" --set identity.type="SystemAssigned"
移至 Azure 入口網站 並流覽至 [概觀] 頁面。 JSON 檢視應該指出系統受控識別現在已指派給 VM。
從記憶體帳戶部署 VM 映像失敗
當您嘗試從 Azure 本機上的記憶體帳戶部署 VM 映射時,您會看到下列錯誤:
錯誤:{"code":"moc-operator galleryimage serviceClient returned an error while reconciling: rpc error: code = Unknown desc = ===== RESPONSE ERROR (ErrorCode=AuthorizationPermissionMismatch) =====\nDescription=, Details: (none)\n","message":"moc-operator galleryimage serviceClient returned an error while reconciling: rpc error: code = Unknown desc = ===== RESPONSE ERROR (ErrorCode=AuthorizationPermissionMismatch) =====\nDescription=, Details: (none)\n"}
或者,您會看到此錯誤:
錯誤:{"code":"moc-operator galleryimage serviceClient returned an error while reconciling: rpc error: code = Unknown desc = ===== RESPONSE ERROR (ErrorCode=NoAuthenticationInformation) =====\nDescription=, Details: (none)\n","message":"moc-operator galleryimage serviceClient returned an error while reconciling: rpc error: code = Unknown desc = ===== RESPONSE ERROR (ErrorCode=NoAuthenticationInformation) =====\nDescription=, Details: (none)\n"}
因為建立映像的用戶沒有從記憶體帳戶存取映像的正確許可權,因此會發生失敗。 用戶必須在您用於映像的記憶體帳戶上具有 記憶體 Blob 數據參與者 角色。 如需詳細資訊,請參閱 指派 Azure 角色 以存取 Blob 數據。
解決方法:
將記憶體 Blob 數據參與者 角色新增至需要從此記憶體帳戶建立映像的使用者。 新增角色之後,請重試部署映像。
您也可以在試著從記憶體帳戶部署 VM 映像時看到下列錯誤:
錯誤:{"code":"moc-operator galleryimage serviceClient returned an error while reconciling: rpc error: code = Unknown desc = ===== RESPONSE ERROR (ErrorCode=InvalidBlobType) =====\nDescription=The blob type is invalid for this operation.\nRequestId:5e74055f-e01e-0033-66eb-ff9734000000\nTime:2024-09-05T23:32:56.3001852Z, Details: (none)\n","message":"moc-operator galleryimage serviceClient returned an error while reconciling: rpc error: code = Unknown desc = ===== RESPONSE ERROR (ErrorCode=InvalidBlobType) =====\nDescription=The blob type is invalid for this operation.\nRequestId:5e74055f-e01e-0033-66eb-ff9734000000\nTime:2024-09-05T23:32:56.3001852Z, Details: (none)\n","additionalInfo":[{"type":"ErrorInfo","info":{"category":"Uncategorized","recommendedAction":"","troubleshootingURL":""}}]}
此失敗是因為記憶體帳戶內的 Blob 類型不正確。 映射的類型必須為 page blob
。
解決方法:
在 中 page blob format
將映像上傳至您的記憶體帳戶,然後重試部署映射。
請確定使用者具有正確的許可權,且 Blob 的格式正確。 如需詳細資訊,請參閱從 Azure 儲存體 帳戶新增 VM 映射。
部署 Arc VM 失敗
嘗試在 Azure 本機上部署 Arc VM 時,您會看到下列錯誤:
錯誤:{"code":"ConflictingOperation","message":"Unable to process request 'Microsoft.AzureStackHCI/virtualMachineInstances'. There is already a previous running operation for resource '/subscriptions/<subscription ID>/resourceGroups/<Resource group name>/providers/Microsoft.HybridCompute/machines/<VM name>/providers/Microsoft.AzureStackHCI/virtualMachineInstances/default'. Please wait for the previous operation to complete."}
此失敗是因為 SystemAssigned
受控識別物件不在資源類型下 Microsoft.HybridCompute/machines
。
解決方法:
在部署範本中確認:
受控 SystemAssigned
識別對象位於資源類型之下 Microsoft.HybridCompute/machines
,而不是在資源類型下 Microsoft.AzureStackHCI/VirtualMachineInstances
。
部署範本應該符合提供的範例範本。 如需詳細資訊,請參閱在 Azure 本機上建立 Arc 虛擬機中的範例範本。
刪除記憶體路徑失敗
嘗試刪除 Azure 本機實例上的記憶體路徑時,您可能會看到類似下列訊息的錯誤。 您的案例中,資源號碼和版本可能會有所不同。
錯誤:"errorMessage" serviceClient returned an error during deletion: The storage container service returned an error during deletion: rpc error: code = Unknown desc = Container is in ACTIVE use by Resources [6:
- linux-cblmariner-0.2.0.10503
- windows-windows2019-0.2.0.10503
- windows-windows2022-0.2.0.10503
].
Remove all the Resources from this container, before trying to delete: In Use: Failed,
解決方法:
錯誤訊息中列出的映像與一般工作負載不同,這些工作負載在 Azure 入口網站 和 CLI 上以 Azure Resource Manager (ARM) 物件表示。 之所以發生此錯誤,是因為這些映像會直接下載到無法辨識 Azure 的文件系統上。
請先遵循下列步驟,再嘗試移除記憶體路徑:
- 拿掉您想要刪除之記憶體路徑上相關聯的工作負載和映像。 在映像名稱上尋找下列前置詞:
linux-cblmariner
、、、windows-windows2019
、windows_k8s
windows-windows2022
、aks-image-merged
linux-K8s
。 - 在 Azure 入口網站 中提出支援票證。
無法辨識 Azure CLI 安裝
如果您的環境在安裝后無法辨識 Azure CLI,請執行下列程式代碼區塊,將 Azure CLI 安裝路徑新增至環境路徑。
if ( -not( $env:PATH -like '*C:\Program Files (x86)\Microsoft SDKs\Azure\CLI2\wbin*') ) {
$env:PATH += "C:\Program Files (x86)\Microsoft SDKs\Azure\CLI2\wbin;"
Write-Host "Updated path $env:PATH"
}