当前位置: 首页 > Microsoft Azure > 正文

使用 Azure PowerShell 创建虚拟机规模集

前面谈到了使用Azure Portal快速创建和部署虚拟机规模集,但是很多使用我们需要利用自动化工具完成一系列动作,例如使用Azure PowerShell创建和管理虚拟机规模集、使用托管的数据磁盘、自定义VM映像、自动缩放规模集等,效果以及速度都将大于门户操作。

今天主要为大家演示如何使用Azure PowerShell创建和管理虚拟机规模集。

登陆Azure China帐户

Login-AzureRmAccount –EnvironmentName AzureChinaCloud

    使用New-AzureRmResourceGroup命令创建资源组

New-AzureRmResourceGroup -ResourceGroupName “TingVMSS” -Location “ChinaNorth”


    使用 Get-Credential 设置 VM 实例的管理员用户名和密码


使用New-AzureRmVmss创建一个虚拟机规模集。若要将流量分配到单独的 VM 实例,则还要创建负载均衡器。负载均衡器包含的规则可在TCP 端口80 上分配流量,并允许TCP 端口3389上的远程桌面流量,以及TCP端口5985上的 PowerShell远程流量:


使用以下命令查看创建的VM实例


因为我的是一个DEMO场景,所以没有定义较多的脚本参数。例如VM 型号需要根据自己的需求进行指定

    使用以下命令查看特定VM实例的其他信息


前面我们也谈到过,虚拟机规模集使用前端负载均衡器进行访问。将公共IP地址分配给负载均衡器,由后者将流量路由到各个VM实例。默认情况下,会将网络地址转换 (NAT) 规则添加到Azure负载均衡器,由后者将远程连接流量转发给给定端口上的每个VM。


使用Get-AzureRmPublicIpAddress查看负载均衡器的公共IP地址


远程连接VM实例指定所需VM实例的公共IP地址和端口号


当前创建的规模集VM实例数量2


若要增加或减少规模集中的VM实例数,可以手动更改容量。规模集会创建或删除所需数量的VM实例,然后配置分发流量所需的负载均衡器。


更新规模集容量需要花费一会儿时间。若要查看规模集中当前包含的实例数,请使用 Get-AzureRmVmss


返回Portal页面查看之前创建的信息





对于以上所使用的脚本,参考如下

#登陆Azure China帐户

Login-AzureRmAccount  –EnvironmentName AzureChinaCloud

#创建资源组

New-AzureRmResourceGroup -ResourceGroupName “TingVMSS” -Location “ChinaNorth”

#定义虚拟机规模集帐户和密码

$cred Get-Credential

#创建虚拟机规模集

New-AzureRmVmss -ResourceGroupName “TingVMSS” -VMScaleSetName “WebServers” -Location “ChinaNorth” -VirtualNetworkName “WebvNet” 

-SubnetName “FrontEndSubnet” -PublicIpAddressName “PIP-WebServers” -LoadBalancerName “WebServers-SLB” -Credential $cred

#查看规模集中的 VM 实例

Get-AzureRmVmssVM -ResourceGroupName “TingVMSS” -VMScaleSetName “WebServers”

#查看特定VM实例信息

Get-AzureRmVmssVM -ResourceGroupName “TingVMSS” -VMScaleSetName “WebServers” -InstanceId “3”

#定义负载均衡器信息

$SLB Get-AzureRmLoadBalancer -ResourceGroupName “TingVMSS” -Name “WebServers-SLB”

#查看负载均衡器入站规则

Get-AzureRmLoadBalancerInboundNatRuleConfig -LoadBalancer $SLB Select-Object Name,Protocol,FrontEndPort,BackEndPort

#查看负载均衡器的公共 IP 地址

Get-AzureRmPublicIpAddress -ResourceGroupName “TingVMSS” -Name “PIP-WebServers” Select IpAddress

#连接VM实例

mstsc /v 42.159.80.248:50001

#定义虚拟机规模集信息

$vmss Get-AzureRmVmss -ResourceGroupName “TingVMSS” -Name “WebServers”

#定义规模集数量

$vmss.sku.capacity 3

Update-AzureRmVmss -ResourceGroupName “TingVMSS” -Name “WebServers” -VirtualMachineScaleSet $vmss

#查看更新后的VM实例数

Get-AzureRmVmss -ResourceGroupName “TingVMSS” -Name “WebServers”

本文固定链接: http://365vcloud.net/2018/07/30/create-a-virtual-machine-scale-set-with-azure-powershell/ | Eric的学习之路

该日志由 TingXu 于2018年07月30日发表在 Microsoft Azure 分类下, 你可以发表评论,并在保留原文地址及作者的情况下引用到你的网站或博客。
原创文章转载请注明: 使用 Azure PowerShell 创建虚拟机规模集 | Eric的学习之路
关键字: ,