OpenShiftデプロイメント用のCloud-Native Router Helmチャートのカスタマイズ
Juniper Cloud-Native Routerは、L2、L3またはL2-L3モードで導入して運用できます。展開モードを設定するには、展開前に values.yaml
ファイル内の適切な属性を編集します。
-
values.yaml
ファイルのfabricInterface
キーで、次の操作を行います。-
すべてのインターフェイスに
interface_mode
キーが設定されている場合、展開モードは L2 になります。 -
1 つ以上のインターフェイスで
interface_mode
キーが設定され、残りのインターフェイスにinterface_mode
キーがない場合、展開モードは L2-L3 になります。 -
どのインターフェイスにも
interface_mode
キーが設定されていない場合、展開モードはL3になります。
-
Juniper_Cloud_Native_Router_release-number/helmchart/values.yaml
ファイルを使用して Helm チャートをカスタマイズします。Helm チャートの構成キーを以下の表に示します。
OpenShift デプロイメントの Helm チャートの説明
Juniper_Cloud_Native_Router_<release>/helmchart/jcnr/values.yaml ファイルを使用して Helm チャートをカスタマイズします。デフォルトのvalues.yamlのコピーは、「Cloud-Native RouterのデフォルトHelmチャート」で提供しています。
表 1 には、OpenShift デプロイメントの values.yaml で設定可能な属性の説明が含まれています。
キー | の説明 | ||||
---|---|---|---|---|---|
グローバル | |||||
記帳 | Cloud-Native Routerコンテナ・イメージのDockerレジストリを定義します。デフォルト値は enterprise-hub.juniper.net です。tarball で提供されるイメージは、デフォルトのレジストリ名でタグ付けされます。コンテナー イメージをプライベート レジストリにホストする場合は、既定値をレジストリ URL に置き換えます。 |
||||
リポジトリ | (オプション)Cloud-Native Routerコンテナ・イメージのリポジトリ・パスを定義します。これは、common セクションのrepository パスより優先されるグローバルキーです。デフォルトはjcnr-container-prod/ です。 |
||||
imagePullSecret (英語) | (オプション)Docker レジストリー認証資格情報を定義します。資格情報は、Juniper Networks enterprise-hub.juniper.net レジストリまたはプライベートレジストリのいずれかに構成できます。 | ||||
registryCredentials | Docker レジストリ資格情報の Base64 表現。詳細は、 リポジトリ資格証明の構成 を参照してください。 | ||||
secretName (シークレット名) | 作成されるシークレットオブジェクトの名前。 | ||||
コモン | さまざまなCloud-Native Routerコンテナイメージのリポジトリパスとタグを定義します。プライベートレジストリを使用しない限り、defaultを使用します。 | ||||
リポジトリ | リポジトリ パスを定義します。デフォルト値は jcnr-container-prod/ です。グローバルリポジトリキーが定義されている場合、優先されます。 |
||||
タグ | イメージ タグを定義します。デフォルト値は、Cloud-Native Routerのリリースバージョンに適したタグ番号に設定されています。 | ||||
レプリカ | (オプション)cRPDのレプリカの数を示します。既定値は 1 です。このキーの値は、マルチノードクラスターに対して指定する必要があります。この値は、JCNR を実行しているノードの数と等しくなります。 | ||||
noLocalSwitching | (オプション)ブリッジ ドメイン内のインターフェイスによるイーサネット フレーム コピーの送受信を防ぎます。VLAN ID に属するインターフェイスが互いにフレームを送信しないようにするために、1 つ以上の VLAN ID をカンマで区切って入力します。このキーは、L2 および L2-L3 展開に固有です。このキーを有効にすると、すべてのアクセス インターフェイスで機能が提供されます。トランク インターフェイスでこの機能を有効にするには、fabricInterface で no-local-switching を設定します。詳細については、「ローカル スイッチングの防止」を参照してください。 |
||||
iamロール | 該当なし。 | ||||
ファブリックインターフェイス | 複数のインターフェイスからトラフィックを受信する集約されたインターフェイス。ファブリックインターフェイスは常に物理インターフェイスです。それらは、物理機能 (PF) または仮想機能 (VF) のいずれかです。これらのインターフェイスのスループット要件はより高いため、複数のハードウェア キューが割り当てられます。各ハードウェア キューには、専用の CPU コアが割り当てられます。詳細については、 Cloud-Native Routerインターフェイスの概要 を参照してください。 このフィールドを使用して、DPDK にバインドするファブリック インターフェイスの一覧を提供します。インターフェイス名の代わりにサブネットを指定することもできます。インターフェイス名とサブネットの両方が指定されている場合、インターフェイス名がサブネット/ゲートウェイの組み合わせよりも優先されます。サブネット/ゲートウェイの組み合わせは、マルチノード クラスタでインターフェイス名が異なる場合に便利です。
手記:
例えば: # L2 only - eth1: ddp: "auto" interface_mode: trunk vlan-id-list: [100, 200, 300, 700-705] storm-control-profile: rate_limit_pf1 native-vlan-id: 100 no-local-switching: true # L3 only - eth1: ddp: "off" # L2L3 - eth1: ddp: "auto" - eth2: ddp: "auto" interface_mode: trunk vlan-id-list: [100, 200, 300, 700-705] storm-control-profile: rate_limit_pf1 native-vlan-id: 100 no-local-switching: true |
||||
サブネット | インターフェイス名を入力する代替モード。例えば: - subnet: 10.40.1.0/24 gateway: 10.40.1.1 ddp: "off"
|
||||
DDPの | (オプション)インターフェイスレベルのDDP(Dynamic Device Personalization)設定を示します。DDPは、GTPU、SCTPなどのトラフィックに対してNICでデータパス最適化を提供します。ボンディングインターフェイスの場合、DDP設定を有効にするには、すべてのスレーブインターフェイスNICがDDPをサポートしている必要があります。詳細については、「 個々のインターフェイスでの動的デバイスパーソナライゼーション(DDP)の有効化 」を参照してください。 オプションには、自動、オン、オフがあります。デフォルトはオフです。
手記:
インターフェイスレベル |
||||
interface_mode | L2インターフェイスには interface_mode: trunk |
||||
vlan-id-list | インターフェイスに関連付けられているVLAN IDのリストを提供します。 |
||||
ストーム制御プロファイル |
|
||||
ネイティブVLAN ID |
fabricInterface: - bond0: interface_mode: trunk vlan-id-list: [100, 200, 300] storm-control-profile: rate_limit_pf1 native-vlan-id: 100 詳細については、「 ネイティブ VLAN 」を参照してください。 |
||||
no-local-switching | 設定時にインターフェイス同士が直接通信することを防ぎます。使用できる値は true または false です。詳細については、「 ローカル スイッチングの防止 」を参照してください。 | ||||
fabricワークロードインターフェイス | (オプション)さまざまなワークロードが接続されるインターフェイスを定義します。インターフェイスには、ソフトウェアベースまたはハードウェアベースのものがあります。 | ||||
log_level | ログの重大度を定義します。使用可能な値オプションは、DEBUG、INFO、WARN、および ERR です。
手記:
ジュニパーネットワークスのサポートから変更するように指示されない限り、デフォルトのINFOに設定したままにしておきます。 |
||||
log_path | 定義されたディレクトリには、 contrail-vrouter-agent.log、 contrail-vrouter-dpdk.logなど、JCNR関連のさまざまな記述ログが格納されます。デフォルトは /var/log/jcnr/ です。 |
||||
syslog_notifications | 生成された |
||||
コアパターン | コア・ファイルの
手記:
JCNRを展開する前に、ホストに |
||||
coreFileパス | core ファイルへのパスを示します。デフォルトは /var/crash です。 |
||||
nodeAffinity | (オプション)ノードのラベルを定義して、vRouter Pod を配置する場所を決定します。 デフォルトでは、vRouter Pod はクラスタのすべてのノードにデプロイされます。 以下の例では、ノードアフィニティラベルは nodeAffinity: - key: key1 operator: In values: - jcnr OCP設定では、ワーカー・ノードでのみCloud-Native Routerを起動するようにノード・アフィニティを設定する必要があります。例えば: nodeAffinity: - key: node-role.kubernetes.io/worker operator: Exists - key: node-role.kubernetes.io/master operator: DoesNotExist
手記:
このキーはグローバル設定です。 |
||||
鍵 | ノード アフィニティを適用するために一致する必要があるノード ラベルを表すキーと値のペア。 | ||||
演算子 | ノードラベルと、ポッド仕様の matchExpression パラメーターの値のセットとの関係を定義します。この値には、In、NotIn、Exists、DoesNotExist、Lt、または Gt を指定できます。 | ||||
cni_bin_dir | Red Hat OpenShift の場合は、このフィールドを空のままにしないでください。/ var/lib/cni/bin に設定します。これは、すべての OCP デプロイメントのデフォルトパスです。 | ||||
grpcTelemetryPort | (オプション)このパラメーターの値を入力して、cRPD テレメトリ gRPC サーバーのデフォルト ポート 50053 を上書きします。 |
||||
grpcVrouterPort | (オプション)既定値は 50052 です。上書きするように設定します。 | ||||
vRouterDeployerPort | (オプション)デフォルトは 8081 です。上書きするように設定します。 | ||||
jcnr-vrouter | |||||
cpu_core_mask | 存在する場合は、静的 CPU 割り当てを使用してコアを転送プレーンに割り当てることを示します。 この値は、転送プレーンに静的に割り当てる分離された CPU コアのコンマ区切りリストである必要があります (例: Kubernetes CPU Manager を使用してコアを転送プレーンに割り当てる場合は、これをコメントアウトします。
手記:
静的 CPU 割り当てと Kubernetes CPU Manager を同時に使用することはできません。両方を使用すると、予期しない動作が発生する可能性があります。 |
||||
保証型VrouterCPU | 存在する場合は、Kubernetes CPU マネージャーを使用して CPU コアを転送プレーンに割り当てることを示します。 この値は、Kubernetes CPU Manager が転送プレーンに割り当てる保証された CPU コアの数である必要があります。この値は、転送コアの数より少なくとも 1 つ多い値に設定する必要があります。 静的 CPU 割り当てを使用してコアを転送プレーンに割り当てる場合は、これをコメント アウトします。
手記:
静的 CPU 割り当てと Kubernetes CPU Manager を同時に使用することはできません。両方を使用すると、予期しない動作が発生する可能性があります。 |
||||
dpdkCtrlスレッドマスクdpdkCtrlThreadMask | 静的 CPU 割り当てを使用する場合に、vRouter DPDK 制御スレッドに割り当てる CPU コアを指定します。このリストは、
Kubernetes CPU Manager を使用してコアを転送プレーンに割り当てる場合は、これをコメントアウトします。 |
||||
serviceCoreMask (サービスコアマスク) | 静的CPU割り当てを使用する場合に、vRouter DPDKサービススレッドに割り当てるCPUコアを指定します。このリストは、
Kubernetes CPU Manager を使用してコアを転送プレーンに割り当てる場合は、これをコメントアウトします。 |
||||
numServiceCtrlスレッドCPU | Kubernetes CPU Manager使用時に、vRouter DPDKサービス/制御トラフィックに割り当てるCPUコア数を指定します。 この数は、 静的 CPU 割り当てを使用してコアを転送プレーンに割り当てる場合は、これをコメント アウトします。 |
||||
インターフェイスの復元 | vRouter Podがクラッシュまたは再起動した場合、またはCloud-Native Routerがアンインストールされた場合にインターフェイスを元の状態に戻すには、trueに設定します。 | ||||
bondInterfaceConfigs (ボンドインターフェイス設定) | (オプション)L2 または L2-L3 展開でのみボンディングインターフェイス設定を有効にします。 | ||||
名前 | ボンディング・インターフェースの名前。 | ||||
モード | 1 (アクティブ バックアップ) に設定します。 | ||||
スレーブインターフェイス | ボンディングするファブリックインターフェイスのリスト。 | ||||
プライマリインターフェイス | (オプション)ボンディングのプライマリインターフェイス。 |
||||
|
slaveNetwork詳細 |
該当なし。 | |||
MTU | すべての物理インターフェイス(VFおよびPF)のMTU(最大伝送単位)値。デフォルトは 9000 です。 | ||||
stormControlProfiles | ファブリックインターフェイス上のBUMトラフィックのレート制限プロファイルをバイト/秒で設定します。詳細は /Content/l2-bum-rate-limiting_xi931744_1_1.dita を参照してください。 | ||||
dpdkコマンド追加引数 | 追加の DPDK コマンド ライン パラメーターを渡します。この dpdkCommandAdditionalArgs: "--yield_option 0 --dpdk_txd_sz 2048 --dpdk_rxd_sz 2048 --vr_mempool_sz 131072" |
||||
dpdk_monitoring_thread_config | (オプション)vRouter DPDKコンテナの監視スレッドを有効にします。 loggingInterval 秒ごとに、 loggingMask で示される情報を含むログが生成されます。 |
||||
ロギングマスク | 生成する情報を指定します。次のようにビット位置を持つビットマスクで表されます。
|
||||
ロギング間隔 | ログ生成の間隔を秒単位で指定します。 | ||||
DDPの | (オプション)グローバルな動的デバイス個人用設定 (DDP) 構成を示します。DDPは、GTPU、SCTPなどのトラフィックに対してNICでデータパス最適化を提供します。ボンディングインターフェイスの場合、DDP設定を有効にするには、すべてのスレーブインターフェイスNICがDDPをサポートしている必要があります。詳細については、「 個々のインターフェイスでの動的デバイスパーソナライゼーション(DDP)の有効化 」を参照してください。 オプションには、自動、オン、オフがあります。デフォルトはオフです。
手記:
インターフェイスレベル |
||||
qos有効化 | QoS を有効または無効にするには、true または false に設定します。詳細については、「 サービス品質(QoS)」 を参照してください。
手記:
QoS は Intel X710 NIC ではサポートされていません。 |
||||
vrouter_dpdk_uio_driver | uio ドライバは vfio-pci です。 |
||||
agentModeType (エージェントモードタイプ) | dpdk に設定します。 |
||||
fabricRpfCheckDisable | false に設定すると、すべての Cloud-Native Router ファブリックインターフェイスで RPF チェックが有効になります。デフォルトでは、RPF チェックは無効になっています。 | ||||
テレメトリー | (オプション)cRPDテレメトリ設定を行います。テレメトリの詳細については、「 テレメトリ機能 」を参照してください。 |
||||
無効にする | cRPD テレメトリを無効にするには、true に設定します。デフォルトはfalseで、cRPDテレメトリがデフォルトで有効であることを意味します。 |
||||
メトリックポート | cRPD テレメトリ エクスポーターが Prometheus クエリをリッスンしているポート。既定値は 8072 です。 |
||||
ログレベル | warn、warning、info、debug、trace、verbose のいずれか。既定値は info です。 |
||||
gnmi | (オプション)cRPD gNMI 設定を行います。 |
||||
|
|
||||
|
vRouterの | ||||
テレメトリー | (オプション)vRouter テレメトリを設定します。テレメトリの詳細については、「 テレメトリ機能 」を参照してください。 |
||||
|
|
|
|||
|
|
|
|||
|
|
|
|||
persistConfig | Cloud-Native Router オペレーターが生成したポッド構成をアンインストール後も保持する場合は、true に設定します。このオプションは、L2モード展開でのみ設定できます。既定値は false です。 | ||||
interfaceBoundType (インターフェイス バウンド タイプ) | 該当なし。 | ||||
ネットワーク詳細 | 該当なし。 | ||||
ネットワークリソース | 該当なし。 | ||||
Contrailツール | |||||
取り付ける | contrail-tools(デバッグに使用)をインストールするには、true に設定します。 |