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デプロイメント

この図では:

  • 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コマンドで指定する必要があります。

例:

NetScaler CPX License Aggregator を pooled platinum bandwidth edition および vCPU platinum edition ライセンスに展開するには:

      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 を使用する場合、環境変数 CLA を NetScaler CPX 展開 YAML に指定する必要があります。

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 ライセンス アグリゲーター