适用于:Azure Local 2311.2 及更高版本
本文介绍如何使用 Azure CLI 准备 SUSE Linux 映像并创建 Azure 本地虚拟机(VM)。
先决条件
有权访问 Azure 本地实例。 此系统已部署、注册并连接到 Azure Arc。转到 Azure 本地资源中的 “概述 ”页。 在右侧窗格中的“服务器”选项卡上,“Azure Arc”应显示为“已连接”。
将 SUSE QCOW2 映像文件下载到本地系统。 或者,可以运行以下 PowerShell 命令来下载映像:
PS C:\temp\images> wget "https://download.opensuse.org/repositories/Cloud:/Images:/Leap_15.6/images/openSUSE-Leap-15.6.x86_64-NoCloud.qcow2" -OutFile c:\temp\images\openSUSE-Leap-15.6.x86_64-NoCloud.qcow
工作流程
若要将 QCOW2 映像转换为虚拟硬盘 v2(VHDX),并从 VHDX 映像创建 Azure 本地 VM 映像:
重要
请勿使用 Azure VM VHD 磁盘准备 Azure 本地 VM 映像。
以下部分提供了工作流中每个步骤的详细说明。
步骤 1:将 QCOW2 转换为 VHDX
下载 QCOW2 映像后,使用适用于 Windows 工具的 QEMU 磁盘映像实用工具 将映像转换为 VHDX。
适用于 Windows 工具的 QEMU 磁盘映像实用工具用于转换、创建和一致地检查各种虚拟磁盘格式。 它与 Hyper-V 和其他解决方案兼容,并且已针对 Windows Server(x64)进行优化。
若要将 QCOW2 映像文件转换为 VHDX,请执行以下步骤:
要下载用于 Windows 的 QEMU 磁盘映像实用工具,请单击下载二进制文件按钮。 或者,可以运行以下 PowerShell 命令来下载该工具:
PS C:\temp\tool> wget https://cloudbase.it/downloads/qemu-img-win-x64-2_3_0.zip -OutFile C:\temp\tool\qemu-img-win-x64-2_3_0.zip
下载该工具后,通过运行以下命令从 zip 中提取文件:
PS C:\temp\tool Expand-Archive 'c:\temp\tool\qemu-img-win-x64-2_3_0.zip'
下面是一个示例:
然后使用 QEMU 工具,通过运行以下命令,将 QCOW2 转换并保存为 VHDX:
PS C:\temp\tool\qemu-img-win-x64-2_3_0> ./qemu-img.exe convert c:\temp\images\openSUSE-Leap-15.6.x86_64-NoCloud.qcow2 -O vhdx -o subformat=dynamic c:\temp\images\openSUSE-Leap-15.6.x86_64-NoCloud.vhdx PS C:\temp\tool\qemu-img-win-x64-2_3_0>
下面是一个示例:
现在,您可以创建 VM 映像。
步骤 2:创建 SUSE VM 映像
使用 Azure 本地上的 Azure CLI 执行以下步骤,从之前创建的 VHDX 创建 VM 映像。
以管理员身份运行 PowerShell。
登录。 运行以下 cmdlet:
az login
设置订阅。 运行以下 cmdlet:
az account set --subscription <Subscription ID>
为订阅、资源组、自定义位置、位置、映像的 OS 类型、映像的名称以及映像所在的路径设置参数。 请将
< >
中的参数替换为适当的值。$subscription = "<Subscription ID>" $resource_group = "<Resource group>" $customLocation = "<Custom ___location>" $___location = "<Location for your Azure Local>" $osType = "<OS of source image>"
下表介绍了参数。
参数 说明 subscription
与 Azure 本地实例关联的订阅。 resource_group
与此映像关联的 Azure Local 实例的资源组。 ___location
Azure 本地实例的位置。 例如,位置可以是 eastus
或westreurope
。os-type
与源映像关联的操作系统。 此系统可以是 Windows 或 Linux。 使用 VM 的 VHDX 创建库映像。 使用此 VM 映像创建 Azure 本地 VM。
确保将用户存储中的 VHDX 复制到 Azure Local 的群集共享卷中。 例如,路径可能如下所示
C:\ClusterStorage\UserStorage_1\linuxvhdx
。$imagePath = "Path to user storage in CSV" $imageName = "mylinuxvmimg" $osType = "Linux" az stack-hci-vm image create --subscription $subscription -g $resource_group --custom-___location $customLocation --___location $___location --image-path $imagePath --name $imageName --debug --os-type $osType
验证映像是否已创建。