Azure VMSS (3) 修改VM Template並創建VMSS
《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進行配置
https://github.com/leizhang1984/AzureChinaPowerShell/blob/master/ARM/14VMSS-CustomImag/vmssimge-customImage.json
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),設置自動橫向擴展
Azure VMSS (3) 修改VM Template並創建VMSS