Citrix DaaS

自动缩放插件

自动缩放插件是一种插件模型,您可以直接对虚拟机的电源管理采取行动。 您可以偏离与虚拟机电源管理相关的标准自动缩放设置,而是针对不同的场景使用不同的设置。 目前您可以使用的插件有:

自动缩放假日插件

您可以使用 Autoscale 假日插件来处理不同的假日设置。 例如,您希望在工作日启动大多数虚拟机,而在公共假日则默认应用工作日计划。 为了处理这种情况,该插件允许虚拟机在指定的节假日日期关闭。

配置假期日期

将 Autoscale 假日插件与交付组关联并配置假日日期,以便插件可以允许虚拟机在配置的日期关闭电源。 为了实现此目的,请运行以下命令:

  1. 运行 Get-BrokerAutoscalePlugin 获取假日插件的 UID。

      (Get-BrokerAutoscalePlugin -Name Citrix.AutoscalePlugin.HolidaySchedule).Uid
    <!--NeedCopy-->
    

    注意 HolidaySchedule 插件的 UID 值。 我们假设 HolidaySchedule 插件的 UID 为 1。

  2. 获取要与插件关联的交付组的 UID。 例如:

      $dgUid = (Get-BrokerDesktopGroup 'My Group Name').Uid
    <!--NeedCopy-->
    
  3. HolidaySchedule 插件与交付组 (-AutoscalePluginUid “<HolidaySchedule plugin value>”) 关联并指定所需的假期日期。 例如:

      New-BrokerAutoscaleGroupPlugin -Name "Company Holidays" -DesktopGroupUid $dgUid -AutoscalePluginUid 1 -Configuration '{"Holidays":["2024-11-28","2024-11-29","2024-12-25"]}'
    <!--NeedCopy-->
    

    注意创建的 AutoscaleGroupPlugin 的 UID(插件和交付组之间的关联)。

    注意:

    关联的名称在给定交付组的关联中必须是唯一的。 例如,一个送货组只能有一个名为“公司假期”的关联,但一个或多个其他送货组也可能有名为“公司假期”的关联。

更改假期日期

您可以使用 Set-BrokerAutoscaleGroupPlugin PowerShell 命令并指定 AutoscaleGroupPlugin的 UID 来更改指定的假期日期。 例如,假设 AutoscaleGroupPlugin 具有 UID 2。

  Set-BrokerAutoscaleGroupPlugin 2 -Configuration '{"Holidays":["2024-11-28","2024-11-29"]}'
<!--NeedCopy-->

重要注意事项

使用 Autoscale 假日插件时请考虑以下事项:

  • 交付组必须指定时区。
  • 日期格式必须为“yyyy-mm-dd”。
  • 计划覆盖(覆盖标准自动缩放设置)提前一天在前一天 22:00 生成。 22:00 之后,无法添加、删除或更改第二天的任何计划覆盖。
  • 同一个 Autoscale 插件可以与多个交付组关联。 为每个交付组运行 New-BrokerAutoscaleGroupPlugin ,然后配置该组所需的假期。
  • 最新的 Set-BrokerAutoscalePlugin -Configuration 命令将用指定的新假期覆盖所有现有假期。

智能自动缩放计划插件

智能自动缩放是一种数据驱动的自动缩放功能,具有最少的管理设置,允许您配置交付组的性能目标。 性能目标值的范围是1到99,该值指定了用户体验和成本之间的目标平衡:

  • 低值优先考虑节省成本。
  • 高价值优先考虑用户体验。

性能目标与历史使用数据相结合,计算出每天每 30 分钟的最佳缓冲容量(需要启动的虚拟机数量)。 因此,每天开始时都会计算 48 个最佳缓冲容量。

最佳缓冲容量取代高峰/非高峰缓冲容量和池大小来管理可用的机器。

用于计算最佳缓冲容量的历史使用数据是:

  • 客户每分钟登录率(以用户数计)
  • VM 平均启动时间(分钟)
  • 平均虚拟机密度(以每台虚拟机的用户数计算)。

