Proxmoxのクラスタ便利ですね。でも予期せずにクラスタ上のノードが起動しなくなって、クラスタ情報が不整合を起こす場合があります。
例えば、marsが壊れた場合は以下のように見えます。この状況ではmarsのPVE(Proxmox VE)を再インストールしてもクラスタに参加させることができません。クラスタメインのノード(earth)でmarsの情報を破棄する必要があります。
クラスタのメインノードにて、必要なファイルをバックアップしましょう。
# サービスを停止する
systemctl stop pve-cluster corosync
# タイムスタンプ付きのバックアップディレクトリを作成
backup_dir="/root/pve_cluster_backup_$(date +%Y%m%d_%H%M%S)"
mkdir -p $backup_dir
# PVE設定ファイル群のバックアップ(pmxcfsで管理されているファイル)
cp -r /etc/pve/* $backup_dir/pve/
# corosync関連のバックアップ
cp -r /etc/corosync/ $backup_dir/corosync/
# クラスタデータのバックアップ
cp -r /var/lib/pve-cluster/ $backup_dir/pve-cluster/
# バックアップの圧縮(オプション)
tar czf ${backup_dir}.tar.gz $backup_dir/
ShellScript以下で壊れたノードの情報が破棄できます。
# クラスタサービスを停止
systemctl stop pve-cluster corosync
# pmxcfsをクリーンアップ(これ重要!)
pmxcfs -l
# ロックファイルを削除(ある場合)
rm -f /var/lib/pve-cluster/.pmxcfs.lockfile
# プロセス強制終了
killall pmxcfs
# サービス再開
systemctl start pve-cluster
ShellScriptこの状況で管理画面をみるとまだ壊れたノードのエントリ自体は残っていますが、クラスタの参加画面から再度参加させることができます。
ご参考までに。
コメントを残す
コメントを投稿するにはログインしてください。