第8章 ネットワーク
8.1. ネットワークの概要 リンクのコピーリンクがクリップボードにコピーされました!
OpenShift Virtualization は、カスタムリソースおよびプラグインを使用して高度なネットワーク機能を提供します。仮想マシン (VM) は、OpenShift Container Platform のネットワークおよびエコシステムと統合されています。
8.1.1. OpenShift Virtualization ネットワークの用語集 リンクのコピーリンクがクリップボードにコピーされました!
以下の用語は、OpenShift Virtualization ドキュメント全体で使用されています。
- Container Network Interface (CNI)
 - コンテナーのネットワーク接続に重点を置く Cloud Native Computing Foundation プロジェクト。OpenShift Virtualization は CNI プラグインを使用して基本的な Kubernetes ネットワーク機能を強化します。
 - Multus
 - 複数の CNI の存在を可能にし、Pod または仮想マシンが必要なインターフェイスを使用できるようにする "メタ" CNI プラグイン。
 - カスタムリソース定義 (CRD)
 - カスタムリソースの定義を可能にする Kubernetes API リソース、または CRD API リソースを使用して定義されるオブジェクト。
 - Network Attachment Definition (NAD)
 - Multus プロジェクトによって導入された CRD。Pod、仮想マシン、および仮想マシンインスタンスを 1 つ以上のネットワークに接続できるようにします。
 - ノードネットワーク設定ポリシー (NNCP)
 - 
								nmstate プロジェクトによって導入された CRD。ノード上で要求されるネットワーク設定を表します。
NodeNetworkConfigurationPolicyマニフェストをクラスターに適用して、インターフェイスの追加および削除など、ノードネットワーク設定を更新します。 
8.1.2. デフォルトの Pod ネットワークの使用 リンクのコピーリンクがクリップボードにコピーされました!
- 仮想マシンをデフォルトの Pod ネットワークに接続する
 - 各仮想マシンは、デフォルトの内部 Pod ネットワークにデフォルトで接続されます。仮想マシン仕様を編集することで、ネットワークインターフェイスを追加または削除できます。
 - 仮想マシンをサービスとして公開する
 - 
								
Serviceオブジェクトを作成することで、クラスター内またはクラスター外に仮想マシンを公開できます。オンプレミスクラスターの場合、MetalLB Operator を使用して負荷分散サービスを設定できます。OpenShift Container Platform Web コンソールまたは CLI を使用して、MetalLB Operator をインストール できます。 
8.1.3. 仮想マシンのセカンダリーネットワークインターフェイスの設定 リンクのコピーリンクがクリップボードにコピーされました!
- Linux ブリッジネットワークへの仮想マシンの割り当て
 Kubernetes NMState Operator をインストール して、セカンダリーネットワークの Linux ブリッジ、VLAN、およびボンディングを設定します。
次の手順を実行すると、Linux ブリッジネットワークを作成し、そのネットワークに仮想マシンを接続できます。
- 
										
NodeNetworkConfigurationPolicyカスタムリソース定義 (CRD) を作成して、Linux ブリッジネットワークデバイスを設定 します。 - 
										
NetworkAttachmentDefinitionCRD を作成して、Linux ブリッジネットワークを設定 します。 - 仮想マシン設定にネットワークの詳細を追加して、仮想マシンを Linux ブリッジネットワークに接続 します。
 
- 
										
 
- 仮想マシンの SR-IOV ネットワークへの接続
 高帯域幅または低レイテンシーを必要とするアプリケーション向けに、ベアメタルまたは Red Hat OpenStack Platform (RHOSP) インフラストラクチャーにインストールされた OpenShift Container Platform クラスター上の追加ネットワークで、Single Root I/O Virtualization (SR-IOV) ネットワークデバイスを使用できます。
SR-IOV ネットワークデバイスとネットワークアタッチメントを管理するには、クラスターに SR-IOV Network Operator をインストール する必要があります。
次の手順を実行すると、仮想マシンを SR-IOV ネットワークに接続できます。
- 
										
SriovNetworkNodePolicyCRD を作成して、SR-IOV ネットワークデバイスを設定 します。 - 
										
