[New Portal]Windows Azure Virtual Machine (16) 使用Azure PowerShell创建Azure Virtual Machine

Windows Azure Platform 系列文章目录

   

  注:本章内容和之前的[New Portal]Windows Azure Virtual Machine (12) 在本地制作操作系统VHD并上传至Azure (2) 类似,建议读者先预习相关的内容。

 

  Update 2015-09-01

  发现一个新的命令。可以不需要导入PublishSetting文件。

  如果你使用的是国内由世纪互联运维的Azure China,请在PowerShell输入命令:

Add-AzureAccount -Environment AzureChinaCloud

  如果你使用的是国外的Azure Global,请在PowerShell输入命令:

Add-AzureAccount

 

  注意:我们在步骤3中下载的publishsettings这个文件,需要非常小心的保存。

  笔者建议在导入完毕后,直接删除这个publishsettings文件,防止被不坏好意的人重复利用。

 

=====================================这里是分隔符============================================

 

 

  之前给大家介绍很多关于Windows Azure的内容,基本上都是通过Windows Azure Management Portal来创建的。这种创建方式虽然直观简单,但是如果IT管理员需要同时创建1000台Azure服务的话,工作的代价是非常巨大的。

  其实我们可以通过Windows Azure PowerShell,通过命令行的方式来管理Windows Azure。这样在进行诸如批量创建Azure Virtual Machine的操作会变得非常简单。接下来就开始本章内容。

  1.首先请安装Windows Azure PowerShell,地址在http://go.microsoft.com/?linkid=9811175&clcid=0x409,下载完毕后通过Web Installer安装。

  2.安装完毕后,以管理员身份运行Azure PowerShell。如下图:

  [New Portal]Windows Azure Virtual Machine (16) 使用Azure PowerShell创建Azure Virtual Machine

  3.如果你是第一次运行Azure PowerShell我们要在本地创建证书文件。以便本地计算机和Azure建立可靠的安全连接。请在Azure PowerShell输入以下命令:

Get-AzurePublishSettingsFile

  4.这时候计算机会弹出新的IE窗口,导航至Windows Azure。并要求我们输入登陆Azure的用户名和密码并登陆。

  5.登陆完毕后,系统会要求我们保存扩展名为publishsettings的文件,我们保存至本地计算机的磁盘上。如下图:

  [New Portal]Windows Azure Virtual Machine (16) 使用Azure PowerShell创建Azure Virtual Machine

  6.然后我们回到Azure PowerShell窗口,继续输入以下命令:

Import-AzurePublishSettingsFile <PathToFile>

  PathToFile就是我们保存步骤5中扩展名为publishsettings的文件位置(文件路径+文件名),比如我将该文件保存至D盘根目录,我们就输入以下命令:

Import-AzurePublishSettingsFile 'D:\Windows Azure MSDN - Visual Studio Ultimate-7-2-2013-credentials.publishsettings'

  上面的命令实际上是将本地的publishsettings文件上传至Azure的Management Certificates。我们可以打开Azure Management Portal。点击Settings,并选择Management Certificates,查看上传的publishsettings文件。如下图:

  [New Portal]Windows Azure Virtual Machine (16) 使用Azure PowerShell创建Azure Virtual Machine

  7.这样,本地计算机就和Azure建立了可靠安全的链接了。在不删除上传的Management Certificates情况下,下次运行Azure PowerShell将不必再次运行上面的运行。接下来可以运行我们的命令了。

  8.我们首先运行命令:help azure,来看看Windows Azure提供了哪些命令行。我只截取了部分内容,如下图:

  [New Portal]Windows Azure Virtual Machine (16) 使用Azure PowerShell创建Azure Virtual Machine

  在上图中我们可以看到,Azure PowerShell提供了非常多的命令。比如我们之前讲解过的Add-AzureVhd等等。

  9.然后我们再运行命令:Get-AzureVMImage,这条命令是列出所有的Azure Virtual Machine镜像,其中包含Windows 和 Linux的。我只截取了部分内容,如下图:

