0

我无法让 Export-AzureVM 工作。

这是我的输出:


PS C:\Users\jason_000\documents\azuresp2013> .\export

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

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

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

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

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

详细:上午 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 文件夹中没有任何内容。

谢谢你的时间,

杰森

4

2 回答 2

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 的结果。对于我的测试 VM,输出是一个大小约为 2KB 的 XML 文件(此命令仅导出 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

希望有帮助。

于 2013-05-30T01:21:24.007 回答
1

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

对于其他任何出现的人,检查你是否也在做同样的事情-

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

获取 AzureVM

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

获取 AzureVM -ServiceName -Name

如果可行,请将其通过管道传输到 Export-AzureVM:

获取 AzureVM -ServiceName -Name | 导出-AzureVM-路径 C:\ExportVMs\vm.xml

于 2013-05-30T14:52:52.253 回答