JCNR-CNI
この章では、JCNR の主要なコンテナネットワークインターフェイスである JCNR-CNI について説明します。
JCNR-CNI は、ポッドが使用するセカンダリ インターフェイスを管理します。YAML 形式のネットワーク接続定義 (NAD) ファイルの構成に基づいて、必要なインターフェイスを作成します。JNCR-CNIは、一部のインターフェイスを最終的な場所または接続ポイントに渡す前に設定し、さらなるインターフェイス設定オプションのためのAPIを提供します。
-
JCNR-CNIは、さまざまな種類のポッドインターフェイスをインスタンス化します。
-
DPDKデータプレーンを活用するポッド用に、virtioベースの高性能インターフェイスを作成
-
ポッドが Linux カーネル ネットワーク スタックを使用して通信できるようにする veth ペア インターフェイスを作成します
-
ポッドインターフェイスをアクセスモードまたはトランクモードで作成
-
ポッド インターフェイスをブリッジ ドメインにアタッチします。
-
動的IPアドレス割り当て用のIPAMプラグインをサポート
-
virtio インターフェイスに一意のソケットインターフェイスを割り当てます。
-
L2 ACL(アクセスコントロールリスト)を JCNR-vRouter に適用します。
-
ポッド インターフェイスをブリッジ ドメインにアタッチします。
-
IP アドレスの割り当てや、Kubernetes クラスター内のポッドとホスト間のインターフェイスの設定など、ポッド内のネットワーク タスクを管理します
-
ファイアウォール・フィルター・ルールに変換される Kubernetes ネットワーク・ポリシーを適用します。JCNR-CNIは、データプレーンに適用するファイアウォールポリシーをJCNR-vRouterに送信します。
-
ポッドインターフェイスをネットワークに接続:ポッド間およびポッド間
-
パケット処理のオフロードのためにJCNR-vRouterと統合します
JCNR-CNIのメリット
-
ポッドインターフェイス管理の改善
-
カスタマイズ可能な管理および監視機能
-
アプリケーションセキュリティの向上
-
cRPDおよびvRouterコンポーネントとの緊密な統合によるパフォーマンスの向上
JCNR-CNI Cloud-Native Router内
JCNR-CNIは、さまざまなネットワーク接続ができる特殊なコンテナネットワークインターフェイスです。これは、ムルタスCNIと一緒に動作します。 図1 は、JCNR-CNIがJuniper Cloud-Native Routerの他のコンポーネントとどのように相互作用するかを示しています。
![JCNR-CNI in an L2 Deployment](/documentation/us/en/software/cloud-native-router23.1/cloud-native-router-user/images/JCNR-CNI-Orig.png)
ポッド作成におけるJCNR-CNIの役割
クラウドネイティブルーターで使用するポッドを作成すると、 kubelet と呼ばれるKubernetesコンポーネントがMultus CNIを呼び出して、ポッドネットワークとインターフェイスを設定します。Multus は pod.yaml ファイルの注釈セクションを読み取り、NAD を見つけます。NAD が CNI プラグインとして JCNR-CNI を指している場合、Multus は JCNR-CNI を呼び出してポッド インターフェイスを設定します。JCNR-CNI は、NAD で指定されたインターフェイスを作成します。その後、JCNR-CNIは設定を生成し、cRPDにプッシュします。
ネットワーク添付ファイルの定義
NAD ファイルは、ポッド作成のインターフェイス作成フェーズ中に Multus CNI が使用する YAML ファイルです。NAD はインターフェイスの MAC アドレスを指定し、IP アドレスを割り当てます。各ポッドは 1 つ以上の NAD を使用できます(通常はポッド インターフェイスごとに 1 つ)。ポッド YAML ファイルでは、ポッドの作成に使用する NAD がネットワーク アノテーション セクションに一覧表示されます。ポッドにインターフェイスを作成するだけでなく、NAD は仮想スイッチを作成できます。NAD は、ポッド インターフェイスを L2 スイッチング インスタンスにアタッチします。 表 1 に、サポートされる L2 インターフェイスのタイプとモードを示します。
インターフェイス モード | 特性 | コメント |
---|---|---|
アクセス |
タグなしパケットがポッドへのリンクを通過できるようにします | ブリッジドメインに明示的にバインドする必要があります |
仮想スイッチは、非DPDKインターフェイスやSSHやsyslogなどのアプリケーションにアクセスモードを使用します | ||
トランク |
特別に設定されたVLAN範囲内のパケットを許可します | 暗黙的に 1 つ以上のブリッジ ドメインの一部 |
CNIによるIPアドレス割り当てなし | トランク モードの仮想スイッチは、DU ユーザー プレーン トラフィックを伝送します。 | |
IP アドレスが必要な場合、ポッドには DHCP などの独自の割り当て方法が必要です | Podを再起動せずに、5G環境でネットワークスライスを動的に追加および削除します |