[New Portal]Windows Azure Virtual Machine (16) 使用Azure PowerShell创建Azure Virtual Machine

   10.如果我只想获得其中某一个镜像的名称,我可以输入命令:(Get-AzureVMImage)[20].ImageName

  [New Portal]Windows Azure Virtual Machine (16) 使用Azure PowerShell创建Azure Virtual Machine

 

  上面的命令中,20表示所有Azure VM Image中第21个Image的名称,该镜像是Windows Server 2012 Datacenter。为什么不是第20个呢?是因为一般队列中,第一位的次序是0.

  这个镜像其实就是我们在Management Portal选择的Windows Server 2012 Datacenter镜像。

  [New Portal]Windows Azure Virtual Machine (16) 使用Azure PowerShell创建Azure Virtual Machine

  11.如果我想通过Azure PowerShell新建Virtual Machine

  -VM Name为LeiAzureVM

  -VM Size为ExtraSmall

  -VM Image为Windows Server 2012 Datacenter

  -Windows用户名为leizhang,密码为Pass@word1

  -DNS Name为LeiAzure

  -数据中心选择East Asia

  则这个PowerShell命令为

New-AzureVMConfig -Name 'LeiAzureVM' -InstanceSize 'ExtraSmall' -ImageName (Get-AzureVMImage)[20].ImageName ` | Add-AzureProvisioningConfig -Windows -AdminUsername 'leizhang' -Password 'Pass@word1' ` | New-AzureVM -ServiceName 'LeiAzure' -Location 'East Asia'

  运行结果,如下图:

  [New Portal]Windows Azure Virtual Machine (16) 使用Azure PowerShell创建Azure Virtual Machine

  我们在PowerShell中看到Create Succeeded,其实创建Azure VM的过程是异步的。这时候我们查看Azure Management Portal,发现VM正在被创建。如下图:  [New Portal]Windows Azure Virtual Machine (16) 使用Azure PowerShell创建Azure Virtual Machine

   因为PowerShell没办法知道后台的Azure VM什么时候创建结束,所以我们需要通过Azure Management Portal查看结果。

 

 

Update 2014-4-14

来创建个更加复杂的Azure Virtual Machine

-  DNS Name为LeiAzureVM

-  显示名称为LeiVM

-  VM Size为A7 (8Core/56GB)

-  VM Image为Windows Server 2012 DataCenter 201403.01-en.us

-  Windows用户名为leizhang,密码为Pass@word1

-  storage account为leizhangstorage

-  地缘组为EastAsiaGroup

-  虚拟网络为 leizhangVNet ,子网为Subnet-1

 

首先我们指定默认的存储,在Powershell输入以下命令:

 

Set-AzureSubscription -SubscriptionName 'Visual Studio Ultimate with MSDN' -CurrentStorageAccount 'leizhangstorage'

 

然后我们输入以下命令:

 

[New Portal]Windows Azure Virtual Machine (16) 使用Azure PowerShell创建Azure Virtual Machine
$vm = New-AzureVMConfig -Name 'leiVM' -InstanceSize A7 -ImageName (Get-AzureVMImage)[46].ImageName 

$vm | Add-AzureProvisioningConfig `  -Windows ` -AdminUsername 'leizhang' `  -Password 'Pass@word1'

$vm | Set-AzureSubnet -SubnetNames 'Subnet-1'

$vm | New-AzureVM -ServiceName 'LeiAzureVM' -AffinityGroup 'EastAsiaGroup' -VNetName 'leizhangVNet' 
[New Portal]Windows Azure Virtual Machine (16) 使用Azure PowerShell创建Azure Virtual Machine

 

执行结果,如下图:

[New Portal]Windows Azure Virtual Machine (16) 使用Azure PowerShell创建Azure Virtual Machine


                [New Portal]Windows Azure Virtual Machine (16) 使用Azure PowerShell创建Azure Virtual Machine                               [New Portal]Windows Azure Virtual Machine (16) 使用Azure PowerShell创建Azure Virtual Machine

 


本文转自Lei Zhang的博客博客园博客,原文链接:http://www.cnblogs.com/threestone/p/3186226.html,如需转载请自行联系原作者
上一篇:Hera-将小程序打包成移动APP的开发框架


下一篇:『0013』 - Solidity Types - 固定大小字节数组(Fixed-size byte arrays)