4.4. カスタマイズされた br-ex ブリッジを含むマニフェストオブジェクトを作成する
単一のネットワークインターフェイスコントローラー (NIC) と標準的な OVS 設定を備えた標準環境が必要な場合は、デフォルトの OVS br-ex ブリッジ設定を使用することを検討してください。
デフォルトでは、OpenShift Container Platform はベアメタルノード上で Open vSwitch (OVS) br-ex ブリッジを自動的に設定します。高度なネットワーク要件に対応するため、NMState 設定ファイルを含む NodeNetworkConfigurationPolicy (NNCP) カスタムリソース (CR) を作成することで、デフォルトの動作を上書きできます。
Kubernetes NMState Operator がその NMState 設定ファイルを使用して、カスタマイズされた br-ex ブリッジネットワーク設定をクラスター内の各ノードに作成します。
NodeNetworkConfigurationPolicy CR を作成したら、クラスターのインストール中に作成された NMState 設定ファイルの内容を NNCP CR にコピーしてください。NNCP CR が不完全な場合、NNCP が既存のすべてのポリシーを上書きするため、ネットワーク接続が失われる可能性があります。
以下のいずれかのタスクには、カスタマイズされた br-ex ブリッジ設定の使用を検討してください。
-
Open vSwitch (OVS) または OVN-Kubernetes
br-exブリッジネットワークの変更など、ブリッジにインストール後の変更を加えたい場合。OVS のデフォルトのbr-exブリッジ機構は、インストール後のブリッジへの変更をサポートしていません。 - ホストまたはサーバーの IP アドレスで使用可能なインターフェイスとは異なるインターフェイスにブリッジをデプロイします。
-
デフォルトの OVS
br-exブリッジ機構では不可能な、ブリッジに対する高度な設定を行いたい場合。これらの設定にデフォルトのメカニズムを使用すると、ブリッジが複数のネットワークインターフェイスに接続できず、インターフェイス間のデータ転送が適切に行われない可能性があります。
次のインターフェイス名は予約されており、NMstate 設定では使用できません。
-
br-ext -
br-int -
br-local -
br-nexthop -
br0 -
ext-vxlan -
ext -
genev_sys_* -
int -
k8s-* -
ovn-k8s-* -
patch-br-* -
tun0 -
vxlan_sys_*
前提条件
- Kubernetes NMState Operator がインストールされている。
- ポリシーを適用したい特定のノードを特定しました。
手順
NodeNetworkConfigurationPolicy(NNCP) CR を作成し、カスタマイズされたbr-exブリッジネットワーク設定を定義します。br-exNNCP CR には、ネットワークの OVN-Kubernetes マスカレード IP アドレスとサブネットが含まれている必要があります。NNCP CR の例には、ipv4.address.ipおよびipv6.address.ipパラメーターのデフォルト値が含まれています。マスカレード IP アドレスは、ipv4.address.ip、ipv6.address.ip、またはその両方のパラメーターで設定できます。重要カスタマイズされた
br-exブリッジのプライマリー IP アドレスは、インストール後のタスクとして変更できません。シングルスタッククラスターネットワークをデュアルスタッククラスターネットワークに変換する場合、NNCP CR でセカンダリー IPv6 アドレスは追加または変更できますが、既存のプライマリー IP アドレスは変更できません。apiVersion: nmstate.io/v1 kind: NodeNetworkConfigurationPolicy metadata: name: worker-0-br-ex spec: nodeSelector: kubernetes.io/hostname: worker-0 desiredState: interfaces: - name: enp2s0 type: ethernet state: up ipv4: enabled: false ipv6: enabled: false - name: br-ex type: ovs-bridge state: up ipv4: enabled: false dhcp: false ipv6: enabled: false dhcp: false bridge: options: mcast-snooping-enable: true port: - name: enp2s0 - name: br-ex - name: br-ex type: ovs-interface state: up copy-mac-from: enp2s0 ipv4: enabled: true dhcp: true auto-route-metric: 48 address: - ip: "169.254.0.2" prefix-length: 17 ipv6: enabled: true dhcp: true auto-route-metric: 48 address: - ip: "fd69::2" prefix-length: 112 # ...ここでは、以下のようになります。
metadata.name- ポリシーの名前。
interfaces.name- インターフェイスの名前。
interfaces.type- イーサネットのタイプ。
interfaces.state- 作成後のインターフェイスの要求された状態。
ipv4.enabled- この例では、IPv4 と IPv6 を無効にします。
port.name- ブリッジが接続されているノード NIC。
address.ip- デフォルトの IPv4 および IPv6 IP アドレスを表示します。ネットワークのマスカレード IPv4 および IPv6 IP アドレスが設定されていることを確認します。
auto-route-metric-
br-exデフォルトルートに常に最高の優先度 (最も低いメトリック値) を付与するには、パラメーターを48に設定します。この設定により、NetworkManagerサービスによって自動的に設定される他のインターフェイスとのルーティングの競合が防止されます。
次のステップ
-
コンピュートノードをスケーリングして、クラスター内に存在する各コンピュートノードに、カスタマイズされた
br-exブリッジを含むマニフェストオブジェクトを適用します。詳細は、関連情報 セクションの「クラスターの拡張」を参照してください。