第7章 クラスタ構成と HA
章のゴール
本章では、Proxmox VE で 3 ノード程度のクラスタを構成し、 仮想マシンのライブマイグレーションや基本的な HA 動作を理解できるようになることを目標とします。 本章の画面・操作例は Proxmox VE 9.1(9.x 系)を前提とします。
この章で分かること / 分からないこと
- 分かること:
- クラスタで最低限押さえるべき概念(クォーラム、共有ストレージの前提など)
- 「クラスタを作る → ノードを参加させる → HA を試す」という流れ
- つまずきやすいポイント(多数決、ネットワーク分断、ストレージ前提)
- 分からないこと(後続章または別パスで扱います):
- UI を 1 クリックずつ追う作業手順(スクリーンショット取得後に追加)
- 本番向けの高度なフェンシング/設計(環境依存が大きい)
事前準備(チェックリスト)
クラスタ作業は、前提が 1 つ崩れると復旧に時間がかかります。ラボでも次を先に確認しておくと安全です。
- 3 ノードのホスト名と固定 IP が確定している(例:
pve1/pve2/pve3) - ノード間通信ができる(同一セグメント、VLAN、MTU など)
- 時刻同期が取れている(NTP。証明書/クラスタで問題になりやすい)
- 共有ストレージの方針がある(例: Ceph、またはラボ用の代替手段)
用語メモ(最小)
- クォーラム: クラスタが「多数派」を満たしているかの判定
- corosync: ノード間通信とメンバーシップ/クォーラムに関わる仕組み
- 共有ストレージ: 複数ノードから同じ VM ディスクを参照できる仕組み(ライブマイグレーション/HA の前提になりやすい)
- HA: ノード障害時に別ノードで VM を起動し直す、といった可用性の仕組み
クラスタの基本概念
クラスタ構成では、複数ノードが協調して動作するために、次のような概念が重要になります。
- クォーラム
- ノードのメンバーシップ
- 共有ストレージまたは等価の仕組み(例: Ceph)
これらは、Part I のアーキテクチャ章や Part II のストレージ・ネットワーク章で触れたコンポーネントと密接に関係しています。
ラボで想定する 3 ノードクラスタ
本書では、Part 0 で紹介したパターン B(3 ノードラボ)を前提とし、
3 台の Proxmox VE ノードを 1 つのクラスタとして構成する例を扱います。
クラスタ全体の構成イメージは、diagrams/part3/ch7/cluster-ha.svg を参照してください。
クラスタ作成の流れ(概要)
- 最初のノードでクラスタを作成する
- 残りのノードをクラスタに参加させる
- 必要に応じて、共有ストレージ(例: Ceph)を構成する
それぞれのステップでは、Web UI からクラスタ名やノード情報を入力し、 内部的には corosync などのコンポーネントが設定されます。 詳細な画面遷移やコマンドは、後続の具体的な手順セクションで扱う前提とし、ここでは流れと考え方に焦点を当てます。
HA 設定と基本的なテスト
クラスタが構成できたら、選択した仮想マシンに対して HA を有効化し、 ノード障害時に別ノードで自動起動されることを確認します。
テストの例:
- 対象 VM を HA グループに追加し、優先ノードを設定する
- 意図的にノードを停止し、別ノードで VM が起動するかを確認する
ラボ環境では、実際の障害試験を行う際に、ストレージやネットワークへの影響範囲を事前に把握しておくことが重要です。
よくあるつまずきポイント
- クォーラムを満たさない構成(偶数ノード構成や、ノード停止時の多数決が取れないケース)
- 共有ストレージがない状態での期待しすぎ(ライブマイグレーションや HA には、ストレージの前提がある)
- ネットワーク分断時の挙動を理解していないことによる意図しない停止
これらのポイントは、Part II のネットワーク・ストレージ章と合わせて理解することで、 より安全なクラスタ設計ができるようになります。