Citrix ADC CPX License Aggregator

Citrix ADC CPX License Aggregator

Citrix ADC CPX 当前从 Citrix ADM 服务器获取许可证。在 Kubernetes 环境中,Citrix ADC CPX 可以动态启动或关闭。如果 Citrix ADC CPX 意外停机,Citrix ADM 服务器需要几分钟时间才能回收许可证。Citrix ADM 服务器必须能够在 Citrix ADC CPX 出现故障时立即收回此类许可证,这样才能将相同的许可证分配给另一个 Citrix ADC CPX。此外,如果出于任何原因无法访问 Citrix ADM 服务器,则无法在群集中许可使用新的 Citrix ADC CPX。

Citrix ADC CPX License Aggregator 是 Citrix 提供的 Kubernetes 服务。此服务充当 Kubernetes 群集中 Citrix ADC CPX 许可的本地提供程序。在 Kubernetes 群集中部署的 Citrix ADC CPX License Aggregator 服务可以充当 Citrix ADC CPX 与 ADM 许可服务器之间的中介,并跟踪 Citrix ADC CPX 和分配的许可证。借助 Citrix ADC CPX License Aggregator 服务,Citrix ADM 服务器可以在 Citrix ADC CPX 关闭时立即回收许可证。

在 Kubernetes 群集中,Citrix ADC CPX License Aggregator 服务支持作为 sidecar 的 Citrix ADC CPX 和独立部署。

注意:

使用 Citrix ADC CPX 许可证聚合器进行许可需要 Citrix ADC CPX 13.1-30.x 或更高版本。Citrix ADC CPX License Aggregator 不支持许可较旧版本的 Citrix ADC CPX。

Citrix ADC CPX License Aggregator 的主要优势

下面是使用 Citrix ADC CPX License Aggregator 的主要优势:

  • 可扩展性: Citrix ADM 许可服务器最多只能支持 10000 个 Citrix ADC CPX 部署。随着 Citrix ADC CPX License Aggregator 服务的推出,每个 Kubernetes 群集都可以充当 Citrix ADM 许可服务器的单个客户端。因此,您可以使用一台 Citrix ADM 许可服务器扩展许多 Citrix ADC CPX。

  • 资源优化: Citrix ADC CPX License Aggregator 服务还支持群集范围的许可功能,还可以根据需要从 Citrix ADM 服务器签出许可证。Citrix ADC CPX License Aggregator 可以将许可证返还给 Citrix ADM 服务器。 Citrix ADC CPX License Aggregator 可以处理 Citrix ADC CPX 的不正常终止,并在配置的等待期结束后从此类 Citrix ADC CPX 回收许可证。

部署拓扑

下图显示了 Kubernetes 群集内的 Citrix ADC CPX License Aggregator 部署。

Citrix ADC CPX License Aggregator 部署

在此图中:

  • CPX 表示 Citrix ADC CPX
  • CPX License Aggregator 表示 Citrix ADC CPX License Aggregator

在此示例部署中,Citrix ADC CPX License Aggregator 服务与 Citrix ADC CPX 和 Citrix ADM 代理一起部署在 Kubernetes 群集中。Citrix ADC CPX License Aggregator 服务充当 Citrix ADC CPX 与 Citrix ADM 代理之间的中介,监视群集中的所有 Citrix ADC CPX 并管理其许可证。

使用 Helm 图表部署 Citrix ADC CPX License Aggregator

必备条件

以下必备条件适用:

  • 您需要 Kubernetes 版本 1.16 及更高版本。

  • 您需要 Helm 3.x 或更高版本。

  • 您必须获取具有 Citrix ADC CPX 的许可证的许可证服务器的 IP 地址。

  • 必须在 Citrix ADC CPX License Aggregator 中为 Redis 数据库提供密码。您可以使用 Kubernetes 机密提供数据库密码,以下命令可用于创建机密:

     kubectl create secret generic dbsecret --from-literal=password=<custom-password>
    

