天天看点

windows azure使用powershell批量创建虚拟机

这里向大家介绍下如何使用powershell批量创建vm虚拟机,本博文中,我打算用powershell批量创建100台VM。

首先,从官网下载页面,下载并安装Windows Azure PowerShell:http://www.windowsazure.cn/zh-cn/downloads/#cmd-line-tools

安装完毕后以管理员身份运行,右键点击PowerShell图标然后选择以管理员身份运行执行命令Get-AzurePublishSettingsFile-Environment "AzureChinaCloud",通过打开的页面下载您的WindowsAzure Subscription的发布配置文件;(这些在之前的博文中都有详细描述)

windows azure使用powershell批量创建虚拟机

在PowerShell中执行Import-AzurePublishSettingsFile“发布配置文件本地存放路径”

windows azure使用powershell批量创建虚拟机

操作成功后,新建一个txt文档,将下面的代码拷贝进去(请将高亮的信息替换为您自己的部署信息),将后缀名修改为.ps1,例如我们将文件保存为vm.ps1

# 指定订阅名称

$subscriptionName="Internal-002";

# 指定用来保存虚拟机VHD的存储

$storageAccount="danielstorage";

# 创建一个数组用来保存虚拟机创建的配置信息

$vms=New-ObjectSystem.Collections.ArrayList;

# 获取虚拟机镜像列表

$p_w_picpaths=Get-AzureVMImage;

# 获取第43个镜像的名称(Win Server 08 R2)

$p_w_picpathName=$p_w_picpaths[43].ImageName;

# 云服务的名称

$cloudServiceName="DanielVMBatchCreationTest";

# 设置默认的订阅以及默认订阅关联的存储账号

Select-AzureSubscription–SubscriptionName$subscriptionName–Default

Set-AzureSubscription-SubscriptionName$subscriptionName-CurrentStorageAccountName$storageAccount

# 执行循环,生成虚拟机配置数组,计数从2开始,到19结束,就会创建出DanBatchDep2,DanBatchDep3,DanBatchDep4....DanBatchDep19这些虚拟机

for($i=1;$i–le19;$i++)

{

    #DanBatchDep是创建的虚拟机名称的前缀

    $vmName="DanBatchDep"+$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–InstanceSizeSmall–ImageName$p_w_picpathName|add-AzureProvisioningConfig-Windows-AdminUsernamedaniel-Password1qaz2wsxE-TimeZone"China Standard Time"–DisableAutomaticUpdates|Set-AzureSubnet-SubnetNames'Subnet-1';

    # 将配置信息添加到数组中用于最后一步命令

    $vms.add($vm);

}

# 批量创建虚拟机,通过-VMs参数将之前创建好的虚拟机配置数组作为参数,并指定虚拟网络的名称以及地理位置参数和云服务名称

New-AzureVM-Location"China East"–ServiceName$cloudServiceName–VMs$vms-VNetName'DanielBatchDeployTest'

保存完成后,运行Azure Powershell,然后输入"& " +<刚刚保存的ps1脚本的文件路径(可以直接将脚本拖拽到Powershell界面中>,然后输入回车执行即可,下面是执行效果的截图:

windows azure使用powershell批量创建虚拟机
windows azure使用powershell批量创建虚拟机
windows azure使用powershell批量创建虚拟机