【问题标题】:Azure Scale Set, VM app Update help requiredAzure 规模集,需要 VM 应用更新帮助
【发布时间】:2017-12-30 01:45:49
【问题描述】:

我目前正在寻求将我们的 VM 移动到规模集, 但我面临更新虚拟机的问题。 我有一个基本图像,我从中启动了一个具有 5 个实例的 ScaleSet。现在我有一个应用程序更新需要推送到这 5 台服务器中的每台服务器,实现这一点的最合适和最方便的过程是什么。 我对此进行了一些研究,其中一种可能的解决方案是;

  1. 使用更新的应用程序代码创建新图像

  2. 在模板中运行 Powershell 脚本,将旧图像替换为新图像,并相应地更新虚拟机。

我在我的应用程序中使用 asp.net。那么,当有应用程序更新时,我如何去更新规模集中的每个 VM。 有人建议我们可以使用 Chef/puppet,但是每个节点 120 美元的成本太高了

有人可以提出一个更简单的解决方案吗?非常感谢任何帮助

【问题讨论】:

    标签: azure azure-vm-scale-set


    【解决方案1】:

    使用脚本\dsc 扩展将更新推送到您的应用。该过程很简单,并且与单个 VM 的工作方式完全相同。

    https://docs.microsoft.com/en-us/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-dsc

    【讨论】:

      【解决方案2】:

      规模集“滚动升级”功能(目前为预览版:https://github.com/Azure/vm-scale-sets/tree/master/preview/upgrade)可能会有所帮助;使用此功能,您只需创建新映像,然后使用新映像更新规模集模型,然后规模集将在您的基础架构上分批推出新映像。

      希望这会有所帮助!

      【讨论】:

        【解决方案3】:

        使用 powershell 部署到规模集。对我来说就像一个魅力:)

        $customConfig = @{
        "fileUris" = @("https://$storageAccountName.blob.core.windows.net/scripts/script.ps1");
        "commandToExecute" = "PowerShell -ExecutionPolicy Unrestricted .\script.ps1";
        };
         $vmss = Get-AzureRmVmss -ResourceGroupName $resourceGroup -VMScaleSetName $vmssname
        Add-AzureRmVmssExtension -VirtualMachineScaleSet $vmss -Publisher Microsoft.Compute -Type CustomScriptExtension -TypeHandlerVersion 1.8 -Name "runscript" -Setting $customConfig
        # Send the new config to Azure
        Update-AzureRmVmss -ResourceGroupName $resourceGroup -Name $vmssname -VirtualMachineScaleSet $vmss
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2015-11-14
          • 1970-01-01
          • 2013-12-06
          • 2021-01-22
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多