使用 Helm 图表进行部署

根据 Citrix ADC CPX 许可证的类型,执行以下步骤使用 Helm 图表部署 Citrix ADC CPX 许可证聚合器。有关不同类型的 Citrix ADC CPX 许可证的更多信息,请参阅 Citrix ADC CPX 许可

安装 Helm 图表

请使用以下命令添加 Citrix ADC CPX License Aggregator Helm 图表存储库:

    helm repo add Citrix https://citrix.github.io/citrix-helm-charts/

安装 Citrix ADC CPX 许可证聚合器来管理带宽池许可证

根据您拥有的 Citrix ADC CPX 池化许可证的类型,使用以下命令之一。在这些命令中,my-release 用作发行版名称。

注意:

默认情况下,Helm Chart 会安装推荐的 RBAC 角色和角色绑定。

对于 Platinum 带宽许可证:

    helm install my-release citrix/cpx-license-aggregator --set licenseServer.address=<License-Server-IP-or-FQDN>,redis.secretName=<Kubernetes-Secret-for-DB-password>,licenseAggregator.username=<unique-ID-for-CLA>,licenseInfo.instanceQuantum=<QUANTUM>,licenseInfo.instanceLowWatermark=<LOW WATERMARK>,licenseInfo.bandwidthPlatinumQuantum=<QUANTUM-in-Mbps>,licenseInfo.bandwidthPlatinumLowWatermark=<LOW WATERMARK-in-Mbps>

对于 Enterprise 带宽版:

    helm install my-release citrix/cpx-license-aggregator --set licenseServer.address=<License-Server-IP-or-FQDN>,redis.secretName=<Kubernetes-Secret-for-DB-password>,licenseAggregator.username=<unique-ID-for-CLA>,licenseInfo.instanceQuantum=<QUANTUM>,licenseInfo.instanceLowWatermark=<LOW WATERMARK>,licenseInfo.bandwidthEnterpriseQuantum=<QUANTUM-in-Mbps>,licenseInfo.bandwidthEnterpriseLowWatermark=<LOW WATERMARK-in-Mbps>

对于 Standard 带宽版:

    helm install my-release citrix/cpx-license-aggregator --set licenseServer.address=<License-Server-IP-or-FQDN>,redis.secretName=<Kubernetes-Secret-for-DB-password>,licenseAggregator.username=<unique-ID-for-CLA>,licenseInfo.instanceQuantum=<QUANTUM>,licenseInfo.instanceLowWatermark=<LOW WATERMARK>,licenseInfo.bandwidthStandardQuantum=<QUANTUM-in-Mbps>,licenseInfo.bandwidthStandardLowWatermark=<LOW WATERMARK-in-Mbps>

这些命令使用默认配置在 Kubernetes 群集上部署 Citrix ADC CPX 许可证聚合器。可以在安装时配置参数。有关详细信息,请参阅 Helm 图表 GitHub 存储库中的 Citrix ADC CPX License Aggregator 配置部分,其中列出了您可以在安装过程中配置的强制性参数和可选参数。

安装 Citrix ADC CPX 许可证聚合器来管理 vCPU 许可证

根据您拥有的 Citrix ADC CPX vCPU 许可证的类型,使用以下命令之一。在这些命令中,my-release 用作发行版名称。

注意: 默认情况下,Helm 图表会安装推荐的 RBAC 角色和角色绑定。

对于 Platinum vCPU 版本:

    helm install my-release citrix/cpx-license-aggregator --set licenseServer.address=<License-Server-IP-or-FQDN>,redis.secretName=<Kubernetes-Secret-for-DB-password>,licenseAggregator.username=<unique-ID-for-CLA>,licenseInfo.vcpuPlatinumQuantum=<QUANTUM>,licenseInfo.vcpuPlatinumLowWatermark=<LOW WATERMARK>

