NetScaler CPX ライセンスアグリゲーター

現在、NetScaler CPXはNetScaler ADMサーバーからライセンスを取得しています。Kubernetes環境では、NetScaler CPXは動的に起動したり停止したりします。NetScaler CPXが予期せず停止した場合、NetScaler ADMサーバーがライセンスを回収するのに数分かかります。NetScaler ADMサーバーは、NetScaler CPXが停止したときにすぐにライセンスを回収できるようにする必要があります。そうすることで、同じライセンスを別の起動中のNetScaler CPXに割り当てることができます。また、何らかの理由でNetScaler ADMサーバーに到達できない場合、クラスター内の新しいNetScaler CPXにライセンスを付与することはできません。

NetScaler CPX License Aggregatorは、NetScalerが提供するKubernetesサービスです。このサービスは、Kubernetesクラスター内でNetScaler CPXライセンスのローカルプロバイダーとして機能します。Kubernetesクラスターに展開されたNetScaler CPX License Aggregatorサービスは、NetScaler CPXとADMライセンスサーバー間の仲介役として機能し、NetScaler CPXと割り当てられたライセンスを追跡できます。NetScaler CPX License Aggregatorサービスを使用すると、NetScaler ADMサーバーはNetScaler CPXが停止したときにすぐにライセンスを回収できます。

Kubernetesクラスターでは、NetScaler CPX License Aggregatorサービスは、サイドカーとしてのNetScaler CPXとスタンドアロン展開の両方をサポートします。

注:

NetScaler CPX License Aggregatorを使用したライセンス付与には、NetScaler CPX 13.1-30.x以降が必要です。NetScaler CPX License Aggregatorは、NetScaler CPXの古いバージョンのライセンス付与をサポートしていません。

NetScaler CPX License Aggregatorの主な利点

NetScaler CPX License Aggregatorを使用する主な利点は次のとおりです。

  • スケーラビリティ: NetScaler ADMライセンスサーバーは、最大10000のNetScaler CPX展開のみをサポートできます。NetScaler CPX License Aggregatorサービスの導入により、各KubernetesクラスターはNetScaler ADMライセンスサーバーの単一クライアントとして機能できます。したがって、単一のNetScaler ADMライセンスサーバーで多数のNetScaler CPXをスケーリングできます。

  • リソースの最適化: NetScaler CPX License Aggregatorサービスは、クラスター全体のライセンス機能もサポートしており、必要に応じてNetScaler ADMサーバーからライセンスをチェックアウトすることもできます。NetScaler CPX License Aggregatorは、ライセンスをNetScaler ADMサーバーに返却できます。 NetScaler CPX License Aggregatorは、NetScaler CPXの不適切な終了を処理し、設定された待機期間後にそのようなNetScaler CPXからライセンスを回収できます。

展開トポロジ

次の図は、Kubernetesクラスター内でのNetScaler CPX License Aggregatorの展開を示しています。

NetScaler CPX License Aggregatorの展開(/en-us/cpx/media/cla-deployment.png)

この図では:

  • CPXはNetScaler CPXを意味します
  • CPX License Aggregator は NetScaler CPX License Aggregator を意味します

このサンプル展開では、NetScaler CPX License Aggregator サービスが、NetScaler CPX および NetScaler ADM エージェントと共に Kubernetes クラスター内に展開されます。NetScaler CPX License Aggregator サービスは、NetScaler CPX と NetScaler ADM エージェント間の仲介役として機能し、クラスター内のすべての NetScaler CPX を監視し、それらにライセンスを管理します。

Helm チャートを使用した NetScaler CPX License Aggregator の展開

前提条件

以下の前提条件が適用されます。

  • Kubernetes バージョン 1.16 以降が必要です。

  • Helm バージョン 3.x 以降が必要です。

  • NetScaler CPX のライセンスを持つライセンスサーバーの IP アドレスを取得する必要があります。

  • NetScaler CPX License Aggregator の Redis データベースのパスワードを指定する必要があります。Kubernetes シークレットを使用してデータベースパスワードを指定でき、シークレットを作成するには次のコマンドを使用できます。

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

Helm チャートを使用した展開

NetScaler CPX ライセンスの種類に応じて、Helm チャートを使用して NetScaler CPX License Aggregator を展開するには、次の手順を実行します。さまざまな種類の NetScaler CPX ライセンスの詳細については、「NetScaler CPX ライセンス」を参照してください。

Helm チャートのインストール

次のコマンドを使用して、NetScaler CPX License Aggregator Helm チャートリポジトリを追加します。

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

帯域幅プールライセンスを管理するための NetScaler CPX License Aggregator のインストール

お持ちの NetScaler CPX プールライセンスの種類に応じて、次のいずれかのコマンドを使用します。これらのコマンドでは、my-release がリリース名として使用されます。

注記:

デフォルトでは、Helmチャートは推奨されるRBACロールとロールバインディングをインストールします。

プラチナ帯域幅ライセンスの場合:

    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>

エンタープライズ帯域幅エディションの場合:

    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>

標準帯域幅エディションの場合:

    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>

これらのコマンドは、デフォルト構成でNetScaler CPX License AggregatorをKubernetesクラスターに展開します。インストール時にパラメーターを構成できます。詳細については、インストール中に構成できる必須およびオプションのパラメーターを一覧表示するHelmチャートGitHubリポジトリの「NetScaler CPX License Aggregatorの構成」セクションを参照してください。

vCPUライセンスを管理するためのNetScaler CPX License Aggregatorのインストール

お持ちのNetScaler CPX vCPUライセンスの種類に応じて、次のいずれかのコマンドを使用してください。これらのコマンドでは、my-releaseがリリース名として使用されます。

注記: デフォルトでは、Helmチャートは推奨されるRBACロールとロールバインディングをインストールします。

プラチナ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>

エンタープライズ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>

標準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>

複数のライセンスを管理するためのNetScaler CPX License Aggregatorのインストール

NetScaler CPX License Aggregatorで複数の種類のライセンスを管理する必要がある場合は、それらのライセンスの関連する引数をHelmコマンドで指定する必要があります。

例:

pooled platinum bandwidth edition および vCPU platinum edition ライセンス用のNetScaler CPX License Aggregatorをデプロイするには:

      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>

NetScaler CPX License Aggregatorからライセンスを取得するためのNetScaler CPXの構成

NetScaler CPXのライセンス供与にNetScaler CPX License Aggregatorを使用する場合、NetScaler CPX展開YAMLで環境変数 CLA を指定する必要があります。

NetScaler CPX License Aggregatorにアクセスするために使用する ipaddress または domainname を、この環境変数に次のように指定する必要があります。

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

または

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

NetScaler CPX YAMLで、次の環境変数も指定する必要があります。

  • POD_NAME: Podの名前を指定します。Podの名前は、環境変数としてNetScaler CPXに公開されます。
  • POD_NAMESPACE: Podの名前空間を指定します。Podの名前空間は、環境変数としてNetScaler CPXに公開されます。
  • Bandwidth: NetScaler CPXに割り当てるMbps単位の帯域幅を指定します。
  • Edition: ライセンスエディションを指定します。サポートされている値には、Standard、Platinum、およびEnterpriseが含まれます。
  • CPX_CORES : NetScaler CPXで実行するコア数を指定します。

さまざまなNetScaler CPXライセンスオプションの詳細については、NetScaler 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

NetScaler CPX YAMLに次のラベルも追加する必要があります。

     labels:
       adc: citrix®

NetScaler CPX License Aggregatorのサンプル展開については、NetScaler CPX License Aggregator: サンプル展開 を参照してください。

NetScaler CPX ライセンスアグリゲーター