同じLANならGUIで参加すれば早くて簡単。でも自分のサーバーは2か所にあるので同一LANは無理。それでもClusterを組みたいので、この記事は同じLANにいない分散Node向けです。
これはhomelabで一番苦労したことの一つ。Thuan Buiさんもこの話は書いていないので、かなり詳しくまとめます。
VGAを外したあと、記事1と同じようにPVE2にProxmoxをインストールしました。もちろんnomodesetは避けられません
その後、記事24のコマンドでPCIeポートのindexを固定しました
ProxmoxにTailscaleをインストール
ここではClusterに参加する2台のPVEに直接入れます
curl -fsSL https://tailscale.com/install.sh | sh
systemctl enable --now tailscaled
tailscale up --ssh
実行後、Tailscaleへログインするリンクが出ます
Tailscaleの設定
2台のPVEのIPを覚えやすく変更しました
pve: 100.122.1.1
pve2: 100.122.2.2

Clusterを作成
ここでClusterがあるか確認。なければCreate Clusterを押して必要事項を入力します。LANは自分が持っている唯一のLANを入力。

記事1の遺産、初期に入れたProxmoxの設定です。

通信ポート設定(192.168.111.2)を修正するには以下でcorosync.confを編集します
nano /etc/pve/corosync.conf
強調部分にPVEノードのTailscale IPを入れました。

入力後、以下でcorosyncサービスを再起動
systemctl restart corosync
pvecm status
これでClusterのIP Addressが希望通りに変わります。

Clusterに参加
参加前に以下を確認
- 2台のPVEが相互にpingできること
- SSLはPVE自身が署名したものを使うこと
記事14でCloudflare OriginのSSLを使っていたため、PVE署名のSSLへ戻す必要がありました。
PVE2のShellで開始
pvecm add 100.122.1.1 --link0 100.122.2.2

こう表示されたらClusterを確認して、入っていれば成功です。
成果
こんな画面が出たら成功!

遭遇したエラーまとめ
PVEでClusterを削除
最初からやり直すためのCluster削除はCLIのみで可能。GUIには削除ボタンがありません
systemctl stop pve-cluster corosync
pmxcfs -l
rm /etc/corosync/*
rm /etc/pve/corosync.conf
killall pmxcfs
systemctl start pve-cluster
Proxmox WebUIに接続できない
SSHでProxmoxノードに入れない時は以下を実行:
pvecm updatecerts --force
systemctl restart pveproxy
PVE2はCluster参加済みだがdown
PVE2が参加したのにSSL Cert関連のエラー、GUIからPVE2に入れない、またはPVE2がクラッシュ/停止している場合
pvecm expected 1
pvecm delnode pve2
説明: ProxmoxのNodeは対等でmaster/slaveはありません。民主的なのでQuorumを1に強制する必要があります。PVE (node 1) が全権を持てるようにするため、記事26で詳しく説明します。
Comments
Join the conversation
Leave a comment
No comments yet
Be the first to share your thoughts!