了解 Azure 虚拟机规模集 VM 的名称和实例 ID
规模集中的每个 VM 均获得唯一标识它的名称和实例 ID。 可在规模集 API 中使用它们对规模集中的特定 VM 执行操作。 本文介绍规模集的实例 ID 和显示这些 ID 的各种方法。
虚拟机规模集将为规模集中的每个 VM 生成独一无二的名称。 此名称用作 Azure ARM 资源的唯一资源标识符的一部分。 实例资源名称的最大长度为 64 个字符。 命名约定因业务流程模式而异:
- 灵活的业务流程模式实例名称:
{scale-set-name}_{8-char-guid}
- 统一的业务流程模式实例名称:
{scale-set-name}_{instance-id}
对于灵活业务流程模式下的虚拟机规模集,实例 ID 就是虚拟机的名称。
对于统一业务流程模式下的规模集,实例 ID 为十进制数。 删除旧实例后,实例 ID 可以重新用于新实例。
备注
对于将实例 ID 分配给规模集中的 VM 的方式没有保证。 有时它们可能会按顺序递增,但并非总是这种情况。 不要依赖于将实例 ID 分配给 VM 的特定方式。
可以通过列出规模集中的所有实例来获取实例 ID 的列表。
有关详细信息,请参阅 REST API 文档。
GET https://management.chinacloudapi.cn/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualMachines?api-version={apiVersion}
也可以在使用重置映像 API 时指定特定实例 ID 来重置映像。 有关详细信息,请参阅 REST API 文档
POST https://management.chinacloudapi.cn/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/reimage?api-version={apiVersion}
有关详细信息,请参阅 PowerShell 文档。
Get-AzVmssVM -ResourceGroupName {resourceGroupName} -VMScaleSetName {vmScaleSetName}
也可以在使用重置映像 API 时指定特定实例 ID 来重置映像。 有关详细信息,请参阅 PowerShell 文档
Set-AzVmssVM -ResourceGroupName {resourceGroupName} -VMScaleSetName {vmScaleSetName} -InstanceId {instanceId} -Reimage
有关详细信息,请参阅 CLI 文档。
az vmss list-instances -g {resourceGroupName} -n {vmScaleSetName}
也可以在使用重置映像 API 时指定特定实例 ID 来重置映像。 有关详细信息,请参阅 CLI 文档。
az vmss reimage -g {resourceGroupName} -n {vmScaleSetName} --instance-id {instanceId}
如果从规模集 VM 中查询实例元数据,会在输出中看到“名称”:
{
"compute": {
"location": "chinanorth2",
"name": "nsgvmss_85",
规模集中的每个 VM 还会获得一个分配给它的计算机名称。 此计算机名在虚拟网络中 Azure 提供的 DNS 名称解析中是 VM 的主机名。 计算机名称命名约定因业务流程模式而异:
- 灵活业务流程模式:{computer-name-prefix}{6-char-guid}
- 统一业务流程模式:{computer-name-prefix}{base-36-instance-id}
计算机名称前缀是规模集模型中可以设置的属性,因此它可以与规模集名称本身不同。 创建 VM 后,还可以从来宾 OS 内部更改规模集 VM 计算机名称。 计算机名称的最大长度取决于操作系统。 有关详细信息,请参阅命名规则和限制。