适用于:Azure Local 2311.2 及更高版本
本文介绍如何收集日志,并排查 Azure Arc 启用的 Azure 本地虚拟机(VM)的问题。它还列出了 Azure 本地 VM 管理的当前限制和已知问题,以及建议的解决方案。
此操作不支持属性
错误:
Property '<Property Name>' isn't supported for this operation on your Azure Local cluster version. Please update your cluster if you want to set this property for this operation. Please view aka.ms/hciproperties.
原因:
尝试使用的功能不适用于 Azure 本地实例上运行的软件版本时,会发生此错误。 如果群集上的软件版本已过时或此功能在更高版本中引入,则可能会发生这种情况。
解决方法:
若要解决此问题,请将 Azure 本地实例更新为最新版本。 有关详细信息,请参阅 通过 PowerShell 更新或通过 Azure 门户更新。
群集扩展不支持资源类型
错误:
The cluster extension '<Cluster Extension Azure Resource Manager ID>' doesn't support resource type 'Microsoft.AzureStackHCI/<Resource Type>'. The currently enabled resource types are '<Supported Resource Type Names>'. Please ensure the 'Microsoft.AzureStackHCI' cluster extension version metadata file supports the resource type. [ClusterExtensionVersion='<Cluster Extension Version>'] [CorrelationId='<Correlation ID>'].
原因:
尝试使用的功能不适用于 Azure 本地实例上运行的软件版本时,会发生此错误。 如果群集上的软件版本已过时或此功能在更高版本中引入,则可能会发生这种情况。
解决方法:
若要解决此问题,请将 Azure 本地实例更新为最新版本。 有关详细信息,请参阅 通过 PowerShell 更新或通过 Azure 门户更新。
无法为可信启动 VM 选择映像
Azure 本地 VM 的受信任启动目前仅支持一组选择的 Azure 市场映像。 有关受支持的映像的列表,请参阅 来宾作系统映像。 在 Azure 门户中创建受信任的启动 VM 时,“映像”下拉列表仅显示受信任启动支持的图像。 如果选择不受支持的映像(包括自定义映像),“映像”下拉列表将显示为空。 如果受信任的启动不支持 Azure 本地系统上可用的映像,该列表也显示为空白。
尝试启用来宾管理时失败
尝试运行命令以启用来宾管理时,会看到以下错误:
错误: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 映像。
部署 Azure 本地 VM 失败
尝试部署 Azure 本地 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 本地虚拟机”中的示例模板。
无法识别 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"
}