Citrix ADC ingress controller

Helm チャートを使用して Citrix ingress controller を展開する

[ベアメタルおよびクラウド環境では](https://github.com/citrix/citrix-k8s-ingress-controller/tree/master/deployment) 、Citrix ingress controller を次のモードで展開できます。

Citrix ingress controller ヘルムチャートは、 Artifact Hubで入手できます。

Helm チャートを使用してデプロイする場合、各パラメーターを引数として指定する代わりに、 values.yaml ファイルを使用して構成可能なパラメーターの値を指定できます。Citrix itrixでは、 Citrix クラウドネイティブ展開用のvalues.yamlファイルを生成するためのGUIであるCitrix 展開ビルダーを提供しています

Citrix ingress controller をスタンドアロンポッドとして Kubernetes クラスターにデプロイする

Citrix-Ingress-Controller チャートを使用して、Citrix ingress controller を Kubernetes クラスター内のポッドとして実行します。このチャートでは、Citrix ingress controller がポッドとしてKubernetesクラスターにデプロイされ、Citrix ADC VPXまたはMPXイングレスデバイスが構成されます。

前提条件

  • コントローラがアプライアンスと通信するために必要な NS_IP アドレスを確認します。Citrix ADC展開のタイプに応じて、IPアドレスは次のいずれかになります。

    • (スタンドアロンアプライアンス)NSIP-スタンドアロンCitrix ADCアプライアンスの管理IPアドレス。詳しくは、「 Citrix ADC でのIPアドレッシング」を参照してください。

    • (高可用性モードのアプライアンス)SNIP-サブネットIPアドレス。詳しくは、「 Citrix ADC でのIPアドレッシング」を参照してください。

    • (クラスターモードのアプライアンス)CLIP-クラスター化されたCitrix ADC展開のクラスター管理IP(CLIP)アドレス。詳細については、「 クラスターの IP アドレス指定」を参照してください。

  • Ingressデバイスとして使用されるCitrix ADC VPXまたはMPXアプライアンスのユーザー名とパスワード。Citrix ADCアプライアンスには、Citrix ingress controller ADC VPXまたはMPXアプライアンスを構成できるように、特定の権限を持つシステムユーザーアカウント(デフォルト以外)が必要です。Citrix ADCでシステムユーザーアカウントを作成する手順については、Citrix ADCでのCitrix ingress controller システムユーザーアカウントの作成を参照してください

    ユーザー名とパスワードを直接渡すことも、Kubernetes シークレットを使用することもできます。Kubernetes シークレットを使用する場合は、以下のコマンドを使用して、ユーザー名とパスワードのシークレットを作成します。

     kubectl create secret  generic nslogin --from-literal=username='cic' --from-literal=password='mypassword'
    

Citrix ADCでCitrix ingress controller システムユーザーアカウントを作成する

Citrix ingress controller は、Citrix ADC のシステムユーザーアカウントを使用してCitrix ADCを構成します。Citrix Ingress ControllerがCitrix ADCで以下を構成する権限を持つように、システムユーザーアカウントには特定の権限が必要です。

  • CS(コンテンツスイッチング)仮想サーバの追加、削除、または表示
  • CS のポリシーとアクションの設定
  • 負荷分散 (LB) 仮想サーバーの構成
  • サービスグループの設定
  • SSL 証明書キーの構成
  • ルートの設定
  • ユーザーモニターの構成
  • システムファイルの追加 (Kubernetes から SSL 証明書キーをアップロードするため)
  • 仮想 IP アドレス (VIP) を構成する
  • Citrix ADCアプライアンスのステータスを確認する

システムユーザーアカウントを作成するには、次の手順に従います。

  1. Citrix ADCアプライアンスにログオンします。以下の手順に従います。
    1. PuTTY などのSSHクライアントを使用して、Citrix ADCアプライアンスへのSSH接続を開きます。

    2. 管理者の資格情報を使用して、アプライアンスにログオンします。

  2. 次のコマンドを使用して、system ユーザーアカウントを作成します。

    add system user <username> <password>
    

    次に例を示します:

    add system user cic mypassword
    
  3. システムユーザーアカウントに必要なアクセス権限を付与するポリシーを作成します。次のコマンドを使用します:

    add cmdpolicy cic-policy ALLOW '^(\?!shell)(\?!sftp)(\?!scp)(\?!batch)(\?!source)(\?!.*superuser)(\?!.*nsroot)(\?!install)(\?!show\s+system\s+(user|cmdPolicy|file))(\?!(set|add|rm|create|export|kill)\s+system)(\?!(unbind|bind)\s+system\s+(user|group))(\?!diff\s+ns\s+config)(\?!(set|unset|add|rm|bind|unbind|switch)\s+ns\s+partition).*|(^install\s*(wi|wf))|(^\S+\s+system\s+file)^(\?!shell)(\?!sftp)(\?!scp)(\?!batch)(\?!source)(\?!.*superuser)(\?!.*nsroot)(\?!install)(\?!show\s+system\s+(user|cmdPolicy|file))(\?!(set|add|rm|create|export|kill)\s+system)(\?!(unbind|bind)\s+system\s+(user|group))(\?!diff\s+ns\s+config)(\?!(set|unset|add|rm|bind|unbind|switch)\s+ns\s+partition).*|(^install\s*(wi|wf))|(^\S+\s+system\s+file)'
    

    :システムユーザアカウントには、定義したコマンドポリシーに基づく権限が付与されます。

    手順 3 で説明したコマンドポリシーは、組み込みのsysAdminコマンドポリシーと似ており、ファイルをアップロードする権限が追加されています。

    提供されているコマンドポリシー仕様では、Citrix ADC コマンドラインに簡単にコピーアンドペーストできるように、エスケープする必要のある特殊文字はすでに省略されています。

    Citrix ADC構成ウィザード(GUI)からコマンドポリシーを構成するには、次のコマンドポリシー仕様を使用します。

    ^(?!shell)(?!sftp)(?!scp)(?!batch)(?!source)(?!.*superuser)(?!.*nsroot)(?!install)(?!show\s+system\s+(user|cmdPolicy|file))(?!(set|add|rm|create|export|kill)\s+system)(?!(unbind|bind)\s+system\s+(user|group))(?!diff\s+ns\s+config)(?!(set|unset|add|rm|bind|unbind|switch)\s+ns\s+partition).*|(^install\s*(wi|wf))|(^\S+\s+system\s+file)^(?!shell)(?!sftp)(?!scp)(?!batch)(?!source)(?!.*superuser)(?!.*nsroot)(?!install)(?!show\s+system\s+(user|cmdPolicy|file))(?!(set|add|rm|create|export|kill)\s+system)(?!(unbind|bind)\s+system\s+(user|group))(?!diff\s+ns\s+config)(?!(set|unset|add|rm|bind|unbind|switch)\s+ns\s+partition).*|(^install\s*(wi|wf))|(^\S+\s+system\s+file)
    
  4. 以下のコマンドを使用して、ポリシーをシステムユーザーアカウントにバインドします。

    bind system user cic cic-policy 0
    

Citrix ingress controller をスタンドアロンポッドとして展開するには:

Citrix ingress controller をスタンドアロンポッドとして展開するには、Citrix ingress controller の Artifact Hubに記載されている手順に従います。

KubernetesクラスタにCitrix ADC CPXを使用してCitrixイングレスコントローラーをサイドカーとして展開する

Citrix 入力コントローラー搭載の Citrix CPX チャートを使用して、Citrix イングレスコントローラーを搭載したCitrix ADC CPX をサイドカーとして展開します。このグラフでは、Kubernetesクラスター内のマイクロサービスへのNorth-Southトラフィックの負荷分散に使用されるCitrix ADC CPXインスタンスが展開されます。サイドカーのCitrix ingress controller は、Citrix ADC CPXを構成します。

Citrix イングレスコントローラーをサイドカーとしてCitrix ADC CPXを展開するには、Citrix ingress controller Helm Hubに記載されている指示に従います

Helm チャートを使用して Citrix ingress controller を展開する