使用经过批准的基础映像创建虚拟机
本文介绍如何使用 Azure 来创建一个包含预配置的经过认可的操作系统的虚拟机 (VM)。 如果此内容与你的解决方案不兼容,则可以使用经过批准的操作系统来创建并配置本地 VM。
注意
在开始此过程之前,请先查看 Azure VM 产品/服务的技术要求,包括虚拟硬盘 (VHD) 要求。
选择经过批准的基础映像
请选择下面的 Windows 或 Linux 映像之一作为基础映像。
Windows
- Windows Server
- SQL Server 2019、2014、2012
Linux
Azure 提供一系列已批准的 Linux 发行版。 有关最新列表,请参阅 Azure 认可的 Linux 分发版。
在 Azure 门户中创建 VM
- 登录 Azure 门户。
- 选择“虚拟机”。
- 从下拉菜单中选择“+ 创建”和“+ 虚拟机”以打开“创建虚拟机”屏幕。
- 从下拉列表中选择映像,或选择“查看所有映像”,以搜索或浏览所有可用的虚拟机映像。 还可以根据所选的映像来配置映像的 VM 代系。
- 选择要部署的 VM 的大小。
- 提供创建 VM 所需的其他详细信息。
- 选择“查看 + 创建”可查看选择。 在出现“已通过验证”消息时,选择“创建” 。
Azure 随即开始预配所指定的虚拟机。 请通过选择左侧菜单中的“虚拟机”选项卡来跟踪预配进度。 在创建之后,虚拟机的状态会更改为“正在运行”。
配置 VM
本部分介绍如何对 Azure VM 进行大小调整、更新和通用化。 必须执行这些步骤才能准备好要在 Azure 市场部署的 VM。
连接到 VM
请参阅以下文档,了解如何连接到 Windows 或 Linux VM。
安装最新的更新
操作系统 VM 的基础映像必须包含截至发布日期为止的最新更新。 在发布之前,请确保已使用所有最新的安全和维护修补程序更新 OS 和所有已安装的服务。
- 对于 Windows Server,请运行“检查更新”命令。
- 对于 Linux 分发版,通常可以通过命令行工具或图形实用工具来下载和安装更新。 例如,Ubuntu Linux 提供 apt-get 命令和更新管理器工具用于更新 OS。
执行附加的安全检查
为 Azure 市场中的解决方案映像保持高级别的安全性。 有关安全配置和过程的清单,请参阅适用于 Azure 市场映像的安全建议。
自定义 VM 映像
现在,请安装所需的软件并在 VM 上进行任何自定义配置更改(包括部署后需要运行的任何计划任务),使解决方案能够正常工作。 进行自定义更改时请注意以下事项:
- 对于一次性运行的计划任务,在该任务成功完成后,它应删除自身。
- 配置不应依赖于 C 或 D 以外的驱动器,因为只有这两个驱动器始终存在(驱动器 C 是操作系统磁盘,驱动器 D 是临时本地磁盘)。
- 对解决方案进行任何必要的技术配置更改。 稍后,你将在合作伙伴中心的“技术配置”页的“属性”部分,标记你在 VM 上完成的配置。 这会根据目前所做的配置更改向客户显示支持的方案。 在发布期间从以下技术配置属性中进行选择:
- 支持备份
- 支持加速网络
- 支持 cloud-init 配置
- 支持扩展
- 是网络虚拟设备
- 远程桌面或 SSH 已禁用
- 需要自定义 ARM 模板
有关 Linux 自定义项的详细信息,请参阅适用于 Linux 的虚拟机扩展和功能。
通用化映像
Azure 市场中的所有映像必须可采用一般形式重复使用。 若要实现这种可重用性,必须将操作系统 VHD 通用化,此操作会从 VM 中删除所有特定于实例的标识符以及软件驱动程序。
对于 Windows
Windows OS 磁盘已使用 sysprep 通用化。 如果后来更新或重新配置了 OS,则必须再次运行 sysprep。
警告
运行 sysprep 后,由于更新可能自动运行,因此,请在部署 VM 之前将其关闭。 此关闭操作可避免后续更新对操作系统或安装的服务做出特定于实例的更改。 有关运行 sysprep 的详细信息,请参阅通用化 Windows VM。
备注
如果在创建要捕获的 VM 的订阅上启用了 Microsoft Defender for Cloud (Azure Defender),并且不希望从此映像创建的任何 VM 在 Defender for Endpoint 门户中注册,请确保在该订阅或 VM 本身上禁用 Microsoft Defender for Cloud。 如果未禁用该功能,则从此映像创建的任何 VM 都将在 Defender for Endpoint 门户中注册,即使 VM 部署到没有 Microsoft Defender for Cloud 的其他租户也是如此。
对于 Linux
- 删除 Azure Linux 代理。
- 使用 SSH 客户端连接到 Linux VM。
- 在 SSH 窗口中,输入此命令:
sudo waagent -deprovision+user
。 - 键入 Y 以继续操作(可将“-force”参数添加到前一个命令,以避免确认步骤) 。
- 该命令完成后,请输入“退出”以关闭 SSH 客户端。
- 停止虚拟机。
- 在 Azure 门户,选择资源组 (RG) 并取消分配 VM。
- VM 现已通用化,你可以使用此 VM 磁盘创建新的 VM。
捕获映像
注意
包含 Azure Compute Gallery 的 Azure 订阅必须与发布者帐户位于同一租户才能发布。 此外,发布者帐户必须至少拥有对包含 Azure Compute Gallery 的订阅的参与者访问权限。
VM 准备就绪后,可以在 Azure Compute Gallery(以前称为“共享映像库”)中捕获它。 请按照以下步骤进行捕获:
- 在 Azure 门户中转到你的虚拟机页。
- 选择“捕获”。
- 在“将映像共享到 Azure Compute Gallery”下,选择“是,将其作为映像版本共享到库”。
- 在“操作系统状态”下选择“通用化”。
- 选择目标映像库,或“新建”。
- 选择目标映像定义,或“新建”。
- 提供映像的版本号。
- 选择“查看 + 创建”可查看选择。
- 传递验证后,选择“创建”。
设置适当的权限
如果合作伙伴中心帐户是托管 Azure Compute Gallery 的订阅的所有者,则不需要进一步获取权限。 如果不确定,请参考这些步骤来确认是否设置了正确的权限。 如果只有订阅的读取访问权限,请使用以下两个选项中的一个。
注意
如果你收到一个错误,指出我们在发布时或在合作伙伴中心内从计算库中选择映像版本时无法访问你的库映像,则你需要按照以下步骤操作。
选项 1 - 要求所有者授予所有者权限
所有者授予所有者权限的步骤如下:
- 登录到包含你的 Azure 计算库和关联映像的 Azure 订阅。
- 搜索 Azure 计算库并选择托管着你的映像的库。
- 在 Azure 计算库的“概述”页中,单击指向你的订阅的链接。
- 在左侧窗格中选择“访问控制”(IAM)。
- 转到“角色分配”选项卡。
- 单击“+添加”->“添加角色分配”。
- 依次选择“添加”、“添加角色分配”。
- 对于“角色”,选择“所有者”,然后单击“下一步”。
- 对于“将访问权限分配给”,请选择“用户、组或服务主体”。
- 对于“成员”,单击“+选择成员”,然后添加将通过合作伙伴中心发布映像的人员或组的电子邮件。
- 选择“下一步”->“查看 + 分配”。
提示
如果你在通过 Azure 门户授予权限时遇到问题,请尝试下面详述的选项 2。
选项 2 - 运行命令
要求所有者运行其中任一命令。 无论使用哪个命令,请务必指定包含你的 Azure 计算库的订阅的 SusbscriptionId。
az login
az provider register --namespace Microsoft.PartnerCenterIngestion --subscription {subscriptionId}
Connect-AzAccount -Environment AzureChinaCloud
Select-AzSubscription -SubscriptionId {subscriptionId}
Register-AzResourceProvider -ProviderNamespace Microsoft.PartnerCenterIngestion
确认你的权限
在 Azure CLI 中运行以下命令,验证是否已正确设置你的权限。
az login
az provider show --namespace Microsoft.PartnerCenterIngestion --subscription {subscriptionId}
运行上述命令后,请确保 RegistrationState 显示“Registered”。
"namespace": "Microsoft.PartnerCenterIngestion",
"registrationPolicy": "RegistrationRequired",
"registrationState": "Registered",
后续步骤
- 建议的后续步骤:测试 VM 映像,以确保它满足 Azure 市场发布要求。 此为可选项。
- 如果你不想测试 VM 映像,请登录到合作伙伴中心来发布映像。
- 如果在创建新的基于 Azure 的 VHD 时遇到困难,请参阅 Azure 市场的 VM 常见问题解答。