仮想ネットワーク
Cockpit は 3 つの方法で仮想マシンにネットワーク接続を提供します。
- ホストネットワークは 1 台の物理ホスト上にあり、そこで稼働する VM を接続します。
- 分散ネットワークはクラスター内のすべてのホストにまたがり、VM がどのホストで稼働していても同じネットワークを使い続けられます。
- 仮想ネットワークはデータセンター全体のための 1 つのソフトウェア定義ファブリックです — 一度作成すればすべてのクラスターのすべてのホストに到達する論理スイッチとルーターであり、ルーティング、NAT、ファイアウォールを一元的に定義します。
1 台のホストに留まるワークロードにはホストネットワークを、クラスター内のホスト間を移動する VM(ライブ移行、高可用性、複数ホストにまたがる Kubernetes クラスターなど)には分散ネットワークを、そして物理トポロジーから完全に独立したネットワークが必要な場合(重複するアドレス範囲を持つテナント、クラスターをまたいで VM に追従するサブネット、データセンター全体の Kubernetes 向けネットワークなど)には仮想ネットワークを選びます。仮想ネットワークは個別にライセンスされる機能であり、仮想ネットワーク (OVN) をはじめとする専用のページが用意されています。
ホストネットワーク
ホストネットワークは、1 台のハイパーバイザー上の仮想スイッチです。接続された VM は互いに、ホストと、そしてモードに応じて外部と通信できます。
ネットワークモード
| モード | 役割 | 一般的な用途 |
|---|---|---|
| NAT | VM は送信トラフィックでホストの IP を共有し、着信接続はデフォルトでブロックされます。 | VM を直接公開せずに一般的なインターネットアクセスを提供。 |
| Routed | VM のトラフィックはアドレス変換なしで物理ネットワークに直接置かれます。 | VM が LAN 上に独自のアドレスを必要とする場合(上流のルーティング設定が必要)。 |
| Host-Only(分離) | VM は互いとホストのみと通信し、外部アクセスはありません。 | プライベートで自己完結したテストネットワーク。 |
設定
- 名前 — ネットワークのラベル。
- IP アドレスとネットマスク — ネットワークのゲートウェイアドレスとサブネット(例:
192.168.222.1/255.255.255.0)。 - DHCP 範囲 — VM に自動で割り当てられるアドレスのプール(例:
192.168.222.10〜192.168.222.50)。 - Autostart — ホスト起動時にネットワークを自動で開始するかどうか。
ネットワークの管理
- Start / Stop — 仮想スイッチをオン/オフします。停止すると、接続中のすべての VM が切断されます。
- Edit — autostart などの設定を変更します。
- Delete — ネットワークを削除します(先に停止する必要があります)。
監視
- DHCP Leases — どの VM が現在どの IP アドレスを保持しているか(名前やリースの有効期限を含む)を確認します。
- Active Ports — ネットワークと稼働中の VM の間のライブ接続を確認します。
分散ネットワーク
分散ネットワークはクラスター単位で一度定義すると、すべてのホストに自動的に適用されます。構成がどこでも同一であるため、接続された VM は移動してもシームレスに動作し続けます — 別のホストへ移行してもネットワークが「消える」ことはありません。
使う理由
- 中断のないライブ移行 — VM を別のホストへ移しても、同じネットワークに留まれます。
- 高可用性 — HA が VM を別のホストで再起動すると、同じネットワークに自動的に再接続します。
- ホストをまたぐクラスター — ノードが複数ホストに分散した Kubernetes クラスターには、それらすべてに到達するネットワークが必要であり、分散ネットワークがまさにそれを提供します。
内部的には、Cockpit は高性能なソフトウェアスイッチング(Open vSwitch、フォールバックとして標準ブリッジ)を使用し、各ホストの適切な物理アダプターにネットワークをマッピングします。各ホストを手作業で設定する必要はありません — Cockpit が構成を配信します。
分散ネットワークの作成
分散ネットワークを作成または編集すると、Cockpit は構成をすべてのメンバーホストへ送り、それぞれの状態を報告します。安定するまでステータスを見守りましょう。
| ステータス | 意味 |
|---|---|
| Synced | このホストはネットワークを作成し、準備完了です。 |
| Active | ネットワークがすべてのホストで稼働・動作しています。 |
| Partial | 一部のホストでは成功したが他では失敗 — このホストは対応が必要です。 |
| Error | ネットワークをクラスター全体に適用できませんでした。 |
Partial または Error が表示された場合は、該当ホストを確認し(例: マッピングされた物理アダプターが存在し接続されているか)、再試行してください。
分散ネットワークを安全に削除する
Cockpit は稼働中の VM を切断してしまわないよう保護します。分散ネットワークをまだ使用している VM がある場合、削除はブロックされ、どの VM が依存しているかを示すメッセージが表示されます。
削除するには、まずそれらの VM を別のネットワークへ移す(または VM を削除する)してから、分散ネットワークを削除します。
TIP
この安全チェックがあるため、「削除できません: 仮想マシンで使用中」というメッセージはエラーではなく機能です — 接続の不意な喪失を防いでいます。まず一覧の VM を切り離してください。
関連トピック
- 仮想ネットワーク (OVN) — ネットワークが物理トポロジーから独立している必要がある場合の、データセンター規模のファブリック。
- DRS と高可用性 — ホスト間で一貫したネットワークに依存する機能。
- Kubernetes プロビジョナー — クラスターノードに適したネットワークの選択。