虚拟机预发布测试

本文中的 Azure 市场作用范围均指中国大陆,“镜像”或“映像”表示同一含义。

1. 设置 VHD 文件的 URI(统一资源标识符)的访问权限

在镜像发布到 Azure 市场的时候,一个重要的字段 “操作系统磁盘” 需要填写 VHD 文件所在的 URI,Azure市场需要在发布和认证过程中访问这些 VHD,这个 URI 必须位于 Azure blob 存储中,因此需要设置适当的访问权限。

为了获得 VHD 文件的访问权限,应该设置 VHD 的共享访问签名(SAS)的 URI 地址,或者将 URI 地址所在的存储容器的访问策略属性设置为 "Blob" 或 "容器"。

SAS URI 设置请参考 "方法一:从 Azure 入口获取 VM 镜像共享访问签名(SAS) URL" 或 "方法二:从存储资源管理器获取 SAS URL"。

2. 虚拟机预发布的测试

本节为您提供了可下载的自动化测试脚本,用于帮助您测试从 VHD 文件自动创建 VM。

如果您的 VHD 文件还没有存放在 Azure Storage 中,将 VHD 上传到 Azure 并创建虚拟机镜像的脚本请参阅 将 VHD 上传到 Azure 并创建新的 VM 的示例脚本(为方便测试,可以直接下载下面的 PowerShell脚本对 VHD 文件进行测试。 注:下载的 PowerShell 脚本如果不能执行,可能的原因是由于 Windows 安全隔离导致,可以在脚本文件的属性页中,选择“unblock”,将文件解锁,然后再执行)。

将脚本下载下来后,重命名文件名。如:createvm.ps1。

自动创建一台虚拟机

.\createvm.ps1                  #createvm.ps1 文件所在的路径
-resourcegroup <string>         #资源组名称
-vhduri <string>                #vhd sas url 地址
[-size <String>]                #虚拟机大小。缺省:Standard_D1_v2
[-osLinuxOrWindows <String>]    #操作系统类型 Linux 或 Windows。 缺省:Linux  
[-ports <String>]               #端口。 缺省:linux:22,443,80, windows:3389,443,80
[-osusername <String>]          #用户名。 缺省:imtestuser
[-ospassword <String>]          #密码。 缺省:a@968^!Xm
[-location <String>]            #区域。 缺省:"China North"

实例 1:

.\createvm.ps1 `
-resourcegroup rgname `
-vhduri "https://salant.blob.core.chinacloudapi.cn/container/FinalVersionOfVHD.vhd?sp=r&st=2019-07-30T09:47:29Z&se=2019-08-09T17:47:29Z&spr=https&sv=2018-03-28&sig=oEPUgVziv60Xp1yuLr3DkxIIOEGkwjaZ8g7Wr2OTgb4%3D&sr=b"

实例 2:

.\createvm.ps1 `
-resourcegroup rgname `
-size Standard_D2_v2 `
-osLinuxOrWindows Windows `
-ports 3389,80 `
-osuername testuser `
-ospassword a@968^!Xm `
-location "China North 2"  `
-vhduri "https://salant.blob.core.chinacloudapi.cn/container/FinalVersionOfVHD.vhd?sp=r&st=2019-07-30T09:47:29Z&se=2019-08-09T17:47:29Z&spr=https&sv=2018-03-28&sig=oEPUgVziv60Xp1yuLr3DkxIIOEGkwjaZ8g7Wr2OTgb4%3D&sr=b"

createvm.ps1 这个脚本是拷贝已经存在的 VHD 文件,然后,在 Azure 门户 中自动新建一台虚拟机镜像。若是成功创建出虚拟机镜像,说明 VHD 镜像文件制作完成了,接下来可以在 Azure 市场服务商门户 中发布虚拟机镜像。(注:测试完成后,测试中创建的虚拟机所在的资源组需要手动删除)

后续步骤

反馈