NetScaler CPXインスタンスのNetScaler ADMへの追加

DockerホストにインストールされているNetScaler CPXインスタンスを管理および監視する場合は、NetScaler アプリケーション配信管理(ADM)ソフトウェアに追加する必要があります。

インスタンスは、ADMを初めて設定するときに追加することも、後で追加することもできます。

インスタンスを追加するには、インスタンスプロファイルを作成して各インスタンスのホスト名またはIPアドレス、またはIPアドレスの範囲を指定する必要があります。このインスタンスプロファイルには、NetScaler ADM に追加するインスタンスのユーザー名とパスワードが含まれています。インスタンスの種類ごとにデフォルトのプロファイルが用意されています。たとえば、 ns-root-profile はNetScaler ADCインスタンスのデフォルトのプロファイルです。このプロファイルは、デフォルトのADC管理者資格情報によって定義されます。インスタンスのデフォルトの管理者資格情報を変更した場合は、それらのインスタンスのカスタムのインスタンスプロファイルを定義できます。インスタンスが検出された後にインスタンスの資格情報を変更した場合は、インスタンスプロファイルを編集、またはプロファイルを作成してからインスタンスを再検出する必要があります。

前提条件

以下の点について確認してください。

  • NetScaler ADMソフトウェアをCitrix XenServer にインストールしました。詳細については、 NetScaler ADMドキュメントを参照してください。
  • DockerホストにNetScaler CPXインスタンスがインストールされていること。

NetScaler CPXインスタンスをADMに追加するには:

  1. Webブラウザーで、 NetScalerアプリケーション配信管理のIPアドレス (例:)を入力します。 http://192.168.100.1

  2. [User Name][Password] の各フィールドに管理者の資格情報を入力します。デフォルトの管理者の資格情報はnsrootnsrootです。

  3. [ ネットワーク] > [インスタンス] ** [ **NetScaler ] に移動し、[ CPX ] タブをクリックします。

  4. [Add] をクリックして、NetScaler ADMに新しいCPXインスタンスを追加します。

  5. [NetScaler CPXの追加] ページが開きます。次のパラメーターの値を入力します:

    1. CPXインスタンスの到達可能なIPアドレス、またはCPXインスタンスがホストされているDockerコンテナのIPアドレスのいずれかを指定することにより、CPXインスタンスを追加できます。
    2. CPXインスタンスのプロファイルを選択します。
    3. インスタンスを展開するサイトを選択します。
    4. エージェントを選択します。
    5. オプションとして、キーと値のペアをインスタンスに入力できます。キーと値のペアを追加すると、後で簡単にインスタンスを検索できます。

      cpx インスタンスの追加

  6. [OK] をクリックします。

インスタンスを再検出する場合は、[ **ネットワーク] > [インスタンス] > [NetScaler] > [CPX] を選択し、再検出するインスタンスを選択して、[ アクションの選択] ドロップダウンリストから [再検出] をクリックします。**

環境変数を使用してNetScaler CPXインスタンスをNetScaler ADMに追加する

環境変数を使用してNetScaler CPXインスタンスをNetScaler ADMに追加することもできます。インスタンスを追加するには、NetScaler CPXインスタンスに次の環境変数を構成する必要があります。

  • NS_MGMT_SERVER - ADM IPアドレス/FQDN
  • HOST - ノードのIPアドレス
  • NS_HTTP_PORT - ノードにマップされたHTTPポート
  • NS_HTTPS_PORT - ノードにマップされたHTTPSポート
  • NS_SSH_PORT - ノードにマップされたSSHポート
  • NS_SNMP_PORT - ノードにマップされたSNMPポート
  • NS_ROUTABLE -(NetScaler CPXポッドのIPアドレスは外部からルーティングできません。)
  • NS_MGMT_USER – ADMユーザー名
  • NS_MGMT_PASS – ADMパスワード

以下は、NetScaler CPXインスタンスをNetScaler docker run ADMに追加するためのコマンドの例です。

 docker run -dt --privileged=true -p 9080:9080 -p 9443:9443 -p 9022:22 -p 9161:161 -e EULA=yes -e NS_MGMT_SERVER=abc-mgmt-server.com -e HOST=10.1.1.1 -e NS_HTTP_PORT=9080 -e NS_HTTPS_PORT=9443 -e NS_SSH_PORT=9022 -e NS_SNMP_PORT=9161 -e NS_ROUTABLE=0 --ulimit core=-1 –name test cpx:latest

<!--NeedCopy-->

Kubernetes ConfigMap を使用してNetScaler CPX インスタンスをNetScaler ADM に追加する方法

