1.在New Region创建一台Windows Server 2012 R2的机器,大小配置:D2s v3
2.部署应用环境(测试时,只在C盘下添加了文件夹fold1,文件file1;在数据磁盘F盘添加了文件夹fold2,文件file2;关闭了IE增强的安全配置)
3.按照正常的流程捕获虚拟机
4.通过如下Powershell脚本批量创建Windows托管磁盘虚拟机
#设置初始变量 $cred = Get-Credential $rgName = "yourResourceGroupName" $location = "Chinaeast" $imageName = "yourCustomImageName" $storageType = 'Standard_LRS' $myVnet = "yourVirtualNetwork" $nsgName = "yourNetworkSecurityGroup" $vmSize = "Standard_A3" #读取镜像文件、虚拟网络、网络安全组信息 $image = Get-AzureRMImage -ImageName $imageName -ResourceGroupName $rgName $vnet = Get-AzureRmVirtualNetwork -Name $myVnet -ResourceGroupName $rgName $nsg = Get-AzureRmNetworkSecurityGroup -ResourceGroupName $rgName -Name $nsgName $AvailabilitySet = Get-AzureRmAvailabilitySet -ResourceGroupName $rgName -Name $nsgName #使用循环创建VM,默认数量为30(可调整) for($i=1;$i –le 30;$i++) { #设置虚拟机名称变量 $vmName = "testVM" +$i; $nicName = "$vmName-Nic" ; $dataDiskName = "$vmName-DataDisk01" ; $ipName = "$vmName-Pip"; #建立虚拟网卡 $pip = New-AzureRmPublicIpAddress -Name $ipName -ResourceGroupName $rgName -Location $location -AllocationMethod Dynamic ; $nic = New-AzureRmNetworkInterface -Name $nicName -ResourceGroupName $rgName -Location $location -SubnetId $vnet.Subnets[0].Id -PublicIpAddressId $pip.Id -NetworkSecurityGroupId $nsg.Id ; #设置并建立300GB的附加数据磁盘(大小可调整) $diskConfig = New-AzureRmDiskConfig -SkuName $storageType -Location $location -CreateOption Empty -DiskSizeGB 300 ; $dataDisk1 = New-AzureRmDisk -DiskName $dataDiskName -Disk $diskConfig -ResourceGroupName $rgName ; #建立VM配置文件(操作系统为 Windwos 系统磁盘为128GB) $vm = New-AzureRmVMConfig -VMName $vmName -VMSize $vmSize -AvailabilitySetID $AvailabilitySet.Id ; $vm = Set-AzureRmVMSourceImage -VM $vm -Id $image.Id ; $vm = Set-AzureRmVMOSDisk -VM $vm -StorageAccountType $storageType -DiskSizeInGB 128 -CreateOption FromImage -Caching ReadWrite ; $vm = Set-AzureRmVMOperatingSystem -VM $vm -Windows -ComputerName $vmName -Credential $cred -ProvisionVMAgent -EnableAutoUpdate ; $vm = Add-AzureRmVMNetworkInterface -VM $vm -Id $nic.Id ; $vm = Add-AzureRmVMDataDisk -VM $vm -Name $dataDiskName -CreateOption Attach -ManagedDiskId $dataDisk1.Id -Lun 1 ; #建立VM New-AzureRmVM -VM $vm -ResourceGroupName $rgName -Location $location -AsJob ; #创建时加-AsJob会在后台创建,如果不加会等待很长时间,测试时大概建立一台需要10分钟左右,加上-AsJob资源也是依次出现 }
5.实测情况说明如下
备注:
a.如果客户特殊要求:不需要配置公网IP,去掉参数"-PublicIpAddressId $pip.Id"即可
b.如果创建的为Linux虚拟机,只需要将参数"-Windows"修改为"-Linux"
c.存储账号的类型有Standard_LRS/Standard_GRS/Standard_RA-GRS/Premium_LRS
d.可以通过命令:Get-AzureRmVMSize,获取指定区域的虚拟机的型号大小
I hear and I forget. I see and I remeber. I do and I understand!