NetScaler Console で Kubernetes Ingress 構成を管理する

最終公開日 : Oct 02, 2026
Kubernetes (K8s) は、クラウドネイティブアプリケーションの展開、スケーリング、管理を自動化するオープンソースのコンテナオーケストレーションプラットフォームです。
Kubernetes は、クラスター外のクライアントトラフィックが Kubernetes クラスター内で実行されているアプリケーションのマイクロサービスにアクセスできるようにする Ingress 機能を提供します。NetScaler インスタンスは、Kubernetes クラスター内で実行されているアプリケーションへの Ingress として機能できます。NetScaler インスタンスは、クライアントから Kubernetes クラスター内の任意のマイクロサービスへの南北トラフィックをロードバランシングし、コンテンツルーティングできます。
注
  • NetScaler Console は、Kubernetes バージョン 1.14~1.21 のクラスターで Ingress 機能をサポートしています。
  • NetScaler Console は、NetScaler VPX および MPX アプライアンスを Ingress デバイスとしてサポートしています。
  • Kubernetes 環境では、NetScaler インスタンスは「NodePort」サービスタイプのみをロードバランシングします。
複数の NetScaler インスタンスを、同じクラスターまたは異なるクラスターや名前空間で Ingress デバイスとして機能するように構成できます。インスタンスを構成した後、Ingress ポリシーに基づいて各インスタンスを異なるアプリケーションに割り当てることができます。
Kubernetes kubectl または API を使用して Ingress 構成を作成および展開できます。NetScaler Console から Ingress を構成および展開することもできます。
NetScaler Console で Kubernetes 統合の次の側面を指定できます。
  • クラスター – NetScaler Console が Ingress 構成を展開できる Kubernetes クラスターを登録または登録解除できます。NetScaler Console でクラスターを登録するときは、Kubernetes API サーバー情報を指定します。次に、Kubernetes クラスターに到達し、Ingress 構成を展開できるエージェントを選択します。
  • ポリシー – Ingress ポリシーは、クラスターまたは名前空間に基づいて NetScaler インスタンスを選択し、Ingress 構成を展開するために使用されます。ポリシーを追加するときは、クラスター、サイト、およびインスタンス情報を指定します。

開始する前に

Kubernetes クラスターで NetScaler インスタンスを Ingress デバイスとして使用するには、以下があることを確認してください。
  • Kubernetes クラスターが配置されていること。
  • NetScaler Consoleに登録されているKubernetesクラスター。

Kubernetesクラスターを管理するためのシークレットトークンでNetScaler Consoleを構成する

NetScaler ConsoleがKubernetesからイベントを受信できるようにするには、NetScaler Console用のサービスアカウントをKubernetesに作成する必要があります。そして、クラスター内で必要なRBAC権限を持つようにサービスアカウントを構成します。
  1. NetScaler Console用のサービスアカウントを作成します。たとえば、サービスアカウント名はcitrixadm-saにすることができます。サービスアカウントの作成については、「複数のサービスアカウントを使用する」を参照してください。
  2. cluster-adminロールを使用してNetScaler Consoleサービスアカウントをバインドします。このバインディングにより、クラスター全体にわたるClusterRoleがサービスアカウントに付与されます。以下は、cluster-adminロールをサービスアカウントにバインドするコマンドの例です。
    kubectl create clusterrolebinding citrixadm-sa-admin --clusterrole=cluster-admin --serviceaccount=default:citrixadm-sa
    NetScaler Consoleサービスアカウントをcluster-adminロールにバインドすると、サービスアカウントはクラスター全体のアクセス権を持ちます。詳細については、「kubectl create clusterrolebinding」を参照してください。
  3. 作成したサービスアカウントからトークンを取得します。
    たとえば、次のコマンドを実行して、citrixadm-saサービスアカウントのトークンを表示します。
    kubectl describe sa citrixadm-sa
  4. 次のコマンドを実行して、トークンのシークレット文字列を取得します。
    kubectl describe secret <token-name>

NetScaler ConsoleにKubernetesクラスターを追加する

NetScalerエージェントを構成し、静的ルートを構成した後、NetScaler ConsoleにKubernetesクラスターを登録する必要があります。
Kubernetesクラスターを登録するには:
  1. 管理者資格情報を使用してNetScaler Consoleにログオンします。
  2. Orchestration > Kubernetes > Cluster の順に移動します。 クラスターページが表示されます。
  3. Add をクリックします。
  4. 「クラスターの追加」ページで、次のパラメーターを指定します。
    1. 名前 - 任意の名前を指定します。
    2. APIサーバーURL - KubernetesメインノードからAPIサーバーURLの詳細を取得できます。
      1. Kubernetesメインノードで、コマンド kubectl cluster-info を実行します。
        APIサーバーURL
      2. 「Kubernetes master is running at.」と表示されるURLを入力します。
    3. 認証トークン - NetScaler Consoleを構成してKubernetesクラスターを管理する際に取得した認証トークン文字列を指定します。認証トークンは、KubernetesクラスターとNetScaler Console間の通信アクセスを検証するために必要です。認証トークンを生成するには:
      1. Kubernetesメインノードで、次のコマンドを実行します。
        kubectl describe secret <token-name>
      2. 生成されたトークンをコピーし、認証トークンとして貼り付けます。
        詳細については、Kubernetes ドキュメントを参照してください。
    4. リストからエージェントを選択します。
    5. 「作成」をクリックします。
      クラスターの追加