8.4. Linux ブリッジネットワークへの仮想マシンの割り当て
デフォルトでは、OpenShift Virtualization は単一の内部 Pod ネットワークとともにインストールされます。
次の手順を実行すると、Linux ブリッジネットワークを作成し、そのネットワークに仮想マシンを接続できます。
- Linux ブリッジ Node Network Configuration Policy (NNCP) を作成 します。
- Web コンソール または コマンドライン を使用して、Linux ブリッジネットワークアタッチメント定義 (NAD) を作成します。
- Web コンソール または コマンドライン を使用して、NAD を認識するように仮想マシンを設定します。
OpenShift Virtualization は、Linux ブリッジボンディングモード 0、5、および 6 をサポートしていません。詳細は、Which bonding modes work when used with a bridge that virtual machine guests or containers connect to? を参照してください。
8.4.1. Linux ブリッジ NNCP の作成 リンクのコピーリンクがクリップボードにコピーされました!
Linux ブリッジネットワークの NodeNetworkConfigurationPolicy
(NNCP) マニフェストを作成できます。
前提条件
- Kubernetes NMState Operator がインストールされている。
手順
NodeNetworkConfigurationPolicy
マニフェストを作成します。この例には、独自の情報で置き換える必要のあるサンプルの値が含まれます。Copy to Clipboard Copied! Toggle word wrap Toggle overflow
8.4.2. Linux ブリッジ NAD の作成 リンクのコピーリンクがクリップボードにコピーされました!
OpenShift Container Platform Web コンソールまたはコマンドラインを使用して、Linux ブリッジ Network Attachment Definition (NAD) を作成できます。
8.4.2.1. Web コンソールを使用した Linux ブリッジ NAD の作成 リンクのコピーリンクがクリップボードにコピーされました!
OpenShift Container Platform Web コンソールを使用して、Network Attachment Definition (NAD) を作成して、Pod および仮想マシンに layer-2 ネットワークを提供できます。
Linux ブリッジ Network Attachment Definition は、仮想マシンを VLAN に接続するための最も効率的な方法です。
仮想マシンのネットワークアタッチメント定義での IP アドレス管理 (IPAM) の設定はサポートされていません。
手順
-
Web コンソールで、Networking
NetworkAttachmentDefinitions をクリックします。 Create Network Attachment Definition をクリックします。
注記Network Attachment Definition は Pod または仮想マシンと同じ namespace にある必要があります。
- 一意の Name およびオプションの Description を入力します。
- Network Type リストから CNV Linux bridge を選択します。
- Bridge Name フィールドにブリッジの名前を入力します。
- オプション: リソースに VLAN ID が設定されている場合、VLAN Tag Number フィールドに ID 番号を入力します。
- オプション: MAC Spoof Check を選択して、MAC スプーフフィルタリングを有効にします。この機能により、Pod を終了するための MAC アドレスを 1 つだけ許可することで、MAC スプーフィング攻撃に対してセキュリティーを確保します。
- Create をクリックします。
8.4.2.2. コマンドラインを使用した Linux ブリッジ NAD の作成 リンクのコピーリンクがクリップボードにコピーされました!
コマンドラインを使用してネットワークアタッチメント定義 (NAD) を作成し、Pod および仮想マシンに layer-2 ネットワークを提供できます。
NAD と仮想マシンは同じ namespace に存在する必要があります。
仮想マシンのネットワークアタッチメント定義での IP アドレス管理 (IPAM) の設定はサポートされていません。
前提条件
-
MAC スプーフィングチェックを有効にするには、ノードが nftables をサポートして、
nft
バイナリーがデプロイされている必要があります。
手順
次の例のように、仮想マシンを
NetworkAttachmentDefinition
設定に追加します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
NetworkAttachmentDefinition
オブジェクトの名前。- 2
- オプション: 一部のノードに設定されたブリッジのノード選択に使用するアノテーションのキーと値のペア。このアノテーションをネットワークアタッチメント定義に追加すると、仮想マシンインスタンスが、定義されたブリッジが接続されているノード上でのみ実行されます。
- 3
- 設定の名前。設定名を Network Attachment Definition の
name
値に一致させることが推奨されます。 - 4
- この Network Attachment Definition のネットワークを提供する Container Network Interface (CNI) プラグインの実際の名前。異なる CNI を使用するのでない限り、このフィールドは変更しないでください。
- 5
- ノードに設定される Linux ブリッジの名前。この名前は、
NodeNetworkConfigurationPolicy
マニフェストで定義されているインターフェイスブリッジ名と一致する必要があります。 - 6
- オプション: MAC スプーフィングチェックを有効にするフラグ。
true
に設定すると、Pod またはゲストインターフェイスの MAC アドレスを変更できません。この属性により、Pod から出ることができる MAC アドレスは 1 つだけになり、MAC スプーフィング攻撃に対するセキュリティーが確保されます。 - 7
- オプション: VLAN タグ。Node Network Configuration Policy では、追加の VLAN 設定は必要ありません。
- 8
- オプション: 仮想マシンがデフォルト VLAN 経由でブリッジに接続するかどうかを示します。デフォルト値は
true
です。
注記Linux ブリッジ Network Attachment Definition は、仮想マシンを VLAN に接続するための最も効率的な方法です。
Network Attachment Definition を作成します。
oc create -f network-attachment-definition.yaml
$ oc create -f network-attachment-definition.yaml
1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- ここで、
network-attachment-definition.yaml
は Network Attachment Definition マニフェストのファイル名です。
検証
次のコマンドを実行して、ネットワーク接続定義が作成されたことを確認します。
oc get network-attachment-definition bridge-network
$ oc get network-attachment-definition bridge-network
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
8.4.3. 仮想マシンネットワークインターフェイスの設定 リンクのコピーリンクがクリップボードにコピーされました!
OpenShift Container Platform Web コンソールまたはコマンドラインを使用して、仮想マシンネットワークインターフェイスを設定できます。
8.4.3.1. Web コンソールを使用した仮想マシンネットワークインターフェイスの設定 リンクのコピーリンクがクリップボードにコピーされました!
OpenShift Container Platform Web コンソールを使用して、仮想マシンのネットワークインターフェイスを設定できます。
前提条件
- ネットワークの Network Attachment Definition を作成している。
手順
-
Virtualization
VirtualMachines に移動します。 - 仮想マシンをクリックして、VirtualMachine details ページを表示します。
- Configuration タブで、Network interfaces タブをクリックします。
- Add network interface をクリックします。
- インターフェイス名を入力し、Network リストから Network Attachment Definition を選択します。
- Save をクリックします。
- 仮想マシンを再起動して変更を適用します。
ネットワークフィールド
Name | 説明 |
---|---|
Name | ネットワークインターフェイスコントローラーの名前。 |
モデル | ネットワークインターフェイスコントローラーのモデルを示します。サポートされる値は e1000e および virtio です。 |
ネットワーク | 利用可能な Network Attachment Definition のリスト。 |
型 | 利用可能なバインディングメソッドの一覧。ネットワークインターフェイスに適したバインド方法を選択します。
|
MAC Address | ネットワークインターフェイスコントローラーの MAC アドレス。MAC アドレスが指定されていない場合、これは自動的に割り当てられます。 |
8.4.3.2. コマンドラインを使用した仮想マシンネットワークインターフェイスの設定 リンクのコピーリンクがクリップボードにコピーされました!
コマンドラインを使用して、ブリッジネットワークの仮想マシンネットワークインターフェイスを設定できます。
前提条件
- 設定を編集する前に仮想マシンをシャットダウンします。実行中の仮想マシンを編集する場合は、変更を有効にするために仮想マシンを再起動する必要があります。
手順
次の例のように、ブリッジインターフェイスとネットワークアタッチメント定義を仮想マシン設定に追加します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 設定を適用します。
oc apply -f example-vm.yaml
$ oc apply -f example-vm.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - オプション: 実行中の仮想マシンを編集している場合は、変更を有効にするためにこれを再起動する必要があります。