本文介绍如何配置包含现有 Azure 负载均衡器的虚拟机规模集。 使用现有的虚拟网络和标准 SKU 负载均衡器,可以在 Azure 门户中点击几下部署虚拟机规模集,或者在 Azure CLI 中通过几行代码,或使用 Azure PowerShell 结合以下选项卡进行部署。
先决条件
登录到 Azure 门户
登录 Azure 门户。
部署包含现有负载均衡器的虚拟机规模集
在本部分,你将在 Azure 门户中创建一个包含现有 Azure 负载均衡器的虚拟机规模集。
注意
以下步骤假设已事先部署名为 myVNet 的虚拟网络,以及名为 myLoadBalancer 的 Azure 负载均衡器。
在屏幕的左上方,单击“创建资源”,然后在市场搜索中搜索“虚拟机规模集”。
选择“虚拟机规模集”,然后选择“创建”。
在“创建虚拟机规模集”中输入 ,或者在“基本信息”选项卡中选择以下信息:
| 设置 |
值 |
|
项目详细信息 |
|
| 订阅 |
选择 Azure 订阅 |
| 资源组 |
选择“新建”,输入“myResourceGroup”,然后选择“确定”;或选择现有资源组。 |
|
规模集详细信息 |
|
| 虚拟机规模集名称 |
输入 myVMSS |
| 区域 |
选择“中国北部 3” |
| 可用性区域 |
选择“无” |
|
实例详细信息 |
|
| 图像 |
选择“Ubuntu Server 22.04 LTS”。 |
| 大小 |
保留默认值 |
|
管理员帐户 |
|
| 身份验证类型 |
选择“SSH 公钥” |
| 用户名 |
输入 SSH 公钥的用户名。 |
| SSH 公钥源 |
选择“生成新密钥对”。 |
| SSH 密钥类型 |
选择“RSA SSH 格式”。 |
| 密钥对名称 |
输入密钥对的名称。 |
选择“网络”选项卡。
在“网络”选项卡中输入或选择以下信息:
| 设置 |
值 |
|
虚拟网络配置 |
|
| 虚拟网络 |
选择“myVNet”或现有的虚拟网络。 |
|
负载均衡 |
|
| 负载均衡选项 |
选择“Azure 负载均衡器” |
| 选择负载均衡器 |
选择“myLoadBalancer”或现有的负载均衡器 |
| 选择后端池 |
选择“myBackendPool”或现有的后端池。 |
选择“管理”选项卡。
在“管理”选项卡中,将“启动诊断”设置为“关闭”。
选择蓝色的“查看 + 创建”按钮。
检查设置,然后选择“创建”按钮。
先决条件
- 本文需要 Azure CLI 2.0.28 或更高版本。 如果使用的是 Azure PowerShell Shell,则最新版本已安装。
部署包含现有负载均衡器的虚拟机规模集
使用 az vmss create 部署虚拟机规模集。
请将括号中的值替换为配置中的资源名称。
az vmss create \
--resource-group <resource-group> \
--name <vmss-name>\
--image <your-image> \
--admin-username <admin-username> \
--generate-ssh-keys \
--upgrade-policy-mode Automatic \
--instance-count 3 \
--vnet-name <virtual-network-name> \
--subnet <subnet-name> \
--lb <load-balancer-name> \
--backend-pool-name <backend-pool-name>
以下示例部署一个虚拟机规模集:
- 虚拟机规模集名为 myVMSS
- 其中包含名为 myLoadBalancer 的 Azure 负载均衡器
- 其中包含名为 myBackendPool 的负载均衡器后端池
- 其中包含名为 myVnet 的 Azure 虚拟网络
- 其中包含名为 mySubnet 的子网
- 其中包含名为 myResourceGroup 的资源组
- 虚拟机规模集的 Ubuntu 服务器映像
az vmss create \
--resource-group myResourceGroup \
--name myVMSS \
--image Ubuntu2204 \
--admin-username adminuser \
--generate-ssh-keys \
--upgrade-policy-mode Automatic \
--instance-count 3 \
--vnet-name myVnet\
--subnet mySubnet \
--lb myLoadBalancer \
--backend-pool-name myBackendPool
注意
创建规模集后,无法为负载均衡器运行状况探测所用的负载均衡规则修改后端端口。 为了更改端口,可以通过更新 Azure 虚拟机规模集来删除运行状况探测,更新端口,然后重新配置运行状况探测。
先决条件
注意
在可以在由世纪互联运营的 Microsoft Azure 中使用 Azure CLI 之前,请先运行 az cloud set -n AzureChinaCloud 来更改云环境。 若要切换回 Azure 公有云,请再次运行 az cloud set -n AzureCloud。
登录 Azure CLI
使用 Connect-AzAccount -Environment AzureChinaCloud 登录 Azure
Connect-AzAccount -Environment AzureChinaCloud
部署包含现有负载均衡器的虚拟机规模集
使用 New-AzVMss 部署虚拟机规模集。 请将括号中的值替换为配置中的资源名称。
$rsg = <resource-group>
$loc = <location>
$vms = <vm-scale-set-name>
$vnt = <virtual-network>
$sub = <subnet-name>
$lbn = <load-balancer-name>
$pol = <upgrade-policy-mode>
$img = <image-name>
$bep = <backend-pool-name>
$img = <image-name>
$lb = Get-AzLoadBalancer -ResourceGroupName $rsg -Name $lbn
New-AzVmss -ResourceGroupName $rsg -Location $loc -VMScaleSetName $vms -VirtualNetworkName $vnt -SubnetName $sub -LoadBalancerName $lb -UpgradePolicyMode $pol
以下示例使用以下值部署一个虚拟机规模集:
- 虚拟机规模集名为 myVMSS
- 其中包含名为 myLoadBalancer 的 Azure 负载均衡器
- 其中包含名为 myBackendPool 的负载均衡器后端池
- 其中包含名为 myVnet 的 Azure 虚拟网络
- 其中包含名为 mySubnet 的子网
- 其中包含名为 myResourceGroup 的资源组
$rsg = "myResourceGroup"
$loc = "China East 2"
$vms = "myVMSS"
$vnt = "myVNet"
$sub = "default"
$pol = "Automatic"
$lbn = "myLoadBalancer"
$bep = "myBackendPool"
$img = "Ubuntu2204"
$lb = Get-AzLoadBalancer -ResourceGroupName $rsg -Name $lbn
New-AzVmss -ResourceGroupName $rsg -Location $loc -VMScaleSetName $vms -VirtualNetworkName $vnt -SubnetName $sub -LoadBalancerName $lb -UpgradePolicyMode $pol -BackendPoolName $bep -ImageName $img
注意
创建规模集后,无法为负载均衡器运行状况探测所用的负载均衡规则修改后端端口。 为了更改端口,可以通过更新 Azure 虚拟机规模集来删除运行状况探测,更新端口,然后重新配置运行状况探测。
后续步骤
在本文中,你已部署一个包含现有 Azure 负载均衡器的虚拟机规模集。 若要详细了解虚拟机规模集和负载均衡器,请参阅: