更新 Azure 虚拟机规模集

时间:2021-04-21 14:21:26

标签: azure azure-functions virtual-machine

我按照以下步骤在 azure 虚拟机规模集中托管了一个网站

  1. 创建一个 VM 并在 iis 中进行必要的更改/安装。
  2. 创建虚拟机的快照。这可确保上述实例可用于未来的更改。
  3. 从快照创建磁盘。
  4. 从磁盘创建一个虚拟机。
  5. RDP 到实例并泛化实例以进行部署 (sysprep)
    以管理员身份运行 %WINDIR%\system32\sysprep\sysprep.exe。 进入系统开箱即用体验 (OOBE), 选中“概括”复选框 关机选项 = 关机
  6. 从上述实例创建图像(捕获)。
  7. 根据上图创建 VSS

假设他们是网络构建的变化,有没有办法在不再次执行这些步骤的情况下更新比例集?

1 个答案:

答案 0 :(得分:0)

Azure virtual machine extensions 提供诸如部署后配置和管理、监控、安全等功能。生产部署通常使用为 VM 实例配置的多个扩展的组合来实现预期结果。

这也是确保系统可用性的好方法。规模集会将更新一次应用到一个 VM,让其他 VM 保持正常运行。

Below example taken from the learn:

使用自定义脚本扩展部署更新 在 Azure 门户中,运行以下命令以查看规模集的当前升级策略:

Azure CLI:    
az vmss show \
        --name webServerScaleSet \
        --resource-group scalesetrg \
        --query upgradePolicy.mode

验证升级策略是否设置为自动。您在第一个实验室中创建规模集时指定了此策略。如果策略是手动,您将手动应用任何 VM 更改。由于策略是自动的,您可以使用自定义脚本扩展并允许规模集进行更新。

运行以下命令以应用更新脚本:

az vmss extension set \
    --publisher Microsoft.Azure.Extensions \
    --version 2.0 \
    --name CustomScript \
    --vmss-name webServerScaleSet \
    --resource-group scalesetrg \
    --settings "{\"commandToExecute\": \"echo This is the updated app installed on the Virtual Machine Scale Set ! > /var/www/html/index.html\"}"