必备条件

以下是启用智能自动缩放的要求:

  • 该交付组必须是共享交付组。
  • 交付组必须启用自动缩放。
  • 在为桌面组配置智能自动缩放之前,交付组必须至少拥有 90 天的历史数据。 您可以使用以下命令将 ConnectionLogLifetimeHours 从 48 小时增加到 90 天:

       Set-BrokerServiceConfigurationData Logging.ConnectionLogLifetimeHours -SettingValue 2160.
     <!--NeedCopy-->
    

重要注意事项

  • 交付组必须指定时区。
  • 计划覆盖提前一天于前一天 22:00 生成。 22:00 之后,无法添加、删除或更改第二天的任何计划覆盖。
  • 同一个 Autoscale 插件可以与多个交付组关联。 为每个交付组运行 New-BrokerAutoscaleGroupPlugin ,然后配置该组所需的性能目标。
  • 最新的 Set-BrokerAutoscalePlugin -Configuration 命令将用指定的新假期覆盖所有现有假期。

配置绩效目标

IntelligentAutoscaleSchedules 插件与交付组关联并配置性能目标,以便性能目标结合历史使用数据可以计算出每天每 30 分钟的最佳缓冲容量。 为了实现此目的,请运行以下命令:

  1. 运行 Get-BrokerAutoscalePlugin 获取智能自动缩放插件的 UID。 注意 IntelligentAutoscaleSchedules 插件的 UID 值。

      (Get-BrokerAutoscalePlugin -Name Citrix.AutoscalePlugin.IntelligentAutoscaleSchedules).Uid
    <!--NeedCopy-->
    

    我们假设 IntelligentAutoscaleSchedules 插件的 UID 为 2。

  2. 获取要与插件关联的交付组的 UID。 例如:

      $dgUid = (Get-BrokerDesktopGroup 'My Group Name').Uid
    <!--NeedCopy-->
    
  3. IntelligentAutoscaleSchedules 插件与交付组(-AutoscalePluginUid “<IntelligentAutoscaleSchedules value>”)关联并指定性能目标值。

      New-BrokerAutoscaleGroupPlugin -DesktopGroupUid $dgUid -AutoscalePluginUid 2 -Configuration '{"PerformanceTarget":70}'
    <!--NeedCopy-->
    
  4. 注意创建的 AutoscaleGroupPlugin 的 UID(插件和交付组之间的关联)。

更新绩效目标值

您可以使用 Set-BrokerAutoscaleGroupPlugin PowerShell 命令并指定 AutoscaleGroupPlugin的 UID 来更新指定的性能目标值。 例如,假设 AutoscaleGroupPlugin 的 UID 为 2。

  Set-BrokerAutoscaleGroupPlugin 2 -Configuration '{"PerformanceTarget":70}'
<!--NeedCopy-->

配置 Autoscale Group 插件自动批准

要允许计划覆盖(覆盖标准自动缩放设置),请在 BrokerAutoscaleGroupPlugin中配置以下两个属性:

  • AutoApprove

    • 如果 为真:表示插件产生的任何计划覆盖都会被自动接受。
    • 如果 为假:仅当目标日期在 ApprovedUntil 属性中指定的日期或之前时,才会接受该计划。

    如果 AutoApproveFalse 并且 ApprovedUntil 日期未设置或已过去,则产生的任何计划覆盖都将被丢弃而不会被使用。

  • 已批准直至:

    • 如果 AutoApproveFalse,并且您指定 ApprovedUntil 日期,则插件生成的计划覆盖将自动接受为目标日期的计划。

例如,假设 AutoscaleGroupPlugin 具有 UID 2。

  • 要为该桌面组启用自动批准:

       Set-BrokerAutoscaleGroupPlugin 2 -AutoApprove $true
     <!--NeedCopy-->
    
  • 要启用自动批准直到未来某个日期:

       Set-BrokerAutoscaleGroupPlugin 2 -ApprovedUntil "2025-01-01"
     <!--NeedCopy-->
    
自动缩放插件