ネットワーク
ネットワーク作成に関する一般的な推奨事項の概要を次に示します。
- ボンド・ネットワーク・インタフェースを(特に本番ホストで)使用します
- VLANを使用して異なるトラフィック・タイプを分離します
- 管理トラフィック用に1 GbEネットワークを使用します
- 仮想マシンとイーサネット・ベースのストレージ用に10 GbE、25 GbE、40 GbE、または100 GbEを使用します
- ストレージの使用のために物理インタフェースをホストに追加する場合は、VLANが物理インタフェースに直接割り当てられるように「VMネットワーク」のチェックを外します
Oracle Linux Virtualization ManagerホストおよびすべてのOracle Linux KVMホストには、完全修飾ドメイン名(FQDN)とフォワードおよびリバース名の解決が必要です。 DNSを使用することをお薦めします。 または、名前解決に/etc/hosts
ファイルを使用することもできますが、これにはさらに多くの作業が必要で、エラーが発生しやすくなります。
名前解決に使用するすべてのDNSサービスは、環境の外部にホストする必要があります。
論理ネットワーク
Oracle Linux Virtualization Managerでは、ネットワーク・インタフェース・コントローラ(NIC)が管理ネットワーク上にあることを示す場合など、特定の目的でOracle Linux KVMホストのネットワーク接続を確保するために必要なリソースを表す論理ネットワークを構成します。
データ・センターの論理ネットワークを定義し、ネットワークを1つ以上のクラスタに適用した後、ホストの物理インタフェースに論理ネットワークを割り当てて、ホストを構成します。 クラスタ内のすべてのホストでネットワークを実装すると、ネットワークが動作するようになります。 これらの操作はすべて管理ポータルから実行します。
クラスタ・レベルで、1つ以上のネットワーク・ロールを論理ネットワークに割り当て、その目的を指定できます。
- 管理ネットワークは、Oracle Linux Virtualization Managerとホスト間の通信に使用されます。
- VMネットワークは仮想マシン通信に使用され、仮想マシンの仮想NICはVMネットワークにアタッチされます。 詳細は、「Oracle Linux Virtualization Manager: 管理ガイド」の論理ネットワークの作成を参照してください。
- ディスプレイ・ネットワークは、VNCまたはRDPプロトコルを使用して、クライアントを仮想マシンのグラフィカル・コンソールに接続する際に使用されます。
- 移行ネットワークは、仮想マシンをクラスタ内のホスト間で移行するのに使用されます。
デフォルトでは、ovirtmgmtという名前の単一の論理ネットワークが作成され、データ・センターのすべてのネットワーク通信に使用されます。 追加の論理ネットワークを定義して適用することによって、必要に応じてネットワーク・トラフィックを分離します。
1つの論理ネットワークが、ホストのデフォルト・ルートとして構成されます。
論理ネットワークは、必要なネットワークとしてマークできます。 必要なネットワークが機能しなくなった場合、ネットワークに関連付けられているKVMホストは動作しなくなります。
VMネットワーク以外の論理ネットワークの場合は、物理ネットワーク・インタフェース、VLANインタフェースまたはボンドを使用して、ホストをネットワークに直接接続します。
VMネットワークでは、論理ネットワークごとにブリッジがホストに作成されます。 仮想マシンのVNICが必要に応じてブリッジに接続されます。 ブリッジは、物理ネットワーク・インタフェース、VLANインタフェースまたはボンドを使用してネットワークに接続されます。
図4-4 ネットワークのブリッジ

次に示すホスト上のネットワーク構成操作のほとんどは、管理ポータルから実行できます。
- ホストNICの論理ネットワークへの割り当て
- NICのブート・プロトコル、IP設定、およびDNS設定の構成
- KVMホスト上でのボンドおよびVLANインタフェースの作成
KVMホストおよび論理ネットワークが多数ある場合は、ネットワーク・ラベルを使用することで管理を簡素化できます。 ラベルは論理ネットワークおよびホスト・インタフェースに適用できます。 ネットワークでラベルを設定する場合、同じラベルを持つホストNICにネットワークをデプロイできます。 これには、ホストNICがDHCPに対して構成されている必要があります。
VLAN
仮想ローカル領域ネットワーク(VLAN)により、ホストおよび仮想マシンは、LAN上の実際の物理的な場所に関係なく通信できます。
VLANによって、ネットワーク・トラフィックを分離することでセキュリティを改善できます。 同じVLANのデバイス間のブロードキャストは、別のVLANの他のデバイスには、それらが同じスイッチ上に存在する場合でも認識されません。
また、VLANはホスト上の物理NIC不足を補うのにも役立ちます。 ホストまたは仮想マシンは、単一の物理NICまたはボンドを使用して異なるVLANに接続できます。 これは、VLANインタフェースを使用して実装されます。
VLANはIDによって識別されます。 ホストのNICまたはボンドにアタッチされたVLANインタフェースには、VLAN IDが割り当てられ、VLANのトラフィックを処理します。 トラフィックがVLANインタフェースを介してルーティングされる場合、そのインタフェースに対して構成されたVLAN IDが自動的にタグ付けされ、VLANインタフェースがアタッチされるNICまたはボンド経由でルーティングされます。
スイッチはVLAN IDを使用して、同じ物理リンク上で動作する異なるVLAN間のトラフィックを分離します。 このように、VLANは個別の物理接続とまったく同じように機能します。
論理ネットワークをサポートするために必要なVLANを構成してから、VLANを使用する必要があります。 通常、これはスイッチ・トランクを使用して行います。 トランクでは、スイッチのポート上で複数のVLANトラフィックが実現されるようにこれらのポートを構成して、パケットが最終的な宛先に正しく転送されるようにします。 必要な構成は、使用するスイッチによって異なります。
論理ネットワークを作成するとき、ネットワークにVLAN IDを割り当てることができます。 ホストNICまたはボンドをネットワークに割り当てると、VLANインタフェースがホスト上に自動的に作成され、選択したデバイスにアタッチされます。
図4-5 VLANs

