This content has been machine translated dynamically.
Dieser Inhalt ist eine maschinelle Übersetzung, die dynamisch erstellt wurde. (Haftungsausschluss)
Cet article a été traduit automatiquement de manière dynamique. (Clause de non responsabilité)
Este artículo lo ha traducido una máquina de forma dinámica. (Aviso legal)
此内容已经过机器动态翻译。 放弃
このコンテンツは動的に機械翻訳されています。免責事項
이 콘텐츠는 동적으로 기계 번역되었습니다. 책임 부인
Este texto foi traduzido automaticamente. (Aviso legal)
Questo contenuto è stato tradotto dinamicamente con traduzione automatica.(Esclusione di responsabilità))
This article has been machine translated.
Dieser Artikel wurde maschinell übersetzt. (Haftungsausschluss)
Ce article a été traduit automatiquement. (Clause de non responsabilité)
Este artículo ha sido traducido automáticamente. (Aviso legal)
この記事は機械翻訳されています.免責事項
이 기사는 기계 번역되었습니다.책임 부인
Este artigo foi traduzido automaticamente.(Aviso legal)
这篇文章已经过机器翻译.放弃
Questo articolo è stato tradotto automaticamente.(Esclusione di responsabilità))
Translation failed!
NetScaler ADM でKubernetes入力構成を管理する
Kubernetes (K8s) は、クラウドネイティブアプリケーションのデプロイ、スケーリング、管理を自動化するオープンソースのコンテナオーケストレーションプラットフォームです。
Kubernetes は、クラスター外のクライアントトラフィックが Kubernetes クラスター内で実行されているアプリケーションのマイクロサービスにアクセスできるようにする Ingress 機能を提供します。ADC インスタンスは、Kubernetes クラスター内で実行されているアプリケーションの Ingress として機能します。ADC インスタンスは、クライアントから Kubernetes クラスター内の任意のマイクロサービスに North-South トラフィックをロードバランシングし、コンテンツルーティングできます。
注
- Citrix ADM は、Kubernetes バージョン 1.14 以降を搭載したクラスターのイングレス機能をサポートしています。
- NetScaler ADM は、入力デバイスとしてNetScaler ADC VPX およびMPXアプライアンスをサポートしています。
- Kubernetes環境では、NetScaler ADCインスタンスは「nodePort」サービスタイプのみを負荷分散します。
複数の ADC インスタンスを、同じクラスタまたは異なるクラスタまたは名前空間上で入力デバイスとして動作するように設定できます。インスタンスを構成したら、Ingress ポリシーに基づいて各インスタンスを異なるアプリケーションに割り当てることができます。
Kubernetes kubectl
または API を使用して Ingress 設定を作成してデプロイできます。NetScaler ADM から Ingress を構成して展開することもできます。
ADM では、Kubernetes 統合の次の側面を指定できます。
-
クラスター — ADM が Ingress 設定をデプロイできる Kubernetes クラスターを登録または登録解除できます。NetScaler ADM にクラスターを登録するときは、Kubernetes API サーバー情報を指定します。次に、Kubernetes クラスターにアクセスして Ingress 設定をデプロイできる ADM エージェントを選択します。
-
Policies — Ingress ポリシーは、Ingress 設定をデプロイするクラスターまたは名前空間に基づいて ADC インスタンスを選択するために使用されます。ポリシーを追加するときに、クラスタ、サイト、およびインスタンスの情報を指定します。
-
入力設定:この設定 は Kubernetes 入力設定です。この設定には、コンテンツスイッチングルールと、マイクロサービスとそのポートの対応する URL パスが含まれます。Kubernetes シークレットリソースを使用して SSL/TLS 証明書を指定することもできます (ADC インスタンスの SSL 処理をオフロードするため)。
NetScaler ADM は、入力ポリシーを使用して、入力構成をADCインスタンスに自動的にマッピングします。
Ingress構成が成功するたびに、NetScaler ADMはStyleBook ConfigPackを生成します。ConfigPack は、入力設定に対応する ADC インスタンスに適用される ADC 設定を表します。ConfigPack を表示するには、[ アプリケーション] > [StyleBook] > [構成] に移動します。
はじめに
NetScaler ADC インスタンスを Kubernetes クラスターで Ingress デバイスとして使用するには、次のものがあることを確認します。
-
Kubernetesクラスターが存在する。
-
NetScaler ADM に登録された Kubernetes クラスター。
秘密トークンを使用してNetScaler ADM を構成し、Kubernetesクラスタを管理する
NetScaler ADM がKubernetesからイベントを受信できるようにするには、KubernetesでNetScaler ADM 用のサービスアカウントを作成する必要があります。また、クラスタで必要な RBAC アクセス許可を使用してサービスアカウントを構成します。
-
NetScaler ADM サービスアカウントを作成します。たとえば、サービスアカウント名は
citrixadm-sa
になります。サービスアカウントを作成するには、「 複数のサービスアカウントを使用する」を参照してください。 -
cluster-admin
ロールを使用して、NetScaler ADM サービスアカウントをバインドします。このバインドにより、クラスタ全体にわたってClusterRole
がサービスアカウントに付与されます。cluster-admin
ロールをサービスアカウントにバインドするコマンドの例を次に示します。kubectl create clusterrolebinding citrixadm-sa-admin --clusterrole=cluster-admin --serviceaccount=default:citrixadm-sa <!--NeedCopy-->
NetScaler ADM サービスアカウントを
cluster-admin
ロールにバインドすると、そのサービスアカウントはクラスター全体にアクセスできるようになります。詳細については、「kubectl
createclusterrolebinding
」を参照してください。 -
作成したサービスアカウントからトークンを取得します。
たとえば、以下のコマンドを実行して、
citrixadm-sa
サービスアカウントのトークンを表示します。kubectl describe sa citrixadm-sa <!--NeedCopy-->
-
次のコマンドを実行して、トークンのシークレット文字列を取得します。
kubectl describe secret <token-name> <!--NeedCopy-->
NetScaler ADM に Kubernetes クラスタを追加する
NetScaler ADM エージェントを構成して静的ルートを構成したら、Kubernetes クラスターを NetScaler ADM に登録する必要があります。
Kubernetes クラスターを登録するには、次の手順を実行します。
-
管理者の資格情報を使用してNetScaler ADM にログオンします。
-
オーケストレーション > Kubernetes > クラスタに移動します。 [クラスタ] ページが表示されます。
-
[追加] をクリックします。
-
[クラスタの追加 ] ページで、次のパラメータを指定します。
-
[名前]: 任意の名前を指定します。
-
API サーバー URL -Kubernetes メインノードから API サーバーの URL の詳細を取得できます。
-
Kubernetes メインノードで、
kubectl cluster-info
コマンドを実行します。 -
「Kubernetes マスターが実行中です。」と表示される URL を入力します。
-
-
認証トークン - Kubernetesクラスターを管理するようにNetScaler ADMを構成するときに取得した認証トークン文字列を指定します。認証トークンは、KubernetesクラスターとNetScaler ADM間の通信へのアクセスを検証するために必要です。認証トークンを生成する手順は、次のとおりです。
-
Kubernetes メインノードで、次のコマンドを実行します。
kubectl describe secret <token-name> <!--NeedCopy-->
-
生成されたトークンをコピーし、認証トークンとして貼り付けます。
詳細については、 Kubernetes ドキュメントを参照してください。
-
-
リストからエージェントを選択します。
-
[作成] をクリックします。
-
入力ポリシーの定義
Ingressポリシーは、Ingressクラスターまたは名前空間に基づいて、Ingress構成の展開に使用されるNetScaler ADCを決定します。
-
[ オーケストレーション] > [Kubernetes] > [ポリシー]に移動します。
-
[Add] をクリックしてポリシーを作成します。
-
ポリシー名を指定します。
-
Kubernetes クラスターに Ingress 設定をデプロイするための条件を定義します 。これらの条件は通常、Ingress クラスターと名前空間に基づいています。
-
[インフラストラクチャ] パネルで、
-
サイト -リストからサイトを選択します。
-
[インスタンス ]-リストから ADC インスタンスを選択します。
[ サイト ] リストと [ インスタンス ] リストには、[ 条件 ] パネルで選択したクラスタに基づいてオプションが入力されます。
これらのリストには、Kubernetesクラスタで構成されたNetScaler ADMエージェントに関連付けられているサイトまたはインスタンスが表示されます。
-
-
[ Choose Network] で、ADM が仮想 IP アドレスを入力構成に自動的に割り当てるネットワークを選択します。
このリストには、[ネットワーク] > [IPAM] で作成されたネットワークが表示されます。
-
[作成] をクリックします。
-
Ingress 設定をデプロイする
kubectl
、Kubernetes API または他のツールを使用して 、Kubernetes から Ingress 設定をデプロイできます。Ingress構成をNetScaler ADMから直接展開することもできます。
-
オーケストレーション > Kubernetes > イングレスに移動します。
-
[追加] をクリックします。
-
「 Create Ingress 」フィールドで、次の詳細を指定します。
-
Ingress の名前を指定します。
-
[ クラスター] で、Ingress をデプロイする Kubernetes クラスターを選択します。
-
リストから [ クラスタ名前空間 ] を選択します。このフィールドには、指定した Kubernetes クラスターに存在する名前空間が一覧表示されます。
-
必要に応じて、[ フロントエンド IP アドレスの自動割り当て] を選択します。
-
リストから [ 入力プロトコル ] を選択します。 HTTPSを選択した場合は、 TLS シークレットを指定します。
このシークレットには、HTTPS 証明書とプライベートキーを埋め込む Kubernetes シークレットリソースが埋め込まれます。
HTTPS Ingress には、Kubernetes クラスターに設定された TLS ベースのシークレットが必要です。
tls.crt
およびtls.key
フィールドを指定して、サーバ証明書と証明書キーをそれぞれ含めます。 -
コンテンツルーティングでは、次の詳細を指定します。
-
URL パス -Kubernetes サービスとポートに関連付けられているパスを指定します。
-
Kubernetes サービス -目的のサービスを指定します。
-
[ポート ]-サービスポートを指定します。
-
LB メソッド -選択した Kubernetes サービスに優先する負荷分散方法を選択します。
選択したメソッドは、Ingress 仕様を適切なアノテーションで更新します。たとえば、 ROUNDROBIN メソッドを選択すると、Citrix アノテーションは次のように表示されます。
"lbmethod":"ROUNDROBIN" <!--NeedCopy-->
-
パーシステンスタイプ -選択した Kubernetes サービスに優先する負荷分散パーシステンスタイプを選択します。
選択した永続性タイプは、Ingress 仕様を適切な注釈で更新します。たとえば、 COOKIEINSERTを選択すると、Citrix 注釈は次のように表示されます。
"persistenceType":"COOKIEINSERT" <!--NeedCopy-->
[ Add ] をクリックして、Ingress 設定に URL パスとポートを追加します。
デプロイ後、Ingress 設定は以下に基づいてクライアントトラフィックを特定のサービスにリダイレクトします。
- 要求された URL パスとポート。
- 定義された LB メソッドと永続性タイプ。
(注)
イングレス構成で使用される Kubernetes サービスは NodePort タイプであることが想定されます。
-
-
オプションで、[ イングレス説明] を指定します。
-
[ 展開] をクリックします
デプロイする前に設定を確認する場合は、[ Ingress Spec の生成] をクリックします。指定された Ingress 設定は YAML 形式で表示されます。設定を確認したら、[ Deploy] をクリックします。
-
(注) Ingress 構成を使用して作成された仮想サーバーにライセンスを適用します。ライセンスを適用するには、次の手順に従います。
- [ システム] > [ライセンスと分析] に移動します。
- [ 仮想サーバーライセンスの概要] で、 [仮想サーバーの自動選択]を有効にします。
共有
共有
This Preview product documentation is Cloud Software Group Confidential.
You agree to hold this documentation confidential pursuant to the terms of your Cloud Software Group Beta/Tech Preview Agreement.
The development, release and timing of any features or functionality described in the Preview documentation remains at our sole discretion and are subject to change without notice or consultation.
The documentation is for informational purposes only and is not a commitment, promise or legal obligation to deliver any material, code or functionality and should not be relied upon in making Cloud Software Group product purchase decisions.
If you do not agree, select I DO NOT AGREE to exit.