Azure ARM – 实时交换LB后端池

我目前正在调查交换Azure负载均衡器的后端池的可行性,同时不中断负载均衡器中请求的经验。

原因是要创build一个蓝/绿的部署策略,在那里我们创build一个新的可用性集(潜在的VMSS)并更新负载均衡器后端池以指向新的可用性集。

我很想听听有没有人在Azure中做过这样的事情。

Azure Load Balancer探测器来自168.63.129.16 。 如果您在虚拟机上创build防火墙规则以拒绝从该IP访问探针端口,则会将该虚拟机从池中取出,因此将来的连接将不会路由到该虚拟机(直到防火墙规则被禁用)。 来自用户的现有连接继续没有受到伤害。

我还没有尝试过你的方法,不知道它是否会起作用。 但是你问我们的经验,所以我想我会与你分享。 我发现这是一个很好的方式,让虚拟机从虚拟机内正常脱机进行维护。 我很高兴,我不必在虚拟机上configurationAzure PowerShell,也不需要服务主体来完成它。

我目前正在调查交换Azure负载均衡器的后端池的可行性,同时不中断负载均衡器中请求的经验。

据我所知,我们不能实时交换LB后端池,也不能中断这些请求。

作为解决方法,我们可以使用powershell来升级Azure Vmss。 以下是关于更新Azure Vmss实例的PowerShell脚本(每次更新一个VM实例 ):

$rgname = "vmss" $vmssname = "vmss" $newURI = "imageurl" $instanceid = "1" $vmss = Get-AzureRmVmss -ResourceGroupName $rgname -VMScaleSetName $vmssname $vmss.virtualMachineProfile.storageProfile.osDisk.image.uri= $newURI Update-AzureRmVmss -ResourceGroupName $rgname -Name $vmssname -VirtualMachineScaleSet $vmss Update-AzureRmVmssInstance -ResourceGroupName $rgname -VMScaleSetName $vmssname -InstanceId $instanceId 

这里有一个关于升级Azure VM Scale Set 而不closures它的博客,请参考这个链接 。