SriovNetworkオブジェクトを作成して、SR-IOV ネットワークを設定 します。 - 仮想マシン設定にネットワークの詳細を追加して、仮想マシンを SR-IOV ブリッジネットワークに接続 します。
 
- 
										
 - OVN-Kubernetes セカンダリーネットワークへの仮想マシンの接続
 仮想マシンは Open Virtual Network (OVN)-Kubernetes セカンダリーネットワークに接続できます。OVN-Kubernetes セカンダリーネットワークを設定し、そのネットワークに仮想マシンを接続するには、次の手順を実行します。
- 
										
NetworkAttachmentDefinitionCRD を作成して、OVN-Kubernetes セカンダリーネットワークを設定 します。 - ネットワークの詳細を仮想マシン仕様に追加して、仮想マシンを OVN-Kubernetes セカンダリーネットワークに接続 します。
 
- 
										
 
- ホットプラグ対応のセカンダリーネットワークインターフェイス
 - 仮想マシンを停止せずに、セカンダリーネットワークインターフェイスを追加または削除できます。OpenShift Virtualization は、VirtIO デバイスドライバーを使用する Linux ブリッジインターフェイスのホットプラグとホットアンプラグをサポートしています。
 
- SR-IOV での DPDK の使用
 - Data Plane Development Kit (DPDK) は、高速パケット処理用のライブラリーとドライバーのセットを提供するものです。SR-IOV ネットワーク上で DPDK ワークロードを実行するようにクラスターと仮想マシンを設定できます。
 - ライブマイグレーション用の専用ネットワークの設定
 - ライブマイグレーション専用の Multus ネットワーク を設定できます。専用ネットワークは、ライブマイグレーション中のテナントワークロードに対するネットワークの飽和状態の影響を最小限に抑えます。
 
- クラスター FQDN を使用した仮想マシンへのアクセス
 - 完全修飾ドメイン名 (FQDN) を使用して、クラスターの外部からセカンダリーネットワークインターフェイスに接続されている仮想マシンにアクセスできます。
 - IP アドレスの設定と表示
 - 仮想マシンを作成するときに、セカンダリーネットワークインターフェイスの IP アドレスを設定できます。IP アドレスは、cloud-init でプロビジョニングされます。仮想マシンの IP アドレスは、OpenShift Container Platform Web コンソールまたはコマンドラインを使用して表示できます。ネットワーク情報は QEMU ゲストエージェントによって収集されます。
 
8.1.4. OpenShift Service Mesh との統合 リンクのコピーリンクがクリップボードにコピーされました!
- 仮想マシンのサービスメッシュへの接続
 - OpenShift Virtualization は OpenShift Service Mesh と統合されています。Pod と仮想マシン間のトラフィックを監視、視覚化、制御できます。
 
8.1.5. MAC アドレスプールの管理 リンクのコピーリンクがクリップボードにコピーされました!
- ネットワークインターフェイスの MAC アドレスプールの管理
 - KubeMacPool コンポーネントは、共有 MAC アドレスプールから仮想マシンネットワークインターフェイスの MAC アドレスを割り当てます。これにより、各ネットワークインターフェイスに一意の MAC アドレスが確実に割り当てられます。その仮想マシンから作成された仮想マシンインスタンスは、再起動後も割り当てられた MAC アドレスを保持します。
 
8.1.6. SSH アクセスの設定 リンクのコピーリンクがクリップボードにコピーされました!
- 仮想マシンへの SSH アクセスの設定
 次の方法を使用して、仮想マシンへの SSH アクセスを設定できます。
SSH 鍵ペアを作成し、公開鍵を仮想マシンに追加し、秘密鍵を使用して
virtctl sshコマンドを実行して仮想マシンに接続します。cloud-init データソースを使用して設定できるゲストオペレーティングシステムを使用して、実行時または最初の起動時に Red Hat Enterprise Linux (RHEL) 9 仮想マシンに SSH 公開鍵を追加できます。
virtctl port-fowardコマンドを.ssh/configファイルに追加し、OpenSSH を使用して仮想マシンに接続します。サービスを作成し、そのサービスを仮想マシンに関連付け、サービスによって公開されている IP アドレスとポートに接続します。
セカンダリーネットワークを設定し、仮想マシンをセカンダリーネットワークインターフェイスに接続し、割り当てられた IP アドレスに接続します。