Azure PowerShell批量创建Azure虚拟机
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Azure PowerShell批量创建Azure虚拟机相关的知识,希望对你有一定的参考价值。
在我们工作过程当中,可能会需要创建多台相同配置的虚拟机。我们是不是只能通过Portal 页面一台台创建呢?答案是否定的,我们可以通过Azure PowerShell脚本来批量创建虚拟机。接下来我将介绍通过Powershell来批量创建Azure虚拟机。
以下分割线内的内容是要powershell脚本用来批量创建虚拟机的内容
---------------------------------------分割线-----------------------------------------------
# 指定订阅名称
$subscriptionName="huangcj 测试";
# 指定用来保存虚拟机VHD的存储
$storageAccount="hcjtest";
# 创建一个数组用来保存虚拟机创建的配置信息
$vms=New-Object System.Collections.ArrayList;
# 获取虚拟机镜像列表
$images=Get-AzureVMImage;
# 获取第43个镜像的名称(Win Server 08 R2)
$imageName=$images[43].ImageName;
# 云服务的名称
$cloudServiceName="hcjtest";
# 设置默认的订阅以及默认订阅关联的存储账号
Select-AzureSubscription –SubscriptionName $subscriptionName –Default
Set-AzureSubscription -SubscriptionName $subscriptionName -CurrentStorageAccountName $storageAccount
# 执行循环,生成虚拟机配置数组,计数从0开始,到19结束,就会创建出Hcjse0,Hcjser1,Hcjser2....Hcjser19这些虚拟机
for($i=0;$i –le 19;$i++)
{
#Hcjser是创建的虚拟机名称的前缀
$vmName="Hcjser"+$i;
# 创建虚拟机的配置信息(虚拟机名称,虚拟机大小Small,虚拟机镜像名称,用户名,密码,虚拟网络子网名等等(可省略))
# 可选的虚拟机InstanceSize有:ExtraSmall, Small, Medium, Large, ExtraLarge, A5, A6, A7, A8, A9, Basic_A0, Basic_A1, Basic_A2, Basic_A3, Basic_A4, Standard_D1, Standard_D2, Standard_D3, Standard_D4, Standard_D11, Standard_D12, Standard_D13, Standard_D14
$vm=New-AzureVMConfig –Name $vmName –InstanceSize Small –ImageName $imageName | add-AzureProvisioningConfig -Windows -AdminUsername huangcj -Password 1qaz2wsxE -TimeZone "China Standard Time" –DisableAutomaticUpdates | Set-AzureSubnet -SubnetNames ‘Subnet-1‘;
# 将配置信息添加到数组中用于最后一步命令
$vms.add($vm);
}
# 批量创建虚拟机,通过-VMs参数将之前创建好的虚拟机配置数组作为参数,并指定虚拟网络的名称以及地理位置参数和云服务名称
New-AzureVM -Location "China East" –ServiceName $cloudServiceName –VMs $vms -VNetName ‘hcjtestnet‘
--------------------------------分割线------------------------------------------------------
将以上分割线内的内容复制到记事本,修改相关的参数为你自己的实际参数值,保存为.ps1格式的文件。
运行Azure Powershell,然后输入"& " + <刚刚保存的ps1脚本的文件路径(可以直接将脚本拖拽到Powershell界面中>,然后输入回车执行即可,下面是执行效果的截图:
执行完成后,我们到Azure Portal管理页面去检查下
可以看到已经创建好20台虚拟机。
以上是关于Azure PowerShell批量创建Azure虚拟机的主要内容,如果未能解决你的问题,请参考以下文章
Azure PowerShell (14) 批量导出Azure ASM ACL和ARM NSG配置信息
在世纪互联版的Microsoft Azure上做windows虚拟机的批量部署--用powershell做部署
如何使用 Powershell 中的快照创建 Azure 托管磁盘
使用 Azure Devops 任务或 PowerShell 创建/更新 Azure WebApp 的路径映射