你可以使用 Azure PowerShell 模块中的 cmdlet 管理可供你的 Azure 订阅使用的映像。这包括 Azure 提供的映像以及你上载的映像。对于某些映像任务,你还可以使用 Azure 管理门户,但是使用 cmdlet 时你有更多选择。本文提供了你可以用来管理映像的一些示例命令。

使用 Windows PowerShell 管理Windows Azure映像-LMLPHP备注
有关安装 Azure PowerShell 模块的说明以及该模块的链接,请参阅 How to Install and Configure Azure PowerShell(如何安装和配置 Azure PowerShell)

下面是你可以使用 Azure PowerShell 中提供的 cmdlet 执行的常用映像任务的一些示例。

Get-AzureVMImage 返回你的当前订阅中可用的映像列表。这包括你自己的映像以及 Azure 提供的映像。若要获取所有可用映像的列表,请运行以下命令:

 
 
Get-AzureVMImage

你还可以根据仅适用于 VM 映像的某个属性进行过滤,例如 DataDiskConfiguration 属性。此示例正是那样做的,它还对输出进行过滤以仅列出标签和映像名称。运行以下命令:

 
 
Get-AzureVMImage | where {(gm –InputObject $_ -Name DataDiskConfigurations) -ne $null} | Select -Property Label, ImageName

此示例将名为 MyVMToCapture 的现有虚拟机捕获为一个名为 MyVMImage 的通用 VM 映像。这将创建你可以重复使用的映像,就像模板一样,可以用来部署具有相同磁盘配置的多个虚拟机实例并同时运行它们。运行一个与此命令相似的命令,但将名称、映像名称和标签替换为你自己的值:

 
 
Save-AzureVMImage –ServiceName "myServiceName" –Name "MyVMtoCapture" –OSState "Generalized" –ImageName "MVMImage" –ImageLabel “This is my Virtual Machine Image”

如果希望捕获更适合你用作检查点而非模板的虚拟机,则可以将映像捕获为专用映像。如果你在执行可能会导致虚拟机无法使用的任务前希望保留虚拟机磁盘的副本,则此类型的映像非常有用。在那种情况下,你可以使用该映像重新部署虚拟机。运行一个与此命令相似的命令,但将名称、映像名称和标签替换为你自己的值:

 
 
Save-AzureVMImage –ServiceName "mySvc2" –Name "MyVMToCapture2" –ImageName "myFirstVMImageSP" –OSState "Specialized" -Verbose
使用 Windows PowerShell 管理Windows Azure映像-LMLPHP备注
如果要创建包括数据磁盘以及操作系统磁盘的 VM 映像,则 OSState 参数是必需的。如果不使用此参数,则该 cmdlet 会创建一个 OS 映像。参数的值根据是否已针对操作系统磁盘做了重复使用准备,指示映像是通用的还是专用的。有关详细信息,请参阅About OS Images and VM Images

 

当不再需要某个映像时,可以使用一个简单的命令将其删除。运行一个与此命令相似的命令,但将映像名称替换为你自己的值:

 
 
Remove-AzureVMImage –ImageName "MyOldVmImage"
使用 Windows PowerShell 管理Windows Azure映像-LMLPHP备注
此命令不会删除你使用要删除的映像创建的任何虚拟机。
05-08 15:19