デュアルティアまたはサービスメッシュ Lite トポロジを設定するための詳細な手順
ソフトウェア要件
Kubernetes配布 | Kubernetesバージョン | コンテナーネットワークインターフェイス (CNI) | CPXバージョン | CIC バージョン | Citrix ADM バージョン | Citrix ADM エージェントのバージョン |
---|---|---|---|---|---|---|
オープンソース | v1.16.3 | フランネル | 13.0–41.28 | 1.5.25 | 13.0–47.22 | 13.0–47.22 |
はじめに
次のシナリオを使用して、サービスグラフを表示できます。
-
同じネットワーク上のCitrix ADMとKubernetesクラスター(たとえば、Citrix Hypervisor でホストされているCitrix ADMとKubernetesクラスター)。
-
Citrix ADM およびKubernetesクラスタが別のネットワーク上にインストールされている。このシナリオでは、 オンプレミスエージェントを設定し 、Kubernetes クラスタがホストされているネットワークにエージェントを登録する必要があります。
Citrix ADM でサービスグラフを使用するには、次の項目があることを確認してください。
-
プロキシとしてCitrix ADC CPXとKubernetesクラスター. 詳しくは、「 Citrix Ingress Controller」を参照してください。
-
Citrix ADMとCitrix ADC CPX間の通信を有効にするために、Citrix ADMで静的ルートを構成しました
-
CPX YAML ファイルに必要なパラメーターを追加して 、CPX を Citrix ADM に正常に登録できるようにしました。
-
Citrix ADM に Kubernetes クラスタが追加されました 。
-
仮想サーバの自動選択を有効にして 、仮想サーバのライセンスを取得しました。
-
Citrix ADMエージェントがHTTPトランザクションを取得できるように[Webトランザクション設定 ]を[ すべて ]に変更しました。
-
iStream.conf ファイルを更新し、TCPメトリックを取得するために、Citrix ADM エージェント用のTCP設定を[ すべて ]に変更しました。
ソフトウェア要件
Kubernetes配布 | Kubernetesバージョン | コンテナーネットワークインターフェイス (CNI) | CPXバージョン | CIC バージョン | Citrix ADM バージョン | Citrix ADM エージェントのバージョン |
---|---|---|---|---|---|---|
オープンソース | v1.16.3 | フランネル | 13.0–41.28 | 1.5.25 | 13.0–47.22 | 13.0–47.22 |
はじめに
次のシナリオを使用して、サービスグラフを表示できます。
-
同じネットワーク上のCitrix ADMとKubernetesクラスター(たとえば、Citrix Hypervisor でホストされているCitrix ADMとKubernetesクラスター)。
-
Citrix ADM およびKubernetesクラスタが別のネットワーク上にインストールされている。このシナリオでは、 オンプレミスエージェントを設定し 、Kubernetes クラスタがホストされているネットワークにエージェントを登録する必要があります。
Citrix ADM でサービスグラフを使用するには、次の項目があることを確認してください。
-
プロキシとしてCitrix ADC CPXとKubernetesクラスター. 詳しくは、「 Citrix Ingress Controller」を参照してください。
-
Citrix ADMとCitrix ADC CPX間の通信を有効にするために、Citrix ADMで静的ルートを構成しました
-
CPX YAML ファイルに必要なパラメーターを追加して 、CPX を Citrix ADM に正常に登録できるようにしました。
-
Citrix ADM に Kubernetes クラスタが追加されました 。
-
仮想サーバの自動選択を有効にして 、仮想サーバのライセンスを取得しました。
-
Citrix ADMエージェントがHTTPトランザクションを取得できるように[Webトランザクション設定 ]を[ すべて ]に変更しました。
-
iStream.conf ファイルを更新し、TCPメトリックを取得するために、Citrix ADM エージェント用のTCP設定を[ すべて ]に変更しました。
Citrix ADM で静的ルートを構成する
Kubernetes クラスター内では、コンテナー化されたすべての Pod はオーバーレイネットワークを使用します。これらのプライベート IP アドレスを直接使用して通信を確立することはできません。Citrix ADM からKubernetesクラスタへの通信を有効にするには、Citrix ADMで静的ルーティングを構成する必要があります。
注
オンプレミスエージェントを使用している場合は、エージェントにスタティックルートを設定してください。SSHクライアントを使用して、Citrix ADM エージェントにログオンし、静的ルートを構成します。
Kubernetes クラスターの次の IP アドレスがあるとします。
-
Kubernetes master – 101.xx.xx.112
-
Kubernetes worker 1 – 101.xx.xx.111
-
Kubernetes worker 2 – 101.xx.xx.110
Kubernetes マスターで、次のコマンドを実行して、静的ルーティングを行う Pod ネットワークを特定します。
kubectl get nodes -o jsonpath="{range .items[*]}{'podNetwork: '}{.spec.podCIDR}{'\t'}{'gateway: '}{.status.addresses[0].address}{'\n'}{end}"
次に、コマンドを実行した後の出力例を示します。
-
SSHクライアントを使用してCitrix ADM にログオンする
-
コマンド
route add -net <public IP address range> <Kubernetes IP address>
を使用して、静的ルーティングを設定します。例:
route add -net 192.168.0.0/24 101.xx.xx.112
route add -net 192.168.1.0/24 101.xx.xx.111
route add -net 192.168.2.0/24 101.xx.xx.110
-
設定を確認するには、
netstat -rn
を使用します -
これらのルートコマンドを
/mpsconfig/svm.conf
ファイルに追加します。-
Citrix ADM では、次のコマンドを使用して svm.conf ファイルにアクセスします。
vim /mpsconfig/svm.conf
-
静的ルートを svm.conf ファイルに追加します。
例:
route add -net 192.168.0.0/24 101.xx.xx.112
。
-
GitHub からサンプルデプロイファイルをダウンロードする
-
コマンド git clone
https://github.com/citrix/citrix-k8s-ingress-controller.git
を使用して、マスターノードでgitハブリポジトリをクローンします。 -
YAMLにアクセスするには:
cd citrix-k8s-ingress-controller/example/servicegraph-demo/
CPX YAMLファイルにパラメータを追加する
注
CPX 58.x 以降を使用している場合は、ADM エージェントへの登録時に nsroot 以外のパスワードを使用する必要があります。セキュリティを確保するために、Citrix ADM エージェント61.x以降のリリースでは、必須のパスワード変更が必要です。Citrix ADM エージェントを61.xまたは最新バージョンにアップグレードする場合は、必ず CPX 58.x以降の ビルドを使用する必要があります。
Citrix ADMにCPXを登録するには、 cpx.yaml
ファイルに次のパラメーターを含める必要があります。
- name: "NS_MGMT_SERVER"
value: "xx.xx.xx.xx"
- name: "NS_MGMT_FINGER_PRINT"
value: "xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx"
- name: "NS_HTTP_PORT"
value: "9080"
- name: "NS_HTTPS_PORT"
value: 9443"
- name: "NS_MGMT_USER"
value: "nsroot"
- name: "NS_MGMT_PASS"
value: <your password>
- name: "LOGSTREAM_COLLECTOR_IP"
value: "xx.xx.xx.xx"
<!--NeedCopy-->
-
NS_MGMT_SERVER :Citrix ADM IPアドレスを示します。
注
ADM エージェントが使用されている場合、これはオンプレミスエージェントの IP アドレスを示します。
-
NS_MGMT_FINGER_PRIN T:Citrix ADM におけるCPXの認証を示します。指紋を取得するには:
-
Citrix ADM で、[ 設定]>[管理]に移動します。
-
[ システム構成] で [ ADM フィンガープリントの表示] をクリックします。
注:
オンプレミスエージェントを設定している場合は、[ インフラストラクチャ] > [インスタンス] > [エージェント] に移動し、エージェントを選択して [ フィンガープリントの表示] をクリックします。
-
-
NS_HTTP_POR T:通信用のHTTPポートを示します。
-
NS_HTTPS_PORT :通信用のHTTPSポートを示します。
-
NS_MGMT_USER:ユーザー名 を示します。
-
NS_MGMT_PASS :パスワードを示します。お好みのパスワードを指定してください
-
LOGSTREAM_COLLECTOR_IP — Citrix ADMエージェントのIPアドレスを示します。CPXからADMにログデータを転送するには、 ログストリームプロトコルを有効にする必要があります
Citrix ADMでVPXまたはSDXまたはMPXまたはBLXインスタンスを追加する
サービスグラフで階層1のADCインスタンス分析を取得するには、Citrix ADMでVPX/SDX/MPX/BLXインスタンスを追加し、 Web Insightを有効にする必要があります。
-
インフラストラクチャ > インスタンス > Citrix ADCに移動します。
-
[ Add ] オプションをクリックして、インスタンスを追加します。詳しくは、「 Citrix ADM でのインスタンスの追加」を参照してください。
-
インスタンスを追加したら、仮想サーバーを選択し、 Web Insightを有効にします。詳しくは、「 仮想サーバーでのライセンスの管理と分析の有効化」を参照してください。
Citrix ADM で Kubernetes クラスターを追加する
Kubernetesクラスタを追加するには、次の手順に従います。
-
管理者の資格情報を使用してCitrix ADM にログオンします。
-
[ オーケストレーション ] > [ Kubernetes ] > [ クラスタ] に移動します。 「クラスタ」ページが表示されます。
-
[追加] をクリックします。
-
[ クラスタの追加 ] ページで、次のパラメータを指定します。
-
[名前 ]: 任意の名前を指定します。
-
API サーバー URL -Kubernetes マスターノードから API サーバー URL の詳細を取得できます。
-
Kubernetes マスターノードで、コマンド
kubectl cluster-info
を実行します。 -
「Kubernetes マスターが実行中です」と表示される URL を入力します。
-
-
認証トークン -認証トークンを指定します。認証トークンは、KubernetesクラスタとCitrix ADM 間の通信へのアクセスを検証するために必要です。認証トークンを生成する手順は、次のとおりです。
Kubernetes マスターノードで、次の操作を行います。
-
次の YAML を使用してサービスアカウントを作成します。
apiVersion: v1 kind: ServiceAccount metadata: name: <name> namespace: <namespace> <!--NeedCopy-->
-
kubectl create -f <yaml file>
を実行します。サービスアカウントが作成されます。
-
kubectl create clusterrolebinding <name> --clusterrole=cluster-admin --serviceaccount=<namespace>:<name>
を実行して、クラスターの役割をサービスアカウントにバインドします。これで、サービスアカウントはクラスタ全体にアクセスできるようになります。
トークンは、サービスアカウントの作成中に自動的に生成されます。
-
kubectl describe sa <name>
を実行してトークンを表示します。 -
シークレット文字列を取得するには、
kubectl describe secret <token-name>
を実行します。
-
-
リストからエージェントを選択します。
注
オンプレミスエージェントを使用している場合は、CPX YAML に追加したものと同じエージェントを選択してください。
-
[Create] をクリックします。
-
サンプルのマイクロサービスアプリケーションのデプロイ
マスターノードの場合:
-
kubectl create -f namespace.yaml
を実行して名前空間を作成します。 -
次のコマンドを使用して、
hotdrink
マイクロサービス、入力、およびシークレットを展開します。kubectl create -f team_hotdrink.yaml -n sg-demo
kubectl create -f hotdrink-secret.yaml -n sg-demo
CPX を展開して、ADM に CPX を登録する
-
kubectl create -f rbac.yaml
を実行して、クラスターの役割とクラスターのバインドを展開します。 -
kubectl create -f cpx.yaml -n sg-demo
を実行してCPXをデプロイします。
展開後、CPX 登録は自動的に行われます。
ライセンス用の仮想サーバの自動選択を有効にする
注
十分な仮想サーバライセンスがあることを確認してください。詳細については、「 ライセンス」を参照してください。
Citrix ADM でKubernetesクラスタを追加した後、ライセンス取得のために仮想サーバーを自動的に選択する必要があります。Service Graph にデータを表示するには、仮想サーバのライセンスが必要です。仮想サーバを自動選択するには、次の手順で行います。
-
[ 設定] > [ライセンスと分析の設定]に移動します。
-
[ 仮想サーバーライセンスの概要] で、 [仮想サーバーの自動選択] と [アドレス指定できない仮想サーバーの自動選択] を有効にします。
Web トランザクションと TCP トランザクションの設定を有効にする
Kubernetes クラスターを追加し、自動選択仮想サーバーを有効にした後、[ Web トランザクション設定] と [ TCP トランザクション設定 ]を [ すべて] に変更します。
-
設定 > アナリティクスの設定に移動します。
[アナリティクス設定] ページが表示されます。
-
[ 分析機能の有効化] をクリックします。
-
「 Webトランザクションの設定」で、「 すべて」を選択します。
-
[ TCP トランザクションの設定]で、[ すべて] を選択します。
-
[OK] をクリックします。
マイクロサービスへのトラフィックの送信
次に、トラフィックをマイクロサービスに送信して、Citrix ADM に表示されるサービスグラフを取得する必要があります。
-
NodePortを介してCPXを公開するために
kubectl get svc -n sg-demo
を実行します。 -
etc/host ファイルを編集し、
hotdrink.beverages.com
のドメインIPエントリを作成します。https://hotdrink.beverages.com
を使用してマイクロサービスに アクセスできるようになりました。
この記事の概要
- ソフトウェア要件
- はじめに
- ソフトウェア要件
- はじめに
- Citrix ADM で静的ルートを構成する
- GitHub からサンプルデプロイファイルをダウンロードする
- CPX YAMLファイルにパラメータを追加する
- Citrix ADMでVPXまたはSDXまたはMPXまたはBLXインスタンスを追加する
- Citrix ADM で Kubernetes クラスターを追加する
- サンプルのマイクロサービスアプリケーションのデプロイ
- CPX を展開して、ADM に CPX を登録する
- ライセンス用の仮想サーバの自動選択を有効にする
- Web トランザクションと TCP トランザクションの設定を有効にする
- マイクロサービスへのトラフィックの送信