《Windows Azure Platform 系列文章目录》
在开始本章内容之前,我们需要准备好Azure VM的镜像,具体可以参考:Azure VMSS (2) 对VM执行Generalize操作
1.我们先查看到之前创建的镜像(Image)的资源ID。我们首先点击All Service,搜索Image,点击下图的Images
2.找到我们之前创建的Azure Image的资源ID
我们复制下面的Resource ID里面的内容,到记事本上
3.我们创建的VMSS,可以添加到新的Azure Virtual Network里,或者加入到现有Virtual Network里。
我们这里演示加入新的VNet,可以准备以下资源:
(1)创建1个新的资源组,命名为VMSS-RG
(2)在这个资源组里,创建1个新的Azure Virtual Network,我们命名为VMSS-VNet
(3)在这个VNet里,创建1个子网,命名为subnet-1
4.我们需要用到的VM Template,请参考:
请注意这个template是手动横向扩展,如果需要自动横向扩展,可以在Azure Portal进行配置
5.熟悉Azure Template的读者都知道,Azure Template有两个json文件。
template.json是描述部署所需要的资源,比如VM, Virtual Network等
parameters.json,是描述部署资源的参数,比如虚拟机的机器名,登录的用户名和密码,虚拟网络的用户名和密码等等
6.我们修改vmssimge-customImage.json里面的参数
(1)vmSku,我们修改defaultValue,设置为每个VM的Instance大小。
(2)vmssName,我们修改defaultValue,设置为VMSS的名称
(3)instanceCount,我们修改defaultValue,设置为VMSS的节点数量
(4)adminUsername,我们修改defaultValue,设置为VMSS节点登录的用户名
(5)adminPassword,我们修改defaultValue,设置为VMSS节点登录的密码
(6)existingVnetName,我们修改defaultValue,设置为现有的虚拟网络名称
(7)existingSubnetName,我们修改defaultValue,设置为现有虚拟网络的子网名称
(8)existingVnetResourceGroup,我们修改defaultValue,设置为现有资源组名称。请注意上面的资源都要保存在这个资源组里
(9)最后,我们还要修改virtualMachineProfile里面imageReference信息,把id设置为我们在步骤2的Resource ID
7.把vmssimge-customImage.json文件修改后,保存在本地PC的D盘根目录
8.安装并运行Azure PowerShell命令,具体请参考:
修改下面的参数
Add-AzureRmAccount -Environment AzureChinaCloud $subscriptionName='[输入订阅名称]' Select-AzureRmSubscription -SubscriptionName $subscriptionName $rgName='资源组名称' New-AzureRmResourceGroupDeployment -Name VMSSDeployment -ResourceGroupName $rgName -TemplateFile 'D:\vmssimge-customImage.json'
9.PowerShell执行过程中,我们可以观察到,Azure Template创建了1个VMSS。如下图:
10.点击Instances发现,虽然我们在template中设置了VMSS Instance数量为3,但是还是会创建若干个节点
11.我们稍等片刻后,VMSS 部署完成,Instance数量就会变成我们设置的数量3
12.我们查看VMSS之前的公网IP地址,名称为vmssxxxlb,就可以看到我们在Azure Image里面安装的IIS欢迎界面。图略
13.如果我们要配置自动横向扩展的话,我们可以按照下图操作
点击Scaling,增加一个横向扩展的条件,点Add a Rule。我们可以根据CPU利用率,或者网络流量(Network In, Network Out),设置自动横向扩展