从专用映像设置 Azure Scale Set 中 Win 10 VM 的计算机名称

从专用映像设置 Azure Scale Set 中 Win 10 VM 的计算机名称

我在共享映像库中有一个 Win 10 Pro 专用映像,我将其用作 Scale Set 的基础。一切运行良好,只是所有 VM 的 Win 计算机名称都相同,这让我正在使用的服务器应用程序感到困惑。

如何配置规模集以自动设置每个虚拟机的计算机(而非资源)名称?

答案1

创建规模集时,只需提供规模集本身的计算机名称。每个实例将根据提供的规模集名称获得一个以 36 为基数的计算机名称。

您还需要考虑缩放比例集与系统准备的映像一起工作。如果您看到每个实例的名称相同,那肯定是因为您使用的专用映像。即使在普通虚拟机中使用专用映像,Azure 也建议立即登录后续虚拟机并更改计算机名称以避免出现问题。

我怀疑 VMSS 也发生了同样的事情 - 事实上,我很惊讶 Azure 在任何文档关于使用带有比例尺集的专门图像。

如果您无法对图像进行系统准备/通用化,请考虑以下事项:

  1. 设置 Azure 私有 DNS 并将其与启用自动注册的 VNET 链接。

  2. 在您的基础映像启动时运行一个 PowerShell 脚本,它将:

    (a) 使用 Az Cli 查询 Azure 私有 DNS 并检索现有条目(以前的 Scale Sets 实例)。

    (b) 根据预定义的逻辑生成新的计算机名称。

    (c)将这个新的计算机名称分配给规模集并重新启动机器。

关于为什么会发生这种情况的一些背景信息:

Azure 中的计算机名称(NetBios 名称)依赖于 Azure 的内部 DNS(internal.cloudapp.net)来解析到每台计算机。在 cloudapp DNS 中只能注册一台具有该名称的计算机。如果创建了具有相同计算机名称的新计算机,则旧计算机将被取消注册,新计算机的 IP 将接管 DNS 条目。

阅读更多:使用特殊图像时的注意事项

相关内容