図4-6 ネットワーク・ボンドを介したVLAN

仮想NIC
仮想マシンは、仮想ネットワーク・インタフェース・コントローラ(VNIC)を使用して論理ネットワークに接続します。
VNICは、常にKVMホスト上のブリッジにアタッチされます。 ブリッジは、VNICが物理ネットワーク接続を共有し、論理ネットワーク上で個別の物理デバイスとして表示できるようにする、ソフトウェア・ネットワーク・デバイスです。
Oracle Linux Virtualization ManagerはMACアドレスをVNICに自動的に割り当てます。 各MACアドレスは、1つのVNICに対応しています。 MACアドレスはネットワーク上で一意である必要があるため、MACアドレスは、MACアドレス・プールと呼ばれる事前定義済のアドレス範囲から割り当てられます。 MACアドレス・プールは、クラスタに対して定義されます。
仮想マシンは、それらのVNICによって論理ネットワークに接続されます。 各VNICのIPアドレスは、仮想マシンのオペレーティング・システムで利用できるツールを使用して、DHCPによって、または静的に個別に設定できます。 DHCPを使用するには、論理ネットワークにDHCPサーバーを構成する必要があります。
仮想マシンは、仮想ネットワーク上の他のマシンと通信でき、論理ネットワークの構成によってはインターネットなどのパブリック・ネットワークと通信できます。
詳細は、「Oracle Linux Virtualization Manager: 管理ガイド」の「仮想マシンのvNICプロファイルのカスタマイズ」を参照してください。
ボンド
ボンドは複数のNICを1つのインタフェースに結合します。 結合されたネットワーク・インタフェースではボンドに含まれているすべてのNICの伝送機能が組み合さって、単一のネットワーク・インタフェースとして機能し、転送速度を向上させることができます。 ボンド自体の動作に障害が発生するには、ボンド内のすべてのネットワーク・インタフェース・カードに障害が発生する必要があるため、ボンディングによってフォルト・トレランスが向上します。
4つの異なる結合モードがあります:
- モード1 - Active-Backup
- モード2 - ロード・バランスXORポリシー
- モード3 - ブロードキャスト
- モード4 (デフォルト) - 動的リンク・アグリゲーションIEEE 802.3ad
ボンディング・モード2および4では、物理スイッチでそれぞれ静的エーテル・チャネルを有効にし(LACP交渉ではなく)、LACP交渉エーテル・チャネルを有効にする必要があります。
図4-7 ネットワーク・ボンド

MACアドレス・プール
MACアドレス・プールは、各クラスタに割り当てられたMACアドレスの1つの(または複数の)範囲を定義します。 クラスタごとに1つのMACアドレス・プールが指定されます。 MACアドレス・プールを使用することで、ManagerはMACアドレスを自動的に生成し、新しい仮想ネットワーク・デバイスに割り当てることができ、このことはMACアドレスの重複を防ぐのに役立ちます。 MACアドレス・プールは、クラスタに関連するすべてのMACアドレスが、割り当てられたMACアドレス・プールの範囲内である場合にメモリー効率が向上します。
同じMACアドレス・プールを複数のクラスタで共有できますが、各クラスタには単一のMACアドレス・プールが割り当てられます。 デフォルトのMACアドレス・プールはManagerによって作成され、別のMACアドレス・プールが割り当てられていない場合に使用されます。
ノート:
複数のクラスタでネットワークを共有している場合、デフォルトのMACアドレス・プールのみに依存しないでください。各クラスタ内の仮想マシンが同じ範囲のMACアドレスを使用しようとするため、競合が発生する可能性があります。 MACアドレスの競合を回避するには、MACアドレス・プールの範囲をチェックして、各クラスタに一意のMACアドレス範囲が割り当てられるようにします。
MACアドレス・プールは、プールに返された最後のアドレスの後の、次に使用可能なMACアドレスを割り当てます。 範囲にアドレスがもう残っていない場合、範囲の最初から検索が再度開始されます。 1つのMACアドレス・プール内に、使用可能なMACアドレスを持つ複数のMACアドレス範囲が定義されている場合、それらの範囲はMACアドレスが選択されるときと同様の方法で、着信要求に交互に応じます。