Export-AzureVM未创建该文件

时间:2013-05-29 18:21:16

标签: powershell azure azure-virtual-machine

我无法使Export-AzureVM正常工作。

这是我的输出:


PS C:\ Users \ jason_000 \ documents \ azuresp2013> \出口

VERBOSE:上午9:44:23 - 开始操作:获取部署

VERBOSE:上午9:44:24 - 开始操作:获取部署

VERBOSE:上午9:44:24 - 开始操作:获取部署

VERBOSE:上午9:44:25 - 开始操作:获取部署

VERBOSE:上午9:44:26 - 开始操作:获取部署

VERBOSE:上午9:44:27 - 开始操作:获取部署


我的export.ps1脚本如下:

Stop-AzureVM -ServiceName vmsp01-jdevsp28102656 -Name vmsp01
$ExportPath = "C:\ExportVMs\ExportAzureVM-vmsp01.xml" 
Export-AzureVM -ServiceName vmsp01-jdevsp28102656 -name vmsp01 -Path $ExportPath 
Stop-AzureVM -ServiceName vmdb01-jdevsp28102656 -Name vmdb01 
$ExportPath = "C:\ExportVMs\ExportAzureVM-vmdb01.xml" 
Export-AzureVM -ServiceName vmdb01-jdevsp28102656 -name vmdb01 -Path $ExportPath 
Stop-AzureVM -ServiceName vmad01-jdevsp28102656 -Name vmad01 
$ExportPath = "C:\ExportVMs\ExportAzureVM-vmad01.xml" 
Export-AzureVM -ServiceName vmad01-jdevsp28102656 -name vmad01 -Path $ExportPath 

文件路径C:\ ExportVMs存在。

我的虚拟机名称是vmad01,vmdb01和vmsp01

我的帐户中有3个云服务,其名称为vmad01-jdevsp28102656,vmdb01-jdevsp28102656和vmsp01-jdevsp28102656

脚本运行速度非常快,只需回退到提示符,但完成后C:\ ExportVMs文件夹中没有任何内容。

感谢您的时间,

杰森

2 个答案:

答案 0 :(得分:1)

这是完整脚本的片段还是全部?在执行命令之前,您需要确保首先进行设置以连接到您的订阅。 (并在此之前导入Azure模块)

如:

Import-Module Azure

# Connect to Azure subscription

$subsciprtionName = "<Name>"
$subscriptionID = "<Subscription ID>"
$certThumbprint = "<Certificate thumbprint>"
$storateAccountName = "<Storage account name>"

$cert = Get-Item Cert:\CurrentUser\My\$certThumbprint
Set-AzureSubscription -SubscriptionName $subsciprtionName -SubscriptionId $subscriptionID -Certificate $cert
Select-AzureSubscription -SubscriptionName $subsciprtionName
Set-AzureSubscription -SubscriptionName $subsciprtionName -CurrentStorageAccount $storateAccountName

我在我的设置上测试了一下这个。你应该通过OperationStatus Succeeded得到一个结果。输出是一个大小约为2KB的XML文件,用于我的测试VM(此命令仅导出VM配置,而不是磁盘本身)。因此,在使用此命令导出其配置之前,无需关闭VM。我的结果:

PS C:\Users\Noah> Export-AzureVM -Path C:\Images\WEB1-state.xml -ServiceName perceptenWEB1 -Name WEB1


DeploymentName        : WEB1
Name                  : WEB1
Label                 : 
VM                    : Microsoft.WindowsAzure.Management.ServiceManagement.Model.PersistentVM
InstanceStatus        : StoppedVM
IpAddress             : 10.215.74.54
InstanceStateDetails  : 
PowerState            : Stopped
InstanceErrorCode     : 
InstanceFaultDomain   : 0
InstanceName          : WEB1
InstanceUpgradeDomain : 0
InstanceSize          : Small
AvailabilitySetName   : 
DNSName               : http://perceptenweb1.cloudapp.net/
ServiceName           : perceptenWEB1
OperationDescription  : Export-AzureVM
OperationId           : 584b719c-c1a9-4747-a41b-2609f77de2e8
OperationStatus       : Succeeded

希望有所帮助。

答案 1 :(得分:1)

感谢您的协助。事实证明,我一直在使用错误的服务名称。

对于其他任何人来说,要检查你是否也这样做 -

运行不带参数的Get-AzureVM以验证它是否以此方式返回VM,并确认您要导出的VM的ServiceName和Name。

Get-AzureVM

然后运行Get-AzureVM以显示特定的VM:

Get-AzureVM -ServiceName -Name

如果可行,请将其导入Export-AzureVM:

Get-AzureVM -ServiceName -Name | Export-AzureVM -Path C:\ ExportVMs \ _vm.xml