设计决策:图像管理

Azure 中使用的主要映像管理解决方案是 Machine Creation Services (MCS),直到最近,它还是 Citrix 映像管理的最常见选项。
Citrix 一直专注于改进 Citrix Cloud 中的映像管理。

这些改进有助于我们的客户轻松迁移到 Azure 云,并在几分钟内加速所有工作负载。

其中一项新的 Citrix 服务包括 Image Portability Service (IPS)。
此服务提供了一种在本地数据中心和 Azure 环境之间移植映像的方法。该服务使用临时虚拟机 (VM) 托管合成引擎 (CE)。

CE 有两种模式:准备导出

  • 准备模式转换用于 Citrix 工作负载的虚拟磁盘格式并更新可移植属性。
  • 导出模式将准备好的磁盘复制到目标云。连接器设备控制单个作业,生成 CE VM,并保护 Azure 与本地环境之间的通信。

Azure 支持 Citrix Provisioning Services (PVS) 的一个版本,该版本允许您将虚拟磁盘同时流式传输到多个 VM。
借助 PVS,您可以在单个订阅中创建 2500 个完全相同的虚拟机。除了一些更改外,大多数管理和功能都与本地 PVS 环境相同。

Azure 不允许使用预引导执行环境 (PXE),因此需要对流式处理和引导过程进行更改。此版本的 PVS 包括一个基于 UEFI 的启动磁盘管理器 (BDM),用于创建 UEFI 启动盘。
这些启动盘需要 Azure 第 2 代虚拟机,不能支持 32 位操作系统。Citrix 代理现在负责 PVS 虚拟机的所有电源管理,尽管 PVS 控制台仍然可以关闭目标电源。
Citrix Virtual Apps and Desktops Virtual Apps and Desktops 安装向导负责处理所有配置步骤。

如何使用 Image Portability Service 来移动 Citrix 工作负载?

  • 使用 Machine Creation Services 或 PVS 在本地部署黄金映像。

  • 使用 IPS 的整个过程是通过远程工作站的 PowerShell 命令完成的。

  • 在开始该过程之前,应在远程工作站上安装最新版本的 PowerShellGet。

  • Citrix 连接器设备必须安装在使用 IPS 的每个资源位置。

  • 在本地位置,导出作业期间的临时数据存储需要 Windows SMB 文件共享。文件共享应有足够的可用空间来容纳要导出的磁盘的两个副本。

  • 自动发布仅在 Azure 部署上的 PVS 中可用。手动发布到 Azure 同时适用于 PVS 映像和 MCS 映像。

  • 已使用 IPS 测试了以下计算机目录配置

    • Windows Server 2016、Windows Server 2019 或 Windows 10 2004 或更高版本
    • 由 Citrix Provisioning 1912 或更高版本预配的源映像
    • Citrix Virtual Apps and Desktops VDA 1912 或更高版本

在 Azure 中部署 PVS 有哪些限制和要求?

  • Azure 订阅必须启用 R eserveMaconCreateNic 功能。

  • 单个订阅最多可以流式传输 2500 台虚拟机。

  • 所有预配置的 VM 必须在托管单元所在的同一区域中创建。虚拟机会自动分布在目标区域的所有可用区中。

  • 不支持跨区域预配。

  • 需要对第 2 代 Azure 虚拟机进行 UEFI 引导。不支持第 1 代(基于 BIOS)虚拟机。不支持使用 PXE 或 ISO 格式创建的启动映像。

  • 仅支持 64 位版本的 Windows 10 和 Windows Server 2019 进行直播。

  • 使用 Citrix Image Portability Service 导入现有映像。

  • 使用以下方法之一命名计算机需要Active Directory 支持:

    • Azure Active Directory 域服务 (AADDS) 已添加到您的 Azure Active Directory (AAD) 租户中
    • 与本地Active Directory 环境的 ExpressRoute 连接
    • Azure 中安装的 Active Directory 域控制器并与本地 AD 环境和 AAD 租户同步
  • 将 Azure 文件服务用于 PVS 虚拟磁盘存储时,需要高级存储或 Azure NetApp 服务,并且必须与 PVS 服务器位于同一区域。

  • 需要 SQL Server 或 SQL Server Express VM。目前,不支持使用除 Windows 集成身份验证之外的任何身份验证方法或使用 Azure SQL 数据库。

  • 黄金虚拟机必须具有相同的磁盘和 vGPU 配置。

  • 设置虚拟网络以流式传输到目标,并将该网络与用于虚拟机通信的网络与 Active Directory 进行对等。将 AD 域控制器 IP 地址用于 DNS 服务器。

  • PVS 服务器虚拟机在目标所在的每个虚拟网络上必须至少有一个虚拟网卡。PVS 服务器还应至少有 2 个 vCPU 和 8 GiB 的内存。

