使用门户创建 Azure Compute Gallery

适用于:✔️ Linux VM ✔️ 灵活规模集 适用于:✔️ ✔️ 统一规模集

Azure Compute Gallery 简化了整个组织中的自定义映像共享。 自定义映像类似于市场映像,不同的是自定义映像的创建者是自己。 自定义映像可用于启动部署任务,例如预加载应用程序、应用程序配置和其他 OS 配置。

使用 Azure Compute Gallery 可以在 Microsoft Entra 租户内在同一区域或跨区域与组织中的其他用户共享自定义 VM 映像。 选择要共享哪些映像,要在哪些区域中共享,以及希望与谁共享它们。 可以创建多个库,以便可以按逻辑方式对映像进行分组。

库是顶级资源,它提供完整的 Azure 基于角色的访问控制 (Azure RBAC)。 你可以控制映像的版本,并且可以选择将每个映像版本复制到一组不同的 Azure 区域。 库仅适用于托管映像。

Azure Compute Gallery 功能具有多种资源类型。 我们将在本文中使用或生成这些资源类型:

资源 说明
映像源 这是可用于在库中创建“映像版本”的资源。 映像源可以是现有的 Azure VM(通用或专用)、托管映像、快照或其他库中的映像版本。
与 Azure 市场一样,库是用于管理及共享映像和 VM 应用程序的存储库,但你可以控制谁有权访问该库。
映像定义 映像定义在库中创建,携带有关该映像以及在内部使用该映像的要求的信息。 这包括了该映像是 Windows 还是 Linux 映像、发行说明以及最低和最高内存要求。 它是某种映像类型的定义。
映像版本 使用库时,将使用映像版本来创建 VM。 可根据环境的需要创建多个映像版本。 与托管映像一样,在使用映像版本创建 VM 时,将使用映像版本来创建 VM 的新磁盘。 可以多次使用映像版本。

准备阶段

若要完成本文中的示例,必须准备好通用化 VM 的现有托管映像,或专用化 VM 的快照。 可以按照教程:使用 Azure PowerShell 创建 Azure VM 的自定义映像来创建托管映像,或按照创建快照来创建专用化 VM。 对于托管映像和快照,数据磁盘大小不能超过 1 TB。

通过本文进行操作时,请根据需要替换资源组和 VM 名称。

映像库是用于启用映像共享的主要资源。 允许用于库名称的字符为大写或小写字母、数字、点和句点。 库名称不能包含短划线。 库名称在你的订阅中必须唯一。

以下示例在“myGalleryRG”资源组中创建名为“myGallery”的库 。

  1. 登录 Azure 门户
  2. 在搜索框中使用“共享映像库”类型,在结果中选择“共享映像库”。
  3. 在“共享映像库”页中,单击“添加”。
  4. 在“创建共享映像库”页上,选择正确的订阅。
  5. 在“资源组”中选择“新建”,键入 myGalleryRG 作为名称。
  6. 在“名称”中,键入 myGallery 作为库名称。
  7. 对“区域”保留默认值。
  8. 可以键入库的简短说明,例如“我的映像库,用于测试”,然后单击“查看 + 创建”。
  9. 通过验证后,选择“创建”。
  10. 部署完成后,选择“转到资源”。

创建映像定义

映像定义为映像创建一个逻辑分组。 它们用于管理有关映像版本的信息,这些版本是在其中创建的。

映像定义名称可能包含大写或小写字母、数字、点、短划线和句点。 若要详细了解可以为映像定义指定的值,请参阅映像定义

在库中创建库映像定义。

  1. 在新映像库的页面顶部,选择“添加新的映像定义”。
  2. 在“向共享映像库添加新的映像定义”中,对于“区域”,选择“中国东部”。
  3. 对于“映像定义名称”,键入一个类似 myImageDefinition 的名称。
  4. 对于“操作系统”,请根据源 VM 选择正确的选项。
  5. 对于“VM 代系”,请根据源 VM 选择适当的选项。 大多数情况下都会选择“第 1 代”。 有关详细信息,请参阅对第 2 代 VM 的支持
  6. 对于“操作系统状态”,请根据源 VM 选择适当的选项。 有关详细信息,请参阅通用化和专用化
  7. 对于“发布者”,请键入 myPublisher
  8. 对于“套餐”,请键入 myOffer
  9. 对于“SKU”,请键入 mySKU
  10. 完成后,选择“查看 + 创建”。
  11. 映像定义通过验证后,请选择“创建”。
  12. 部署完成后,选择“转到资源”。

创建映像版本

选择复制的目标区域时,请记住,你还需包括源区域作为复制的目标。