NetScaler CPXは、Kubernetes ConfigMapsを介してボリュームマウントされたファイルを使用してNetScaler ADMに登録することをサポートしています。この登録方法を有効にするには、NetScaler CPXでいくつかの環境変数を指定する必要があります。これらの変数は、ConfigMapsおよびSecretsを使用してボリュームマウントファイルとともに指定する必要があります。

必要な環境変数とその説明は次のとおりです:

  • NS_HTTP_PORT:ノードにマップされたHTTPポートを指定します。
  • NS_HTTPS_PORT:ノードにマップされたHTTPSポートを指定します。
  • NS_SSH_PORT:ノードにマップされたSSHポートを指定します。
  • NS_SNMP_PORT:ノードにマップされたSNMPポートを指定します。

NetScaler CPXには、記載されている環境変数とは別に、登録対象のADMエージェントに関する情報が必要です。この情報には、ADMエージェントのIPアドレスまたはFQDNの詳細と資格情報が含まれます。NetScaler CPXは、ボリュームマウントファイルからこの情報を取得します。IPアドレスまたはFQDNを含むConfigMapは、NetScaler CPXインスタンスのファイルシステムにファイルとしてマウントされます。ADMエージェントの認証情報を含むKubernetesシークレットも、NetScaler CPXインスタンスのファイルシステムにファイルとしてマウントされます。登録に必要なすべての情報を使用して、NetScaler CPXはADMエージェントへの登録を試みます。

以下は、ConfigMapとSecretがファイルとしてマウントされたNetScaler CPX YAMLファイルスニペットの例です。

      …
      env:
      - name: "EULA"
        value: "yes"
      - name: "NS_HTTP_PORT"
        value: "9080"
      - name: "NS_HTTPS_PORT"
        value: "9443"
      - name: "NS_SSH_PORT"
        value: "22"
      - name: "NS_SNMP_PORT"
        value: "161"
      - name: "KUBERNETES_TASK_ID"
        value: ""
      …
      volumeMounts:
        …
        - mountPath: /var/adminfo/server/
          name: adm-agent-config
        - mountPath: /var/adminfo/credentials/
          name: adm-agent-user
        …
  volumes:
  …
  - name: adm-agent-config
    configMap:
      name: adm-agent-config
  - name: adm-agent-user
    secret:
      secretName: adm-secret

上の例では、adm-agent-configという名前のConfigMapとSecretadm-agent-userが使用されています。以下は、必要なConfigMapとSecretを作成するための例です。

ConfigMap: ConfigMapは、adm_reg_envsという名前のファイルから作成されます。このファイルには、次の形式のADMエージェントのIPアドレスまたはFQDNが必要です。

NS_MGMT_SERVER=adm-agent

前述の形式では、 adm-agent はNetScaler CPXインスタンスを登録する必要があるADMエージェントのFQDNです。

次のコマンドを使用して、ConfigMapを作成します:

kubectl create configmap adm-agent-config --from-file=adm_reg_envs

注: ファイル名にはadm_reg_envs変数が必要であり、次のパスにマウントする必要があります:/var/adminfo/server/

Secret: 次のコマンドを使用して、KubernetesのSecretを作成します。次のコマンドで、user123はADMエージェントのユーザー名、pass123はパスワードです。

kubectl create secret generic adm-secret --from-literal=NS_MGMT_USER=user123 --from-literal=NS_MGMT_PASS=pass123

NetScaler CPXインスタンスは、ADMエージェントをクラスターにデプロイする前でも、必要な環境変数とボリュームマウントファイルを使用してKubernetesクラスターにデプロイできます。ADMエージェントを展開する前にNetScaler CPXインスタンスを展開すると、NetScaler CPXはADMエージェントが展開されるまで登録を試み続けます。ADMエージェントが展開されると、NetScaler CPXインスタンスは環境変数とボリュームマウントファイルを介して提供された構成データを使用してADMエージェントに登録します。これにより、構成情報を含むNetScaler CPXの再展開を回避できます。

ADMエージェントにすでに登録されているNetScaler CPXインスタンスは、構成の変更後に別のADMエージェントへの登録を動的に変更できます。このため、すでにデプロイされているNetScaler CPXのConfigMapとシークレットの構成情報を更新できます。ConfigMapの作成元のファイルを新しいADMエージェントのIPアドレスまたはFQDNで更新し、古いConfigMapを削除してから、新しいConfigMapを作成する必要があります。同様に、既存のSecretを削除し、新しいADMエージェントの資格情報を使用して新しいSecretを作成する必要があります。

NetScaler CPXインスタンスのNetScaler ADMへの追加