对于 Enterprise vCPU 版本:

    helm install my-release citrix/cpx-license-aggregator --set licenseServer.address=<License-Server-IP-or-FQDN>,redis.secretName=<Kubernetes-Secret-for-DB-password>,licenseAggregator.username=<unique-ID-for-CLA>,licenseInfo.vcpuEnterpriseQuantum=<QUANTUM>,licenseInfo.vcpuEnterpriseLowWatermark=<LOW WATERMARK>

对于 Standard vCPU 版本:

    helm install my-release citrix/cpx-license-aggregator --set licenseServer.address=<License-Server-IP-or-FQDN>,redis.secretName=<Kubernetes-Secret-for-DB-password>,licenseAggregator.username=<unique-ID-for-CLA>,licenseInfo.vcpuStandardQuantum=<QUANTUM>,licenseInfo.vcpuStandardLowWatermark=<LOW WATERMARK>

安装 Citrix ADC CPX 许可证聚合器来管理多个许可证

如果您需要 Citrix ADC CPX 许可证聚合器来管理多种类型的许可证,则必须在 Helm 命令中指定这些许可证的相关参数。

例如:

要为 pooled platinum bandwidth editionvCPU platinum edition 许可证部署 Citrix ADC CPX 许可证聚合器,请执行以下操作:

      helm install demo citrix/cpx-license-aggregator --set licenseServer.address=<License-Server-IP-or-FQDN>,redis.secretName=<Kubernetes-Secret-for-DB-password>,licenseAggregator.username=<unique-ID-for-CLA>,licenseInfo.instanceQuantum=<QUANTUM>,licenseInfo.instanceLowWatermark=<LOW WATERMARK>,licenseInfo.bandwidthPlatinumQuantum=<QUANTUM-in-Mbps>,licenseInfo.bandwidthPlatinumLowWatermark=<LOW WATERMARK-in-Mbps>,licenseInfo.vcpuPlatinumQuantum=<QUANTUM>,licenseInfo.vcpuPlatinumLowWatermark=LOW WATERMARK>

将 Citrix ADC CPX 配置为从 Citrix ADC CPX License Aggregator 获取许可证

当您使用 Citrix ADC CPX License Aggregator 许可 Citrix ADC CPX 时,需要在 Citrix ADC CPX 部署 YAML 中提供环境变量 CLA

必须在此环境变量中提供可用来访问 Citrix ADC CPX License Aggregator 的 ipaddressdomainname,如下所示:

      env:
      - name: "CLA"
        value: "192.0.2.2" 

      env:
      - name: "CLA"
        value: "local-cla.org" 

您还必须在 Citrix ADC CPX YAML 中提供以下环境变量。

  • POD_NAME:指定 pod 的名称。pod 的名称作为环境变量向 Citrix ADC CPX 公开。
  • POD_NAMESPACE:指定 pod 的命名空间。pod 的命名空间作为环境变量向 Citrix ADC CPX 公开。
  • Bandwidth:指定分配给 Citrix ADC CPX 的带宽(以 Mbps 为单位)。
  • Edition:指定许可证版本。支持的值包括“Standard”、“Platinum”和“Enterprise”。
  • CPX_CORES:指定要为 Citrix ADC CPX 运行的内核数量。

有关不同 Citrix ADC CPX 许可选项的详细信息,请参阅 Citrix ADC CPX 许可

下图显示了使用这些环境变量的示例配置:

      - name: POD_NAME
        valueFrom:
          fieldRef:
            apiVersion: v1
            fieldPath: metadata.name
      - name: POD_NAMESPACE
        valueFrom:
          fieldRef:
            apiVersion: v1
            fieldPath: metadata.namespace
      - name: “BANDWIDTH”
        value: 1000
      - name: “CPX_CORES” 
        value: 1
      - name: “EDITION”
        value: PLATINUM

还需要在 Citrix ADC CPX YAML 中添加以下标签:

     labels:
       adc: citrix

有关 Citrix ADC CPX 许可证聚合器的部署示例,请参阅 Citrix ADC CPX 许可证聚合器:部署示例

Citrix ADC CPX License Aggregator