创建映像版本的步骤略有不同,具体取决于源是通用化的映像,还是专用化 VM 的快照。

  1. 在映像定义的页面顶部,选择“添加版本”。

  2. 在“区域”中,选择你需要创建映像的区域。

  3. 对于“版本号”,键入一个类似 1.0.0 的数字。 映像版本名称应遵循“主要版本.次要版本.修补版本”格式(使用整数)。

  4. 在“源映像”中,从下拉列表中选择源托管映像。 有关每种源类型的具体详细信息,请参阅下表。

    其他字段
    磁盘或快照 - 对于“OS 磁盘”,在下拉列表中选择对应的磁盘或快照。
    - 若要添加数据磁盘,请键入 LUN 编号,然后从下拉列表中选择数据磁盘。
    映像版本 - 从下拉列表中选择“源库”。
    - 从下拉列表中选择正确的映像定义。
    - 从下拉列表中选择要使用的现有映像版本。
    托管映像 \- 从下拉列表中选择“源映像”。
    托管映像必须位于与你在“实例详细信息”中选择的相同区域内。
    存储帐户中的 VHD 选择“浏览”,选择 VHD 的存储帐户。
  5. 在“从最新版本中排除”中,保留默认设置“否”。

  6. 对于“生命周期终结日期”,请从日历中选择处于未来几个月的某个日期。

  7. 在“复制””选项卡中,从下拉列表中选择存储类型。

  8. 设置“默认复制计数”,你可以为你添加的每个区域覆盖此计数。

  9. 需要复制到源区域,因此列表中的第一个副本将处于创建映像的区域。 若要添加更多副本,可以从下拉列表中选择区域,并根据需要调整副本计数。

  10. 完成操作后,选择“查看 + 创建”。 Azure 将验证配置。

  11. 映像版本通过验证后,请选择“创建”。

  12. 部署完成后,选择“转到资源”。

可能需要花费一段时间才能将映像复制到所有目标区域。

还可以从门户中将现有 VM 捕获为映像。 有关详细信息,请参阅在门户中创建 VM 映像

我们建议你在映像库级别共享访问权限。 下面逐步说明如何共享刚刚创建的库。

  1. 在新图像库页的左侧菜单中,选择“访问控制 (IAM)”。
  2. 在“添加角色分配”下,选择“添加”。 此时会打开“添加角色分配”窗格。
  3. 在“角色”下,选择“读取者”。
  4. 在“将访问权限分配给”下,保留默认设置“Microsoft Entra 用户、组或服务主体”。
  5. 在“选择”下,键入要邀请的人员的电子邮件地址。
  6. 如果该用户不在你的组织中,将会显示消息“将向此用户发送一封电子邮件,使其能够与 Microsoft 协作”。请选择使用该电子邮件地址的用户,然后单击“保存”。

如果该用户不在你的组织中,他(她)会收到一封邀请加入组织的电子邮件。 该用户需要接受邀请,才能在其资源列表中看到库以及所有映像定义和版本。

创建 VM

现在,可以创建一个或多个新的 VM。 本示例在“中国东部”数据中心的 myResourceGroup 中创建名为 myVMfromImage 的 VM。

  1. 转到映像定义。 可以使用资源筛选器显示所有可用的映像定义。
  2. 在映像定义的页面顶部,从菜单中选择“创建 VM”。
  3. 对于“资源组”,请选择“新建”并键入 myResourceGroup 作为名称。
  4. 在“虚拟机名称”中键入 myVM
  5. 对于“区域”,请选择“中国东部”。
  6. 对于“可用性选项”,请保留默认设置“无需基础结构冗余”。
  7. 如果你是从映像定义的页面开始操作的,系统会自动使用 latest 映像版本填充“映像”的值。
  8. 对于“大小”,请从可用大小列表中选择一种 VM 大小,然后选择“选择”。
  9. 在“管理员帐户”下,如果源 VM 是通用化的,请输入用户名SSH 公钥 如果源 VM 是专用化的,则这些选项将会灰显,因为系统会使用源 VM 中的信息。
  10. 若要允许远程访问 VM,请在“公共入站端口”下选择“允许所选端口”,然后从下拉列表中选择“SSH (22)”。 如果你不希望允许远程访问 VM,请为“公共入站端口”保留选择“无”。
  11. 除非映像基于 RedHat 或 SLES,否则请在“许可”下选择“其他”。
  12. 完成后,选择页面底部的“查看 + 创建”按钮。
  13. VM 通过验证后,选择页面底部的“创建”以开始部署。

清理资源

当不再需要时,可以删除资源组、虚拟机和所有相关资源。 为此,请选择虚拟机的资源组,选择“删除”,然后确认要删除的资源组的名称。

若要删除单个资源,需要按相反的顺序删除。 例如,若要删除某个映像定义,需要先删除基于该映像创建的所有映像版本。

后续步骤

还可使用模板创建 Azure Compute Gallery 资源。 提供多个 Azure 快速入门模板:

有关 Azure Compute Galleries 的详细信息,请参阅概述。 如果遇到问题,请参阅排查库问题