Juniper Cloud-Native Router Controller(cRPD)
この章では、Juniper Cloud-Native RouterコントロールプレーンであるJuniper Cloud-Native Router-Controller(クラウドネイティブルーターコントローラまたはcRPD)について理解することができます。
Juniper Cloud-Native Router Controller のメリット
cRPDは、Juniper Cloud-Native Routerソリューションのコントロールプレーンとして機能します。cRPDは、ユーザー(CLI)とアプリケーション(API)に設定インターフェイスを同様に提供します。これらのインターフェイスを使用して、Juniper Cloud-Native Router-vRouter転送プレーンを設定またはプログラムすることができます。Juniper Cloud-Native Router-controllerを使用して、以下を設定することもできます。
-
仮想機能(VF)ファブリック インターフェイス
-
VF ワークロード インターフェイス
-
トランク インターフェイス
-
アクセス インターフェイス
-
L2 ACL(ファイアウォールルール)
-
ブリッジ ドメイン
-
イーサネットスイッチング
-
Vlan
cRPDは次の機能を実行します。
-
JCNR-vRouterを転送プレーンとしてサポート
-
トランクおよびアクセス インターフェイス、VF(仮想機能インターフェイス)、VLAN などの vRouter インターフェイスの設定を維持します
-
ブリッジ ドメインの設定を維持
-
L2ファイアウォールの設定を維持
-
ブリッジドメイン、VLAN、仮想スイッチなどの設定を維持
-
設定情報を vRouter エージェントを介して vRouter に渡します。
-
ライセンス キー情報を格納します。
構成オプション
導入時に、ソフトウェア配布 TAR ファイルに含まれる values.yaml ファイルに含まれるキーと値のペアの値を変更することで、cRPD を設定できます。
導入後、PyEZでNETCONFプロトコルを使用してcRPDを設定することを推奨します。PyEZの詳細については 、https://www.juniper.net/documentation/us/en/software/junos-pyez/junos-pyez-developer/index.html を参照してください。または、TCPポート24でcRPDに直接SSH接続するか、TCPポート830でNETCONFを使用することもできます。最後に、Kubernetesコマンドを使用してcRPD上のJunos CLIにアクセスし、cRPD Podに接続することで、クラウドネイティブルーターを構成することもできます。
CLI へのアクセス
In this procedure, we provide CLI commands that you run on the host server. We do not show a prompt before the commands so that you can copy and paste the commands into your own cloud-native router.
kubectl get pods -A
The output should look like:
NAMESPACE NAME READY STATUS RESTARTS AGE contrail-deploy contrail-k8s-deployer-7b5dd699b9-smqgn 1/1 Running 0 37h contrail contrail-vrouter-masters-htcvt 3/3 Running 0 37h default delete-crpd-dirs--1-bjngd 0/1 Completed 0 37h default delete-vrouter-dirs--1-k5wgb 0/1 Completed 0 37h default odu-pktgen-trunkint 1/1 Running 0 24h default odu-subinterface-3003 1/1 Running 0 7d kube-system calico-kube-controllers-57b9767bdb-76fvw 1/1 Running 52 (8d ago) 107d kube-system calico-node-pgljp 1/1 Running 18 (8d ago) 107d kube-system coredns-8474476ff8-2nbnv 1/1 Running 38 (8d ago) 107d kube-system dns-autoscaler-7f76f4dd6-8b4w5 1/1 Running 18 (8d ago) 107d kube-system kube-apiserver-nodem27.englab.juniper.net 1/1 Running 45 (8d ago) 107d kube-system kube-controller-manager-nodem27.englab.juniper.net 1/1 Running 34 (8d ago) 107d kube-system kube-crpd-worker-ds-89wzg 1/1 Running 0 32h kube-system kube-multus-ds-amd64-f2pls 1/1 Running 0 8d kube-system kube-proxy-vrqjm 1/1 Running 18 (8d ago) 107d kube-system kube-scheduler-nodem27.englab.juniper.net 1/1 Running 35 (8d ago) 107d kube-system nodelocaldns-hm56k 1/1 Running 43 (8d ago) 107d kube-system syslog-ng-54749b7b77-tqvpk 1/1 Running 0 37h
The command to access the cRPD CLI is in the form: kubectl exec -n kube-system -it <full cRPD Pod name> -- bash
. If we use the output mentioned earlier in this section, the command appears as: kubectl exec -n kube-system -it kube-crpd-worker-ds-89wzg -- bash
.
The output from the command (when you use the full name of your cRPD Pod) should look like:
Defaulted container "kube-crpd-worker" out of: kube-crpd-worker, jcnr-crpd-config (init), install-cni (init) ===> Containerized Routing Protocols Daemon (CRPD) Copyright (C) 2020-2021, Juniper Networks, Inc. All rights reserved. <===
This output indicates that you have accessed the cRPD CLI. At this point, your access level is root and you are in shell mode. Just as when you connect as root to any Junos OS-based device, you must enter the cli
command to access the Junos CLI in operation mode.