在 Azure 中进行映像管理的最佳做法是什么?

  • 始终创建黄金映像的副本或快照,并将副本或快照用于计算机目录映像。这种做法允许轻松更新映像,并提供防止映像损坏的保护。

  • 通过修改黄金映像上的 ListofDDCs 注册表项,将现有的基于映像的计算机(PVS 和 MCS)指向Cloud Connector。注册表项可以在 HKLM\ Software\ Citrix\ VirtualDeliveryAgent 找到。修改注册表项后,拍摄映像的快照。准备好将映像注册到 Citrix Cloud 时,使用新快照更新计算机目录。

  • 使用 Citrix 组策略(计算机配置) > Citrix 策略 > Controller)将其他 Citrix 工作负载服务器指向 Cloud Connector 的 FQDN,并将启用控制器自动更新设置为允许

  • 除非您使用的是App Layering,否则请使用托管磁盘作为黄金映像。

  • 一定要保留不同区域的黄金图像的副本。

  • 自动生成黄金映像

    • PowerShell 软件开发工具包可用于黄金映像版本的完全自动化
      • PowerShell v5.x
      • Azure PowerShell 模块
      • Citrix Cloud 远程 PowerShell
    • 使用 Azure PowerShell 执行以下操作:
      • 创建新的 Azure 虚拟机
      • 配置 Windows 防火墙
      • 删除 Azure 公有 IP 地址(如果存在)
      • 自动加入域
      • 自动安装软件,例如 VDA
      • 封住图片
        • 重置日志文件
        • 重置 Office 许可
        • 清除 GPO 缓存
        • 移除用于构建过程的用户配置文件
      • 将黄金映像复制到业务连续性区域
    • 手动安装任何其他无法自动执行的软件。
    • 使用 Citrix Cloud 远程 PowerShell 软件开发工具包执行以下操作:
      • 更新计算机目录
    • 不要在任何脚本中存储未加密的密码,也不要在构建后立即更改任何存储的密码(例如本地管理员密码)。

在 Azure 中管理 MCS 映像时,我是否应该做与本地不同的事情?

  • 使用 Azure 共享图像库存储 MCS 映像,以减少创建和补水操作系统磁盘所需的时间,并提高应用性能。

如何跨地理区域管理图片?

  • 使用 Azure 共享映像库在不同区域提供多个副本。

如何在 Azure 中启用 MCSIO?

  • 通过使用 PowerShell 创建新的置备方案和目录,可以在 Azure 中的 MCS 目录上启用 MCSIO
    • 使用 VDA 版本 1912 或更高版本可获得最佳效果,因为并非所有早期版本都受支持。
    • 不要忘记在 Azure 中为 MCS 目录预先创建资源组。
    • 安装 Citrix 远程 PowerShell SDK 以访问 Citrix Cloud 配置。
    • 在 Azure 中,回写缓存存储在非持久介质上。

其他资源链接

实现云自动化!Citrix + Azure + MCS + PowerShell

Azure 上的Citrix Provisioning

在 Azure 中为 MCS 池化目录启用持久回写缓存

Image Portability Service

Microsoft Azure Resource Manager 虚拟化环境

SDK 和 API

设计决策:图像管理