SSDがぶっ壊れた
我が家のHome Assistantサーバは適当なノートPC(ThinkPad X220)にProxmox VEをインストールし、ゲストOSとしてHome Assitant OSをインストールして稼働させています。
外出中にサーバダウンの通知が UptimeRobot から届きました。一時的なネットワーク障害とかかなと思って放置してましたが全然復旧しないので何かトラブったかと思い、VPN経由でProxmoxコンソールを覗いたらVMのディスクイメージが入っているLVMがunhelathyな状態になってました。SSDご臨終ですね。
ちなみにこの状態で何も考えずにProxmoxのホストを再起動したら二度と上がってこなくなりました(当たり前)。
この時点で遠隔での復旧は諦めて、帰宅後に復旧作業をすることにします。
再構築する
帰宅後、こんなこともあろうかと(?)リプレース用のマシンを予め用意してありました。Home Assistantサーバもいずれ移行しようと思ってProxmox VEのインストールまで済ませていたので、これを機に移行をすることにします。
Home Assitant OSのインストール
Home Assitantは標準ではISOイメージの提供はなく、OSイメージファイルを展開してディスクとしてマウントし利用する、というインストール形式を取っているようです。
(恐らくRaspberry Piとかで使うのがメインだったから?)
ということで、非公式のヘルパースクリプトを使ってインストールしました。
Home Assistant OS | Proxmox VE Helper Scripts
Proxmox VEのインストールからの手順を見たい場合はこっちも参考になるかも?
Home Assistant OS: Proxmox VE 9 Quick Start Guide
Proxmox VEのコンソールから下記コマンドを実行すると、画面の指示に従うだけでインストールができます。便利な世の中ですね。
bash -c "$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/vm/haos-vm.sh)"
コンソールから実行
インストール後のProxmox VEの画面
バックアップから復元する
デイリーバックアップをOneDriveに保持していたのでダウンロード・・・したいんですが、どこに入ってるかわからず。
検索から調べてみたら アプリ -> Graph の中に指定したフォルダ名でバックアップが格納してありました。
初期セットアップが終わったら http://IPアドレス:8123 から新しいHome Assitantへアクセスします。
一番新しい Automatic_backup_<vertion>_<datetime>.tar をダウンロードして、初期画面の下部にある「バックアップから復元(Restore from Backup)」を選んで、
ダウンロードしたtarファイルをアップロード。
「完全なバックアップ(Full Backup)」を選択して復元しました。
その後、自動的に完了します云々書かれてましたが自動でページ遷移しなかったので、ページをリロードしたり色々したら復元が完了してました。
設定を戻そう
ざっくり見た感じはほとんどの設定は元に戻ってましたが、いくつか設定が戻っていないものがあったのでそこだけ修正。
Proxmox VE: VMのハードウェア設定
- USBデバイス
- ZigbeeコーディネータがUSB接続のためパススルーさせる
- Vendor/Device ID指定にしました(前どうやってたかは覚えてない)
- ネットワークインターフェイス
- ECHONETLite2MQTT の仕様上なのか、システム上から見えるサブネットからしか機器を探索してくれない?
- 我が家はサーバ用/クライアント用/IoT機器用でサブネットを分けているので、IoT機器用のインターフェイスを別途追加(VLAN指定)
- 1つのインターフェイスで複数VLAN喋らせることもできますが、その場合はHome Assistantの設定画面と整合性が取れなくなる、ということで別途追加(そのためにProxmox VE上に載せてますからね)
Proxmox VEのハードウェア設定
Home Assistant: システム -> ネットワーク
- ホスト名
- もしかしたらインストール時に設定できたのかも?(Advancedを指定してないのでよくわからず)
- ネットワークインターフェイスの設定
- ネットワークインターフェイスの名前が変わっている場合は設定が飛んでそう
- IoTデバイスサブネット用のインターフェイスも忘れずに追加
リバースプロキシも再構築
Cloudflare Tunnel に使ってたVMも同じホストで同居していたのであえなく撃沈。こっちも再構築しました。
まとめ
バックアップを真面目に取っていて救われました。 ハードディスクが早く値下がりすることを強く願っています。
