如何使用 Azure PowerShell 将 VM 规模集与负载均衡器相关联
How do I associate a VM scale set with a load balancer using Azure PowerShell
我可以通过浏览到负载均衡器的后端池并关联我的 VMSS 在 Azure 门户中完成此操作,但我需要使用 Azure PowerShell 使其自动化。
这是我目前拥有的,但我无法保存更新的网络设置。
$vmss = Get-AzVmss -VMScaleSetName myVMs
$lb = Get-AzLoadBalancer -Name lb-internal;
$vmss.VirtualMachineProfile.NetworkProfile.
NetworkInterfaceConfigurations.IpConfigurations.
LoadBalancerBackendAddressPools.Add($lb.BackendAddressPools[0].Id)
这是应该如何完成的吗?如果是这样,我该如何保存或更新 VMSS 网络设置?
我认为您的想法是正确的,不幸的是,它并不像查看文档那样简单。以下应该让你到达你需要的地方(我相信必须关闭规模集才能使更新命令工作):
$myVmss = Get-AzVmss -ResourceGroupName myRg -Name myVmss
$ipConfig = New-AzVmssIpConfig `
-Name myNewConfig `
-SubnetId $mySubnetId ` # replace with id of subnet
-LoadBalancerBackendAddressPoolsId $backendPoolId # replace with id of backend pool
Add-AzVmssNetworkInterfaceConfiguration `
-Name myNewConfig `
-Primary $true `
-IpConfiguration $ipConfig `
-VirtualMachineScaleSet $myVmss `
$myVmss | Update-AzVmss
我可以通过浏览到负载均衡器的后端池并关联我的 VMSS 在 Azure 门户中完成此操作,但我需要使用 Azure PowerShell 使其自动化。
这是我目前拥有的,但我无法保存更新的网络设置。
$vmss = Get-AzVmss -VMScaleSetName myVMs
$lb = Get-AzLoadBalancer -Name lb-internal;
$vmss.VirtualMachineProfile.NetworkProfile.
NetworkInterfaceConfigurations.IpConfigurations.
LoadBalancerBackendAddressPools.Add($lb.BackendAddressPools[0].Id)
这是应该如何完成的吗?如果是这样,我该如何保存或更新 VMSS 网络设置?
我认为您的想法是正确的,不幸的是,它并不像查看文档那样简单。以下应该让你到达你需要的地方(我相信必须关闭规模集才能使更新命令工作):
$myVmss = Get-AzVmss -ResourceGroupName myRg -Name myVmss
$ipConfig = New-AzVmssIpConfig `
-Name myNewConfig `
-SubnetId $mySubnetId ` # replace with id of subnet
-LoadBalancerBackendAddressPoolsId $backendPoolId # replace with id of backend pool
Add-AzVmssNetworkInterfaceConfiguration `
-Name myNewConfig `
-Primary $true `
-IpConfiguration $ipConfig `
-VirtualMachineScaleSet $myVmss `
$myVmss | Update-AzVmss