为 Azure 本地虚拟机准备 CentOS Linux 映像(预览版)
注意
本文引用了 CentOS,这是一种已到达生命周期结束(EOL)的 Linux 分发版。 考虑使用 CentOS 并相应地进行计划。 有关详细信息,请参阅 CentOS 生命周期结束指南。
适用于:Azure 本地版本 23H2
本文介绍如何准备 CentOS Linux 映像,以便在本地 Azure 上创建虚拟机(VM)。 使用 Azure CLI 创建 VM 映像。
先决条件
在开始之前,请满足以下先决条件:
- 有权访问已部署、注册并连接到 Azure Arc 的 Azure 本地实例。转到 Azure 本地资源中的“概述 ”页。 在右侧窗格的“服务器”选项卡上,Azure Arc 应显示为“已连接”。
- 在 Azure 本地实例上下载最新支持的 ISO 映像 。 在这里,我们下载了 CentOS-7-x86_64-Everything-2207-02.iso 文件。 使用此映像创建 VM 映像。
Workflow
准备 CentOS 映像并从该映像创建 VM 映像:
以下部分提供了工作流中每个步骤的详细说明。
从 CentOS 映像创建 VM 映像
重要
- 不要使用 Azure 虚拟机 VHD 磁盘为 Azure 本地准备 VM 映像。
- 如果要在 VM 上启用来宾管理,建议准备 CentOS 映像。
按照 Azure 本地部署中的这些步骤,使用 Azure CLI 创建 VM 映像。
步骤 1:创建 CentOS VM
若要使用下载的 CentOS 映像预配 VM,请执行以下操作:
使用下载的映像创建具有以下规范的 VM:
为 VM 提供一个易记名称。
在此处使用 VHDX 映像时,请为 VM 指定第 2 代。
为启动内存分配 4096。
选择 VM 用于连接的虚拟网络交换机。
接受“连接虚拟硬盘”页上的默认值。
从可启动映像中选择“安装操作系统”。 指向之前下载的 ISO。
有关分步说明,请参阅 使用 Hyper-V 管理器预配 VM。
使用 UEFI 证书保护启动 VM:
- 创建 VM 后,它将显示在 Hyper-V 管理器中。 选择 VM,右键单击它,然后选择“ 设置”。
- 在左窗格中,选择“ 安全 ”选项卡。 然后在“安全启动” 下,从“模板 ”下拉列表中选择 Microsoft UEFI 证书颁发机构。
- 选择“确定”以保存更改。
从 Hyper-V 管理器中选择 VM,然后启动 VM。 VM 从提供的 ISO 映像启动。
步骤 2:连接到 VM 并安装 CentOS
运行 VM 后,请执行以下步骤:
从 Hyper-V 管理器中选择 VM。 右键单击它,然后在打开的菜单上,选择“ 连接”。
从启动菜单中选择“安装 CentOS 7”选项。
选择语言,然后选择“ 继续”。
选择安装目标,然后选择“ 完成”。
选择 “网络和主机名”。
为网络接口启用 ON 开关,然后选择“完成”。
选择 “用户”设置 并设置根密码。 输入密码,确认密码,然后选择“ 完成”。
选择“ 完成配置”。
选择“ 开始安装”。 安装完成后,选择“重新启动”以重新启动 VM。
步骤 3:配置 VM
配置 VM:
使用在 CentOS 安装过程中创建的根密码连接并登录到 VM。
请确保
cloud-init
未安装。sudo yum list installed | grep cloud-init
安装和
cloud-init
验证已安装的版本cloud-init
。sudo yum install cloud-init cloud-init --version
步骤 4:清理剩余配置
从 VM 中删除特定于计算机的文件和数据,以便创建干净的 VM 映像,而无需任何历史记录或默认配置。 按照 Azure 本地版中的这些步骤清理剩余配置。
清理
cloud-init
默认配置。sudo yum clean all sudo cloud-init clean
清理日志和缓存。
sudo rm -rf /var/lib/cloud/ /var/log/* /tmp/*
删除 bash 历史记录。
rm -f ~/.bash_history export HISTSIZE=0 logout
关闭 VM。 在 Hyper-V 管理器中,转到“关闭操作>”。
导出 VHDX 或从 VM 复制 VHDX。 可以使用以下方法:
- 将 VHDX 复制到 Azure 本地群集共享卷上的用户存储。
- 或者,将 VHDX 作为页 blob 复制到Azure 存储帐户中的容器。
步骤 5:创建 VM 映像
按照 Azure 本地版中的这些步骤从之前创建的 VHDX 创建 VM 映像。
使用 Azure CLI 创建 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 本地实例的资源组。 Location
Azure 本地实例的位置。 例如,位置可以是 eastus
或westreurope
。OsType
与源映像关联的操作系统。 此系统可以是 Windows 或 Linux。 使用 VM 的 VHDX 创建库映像。 使用此 VM 映像在 Azure 本地创建 Azure Arc 虚拟机。
请确保在 Azure 本地群集共享卷中的用户存储中复制 VHDX。 例如,路径可能如下所示
C:\ClusterStorage\UserStorage_1\linuxvhdx
。$ImagePath = "Path to user storage in CSV" $ImageName = "mylinuxvmimg" az stack-hci-vm image create --subscription $subscription -g $resource_group --custom-location $CustomLocation --location $location --image-path $ImagePath --name $ImageName --debug --os-type 'Linux'
验证映像是否已创建。