5

我使用以下链接中的示例模板创建了一个带有自定义脚本扩展的 VM:

https://github.com/Azure/azure-quickstart-templates/tree/master/201-vm-custom-script-windows

如果我从 azure 门户停止并启动 VM,则自定义脚本扩展将在启动时运行。但是,如果我从 VM 中重新启动 VM(通过从“开始”菜单中选择“重新启动”),自定义脚本扩展将不会运行。当从 VM 内重新启动 VM 时,为什么自定义脚本扩展不运行?自定义脚本扩展是否仅在 VM 从解除分配状态启动时执行?

使用 VM 规模集时,如果我从 Azure 门户解除分配然后在规模集中启动单个 VM,则该 VM 的自定义脚本扩展不会执行。但是,如果我解除分配然后从 Azure 门户启动整个规模集,则自定义脚本扩展确实会为每个 VM 执行。

4

2 回答 2

7

Azure 自定义脚本扩展允许 Azure VM 的所有者在 VM 预配期间或之后运行存储在 Azure 存储中的脚本。每个 VM 只执行一次脚本扩展,而不是每次机器启动时都执行一次 - 但如果您通过 Azure 门户停止 VM,然后再次启动 VM,则将重新配置 VM,因此脚本将再次运行。Azure 虚拟机停止和停止(解除分配)状态之间的差异,请参阅链接
如果您需要重复运行脚本,您可以在自定义脚本扩展中添加时间戳参数,更多信息请参阅链接

于 2017-01-09T08:20:33.727 回答
0

不可以。一旦 VM 停止(解除分配或重新启动)然后启动 VM,自定义脚本不会每次都运行。

自定义脚本将仅在运行中执行 - 仅在 VM 配置期间首次运行。

解除分配 VM 和启动 VM 仅与公共 IP 地址的更改有关。但是,dns 命名将保持不变。

于 2017-10-11T19:49:16.363 回答