第1章 複数ネットワークについて
デフォルトでは、OVN-Kubernetes が OpenShift Container Platform クラスターの Container Network Interface (CNI) として機能します。OpenShift Container Platform の管理者またはユーザーは、OVN-Kubernetes をクラスターのデフォルトの CNI として使用すると、ユーザー定義ネットワーク (UDN) または NetworkAttachmentDefinition (NAD) を活用して、クラスターの通常のネットワークトラフィックすべてを処理する 1 つまたは複数のデフォルトネットワークを作成できます。ユーザー定義ネットワークとネットワークアタッチメント定義は、どちらも次のネットワークタイプとして機能できます。
- プライマリーネットワーク: Pod のプライマリーネットワークとして機能します。デフォルトでは、Pod のルートが他のネットワーク経由でトラフィックを送信するように設定されていない限り、すべてのトラフィックがプライマリーネットワークを通過します。
- セカンダリーネットワーク: Pod の、デフォルトではないセカンダリーネットワークとして機能します。セカンダリーネットワークは、特定のトラフィックの種類または目的専用の個別のインターフェイスを提供します。セカンダリーネットワークを使用するように明示的に設定された Pod トラフィックのみが、そのインターフェイスを介してルーティングされます。
ただし、OpenShift Container Platform 管理者は、クラスターのインストール時に、Multus CNI プラグインを活用して、代替のデフォルトのセカンダリー Pod ネットワークを設定できます。Multus を使用すると、ipvlan、macvlan などの複数の CNI プラグインやネットワークアタッチメント定義を一緒に使用して、Pod のセカンダリーネットワークとして機能させることができます。
ユーザー定義ネットワークは、CNI として OVN-Kubernetes が使用されている場合にのみ使用できます。他の CNI での使用はサポートされていません。
利用可能な CNI プラグインに基づいてセカンダリーネットワークを定義し、そのネットワークのうち 1 つ以上を Pod に割り当てることができます。必要に応じて、クラスターに複数のセカンダリーネットワークを定義できます。これにより、スイッチングやルーティングなどのネットワーク機能を提供する Pod を設定する際に柔軟性が得られます。
サポートされている CNI プラグインの完全なリストは、OpenShift Container Platform のセカンダリーネットワーク を参照してください。
ユーザー定義ネットワークの詳細は、ユーザー定義ネットワーク (UDN) について を参照してください。
ネットワークアタッチメント定義の詳細は、NetworkAttachmentDefinition を使用したプライマリーネットワークの作成 を参照してください。
1.1. セカンダリーネットワークの使用シナリオ リンクのコピーリンクがクリップボードにコピーされました!
データプレーンとコントロールプレーンの分離など、ネットワークの分離が必要な状況で、セカンダリーネットワーク と呼ばれる 2 つ目のネットワークを使用できます。トラフィックの分離は、以下のようなパフォーマンスおよびセキュリティー関連の理由で必要になります。
パフォーマンス
トラフィック管理: 2 つの異なるプレーンでトラフィックを送信して、各プレーンのトラフィック量を管理できます。
セキュリティー
ネットワーク分離: セキュリティーを考慮して特別に管理されたネットワークプレーンに機密トラフィックを送信し、テナントまたは顧客間で共有してはならないプライベートデータを分離できます。
クラスターのすべての Pod はクラスター全体のデフォルトネットワークを依然として使用し、クラスター全体での接続性を維持します。すべての Pod には、クラスター全体の Pod ネットワークに割り当てられる eth0
インターフェイスがあります。Pod のインターフェイスは、oc exec -it <pod_name> -- ip a
コマンドを使用して表示できます。Multus CNI を使用するセカンダリーネットワークインターフェイスを追加する場合、それらの名前は net1
、net2
、…、netN
になります。
セカンダリーネットワークを Pod に割り当てるには、インターフェイスの割り当て方法を定義する設定を作成する必要があります。各インターフェイスは、UserDefinedNetwork
カスタムリソース (CR) または NetworkAttachmentDefinition
CR のいずれかを使用して指定します。これらの CR のそれぞれにある CNI 設定は、インターフェイスの作成方法を定義します。
UserDefinedNetwork
CR の作成の詳細は、ユーザー定義ネットワークについて を参照してください。
NetworkAttachmentDefinition CR の作成の詳細は、NetworkAttachmentDefinition を使用したプライマリーネットワークの作成 を参照してください。