PBS 専用サーバー本体が壊れた場合でもストレージにはバックアップデータが残っているから、新しい PC にストレージを接続して、PBS をインストールすれば元通りにできるハズ。
このとき、zfs の復旧方法を確認しておかないと最悪、バックアップデータを抹消してしまうことになりかねないから、仮想マシンに PBS をインストールして復旧手順を確認してみた。
目次
簡単なシナリオ
- テスト用クラスタにテスト用 PBS を接続して VM または CT のバックアップを保存する。テスト用 PBS には OS 用(sda)と zpool 用(sdb)のストレージを用意する。
- PBS が壊れたと仮定して、テスト用 PBS の sda に Proxmox Backup Server を再インストールする。zpool 用のストレージ sdb は何もしないからデータは残っているハズ。
- pool 、datastore を復旧して、元通りバックアップデータが残っていることを確認する。
テスト用 PBS 再インストール後の流れ
再インストール直後、当然だけど zfs のダブには何もない。
zpool 用(sdb)のストレージにデータが残っていることを確認するため、再インストールの直後に zpool import を実行する。ここで pool: store が出てこなければ素直に諦める。
root@pbs-test:~# zpool import
pool: store
id: 5965751336668004718
state: ONLINE
status: The pool was last accessed by another system.
action: The pool can be imported using its name or numeric identifier and
the '-f' flag.
see: https://openzfs.github.io/openzfs-docs/msg/ZFS-8000-EY
config:
store ONLINE
sdb ONLINE
root@pbs-test:~#
見つかった zpool(例ではstore)を import してみると、
root@pbs-test:~# zpool import store
cannot import 'store': pool was previously in use from another system.
Last accessed by pbs2 (hostid=2615cf5e) at Fri Dec 30 18:38:00 2022
The pool can be imported, use 'zpool import -f' to import the pool.
root@pbs-test:~#
別の PC(再インストール前)で使用されていた記録が残っている。
コメントにしたがってオプション -f を付けて再度、import を実行すると、zpool ”store” が表示される。
でも、まだデータストアには表示されていない。
続いて、故障前のデータストアのパスを記述した datastore.cfg を作って再起動する。
root@pbs-test:~# vi /etc/proxmox-backup/datastore.cfg
datastore: store
gc-schedule 09:00
path /mnt/datastore/store
無事にデータストアに store が表示された。バックアップデータも元通り。
最後に
iSCSI を PBS のストレージとして使う場合も基本的に同じ手順。
これで、いつ NiPoGi mini pc が壊れても(2.5inch SSD を接続できる限り)何とかなる。
コメント