仮想ネットワーク
Cockpit は 2 つの方法で仮想マシンにネットワーク接続を提供します。
- ホストネットワークは 1 台の物理ホスト上にあり、そこで稼働する VM を接続します。
- 分散ネットワークはクラスター内のすべてのホストにまたがり、VM がどのホストで稼働していても同じネットワークを使い続けられます。
1 台のホストに留まるワークロードにはホストネットワークを、VM がホスト間を移動する必要がある場合(ライブ移行、高可用性、複数ホストにまたがる Kubernetes クラスターなど)には分散ネットワークを選びます。
ホストネットワーク
ホストネットワークは、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 を切り離してください。
関連トピック
- DRS と高可用性 — ホスト間で一貫したネットワークに依存する機能。
- Kubernetes プロビジョナー — クラスターノードに適したネットワークの選択。