別に盗まれたわけでもなく、電源が消えたわけでもない。日に一度送って寄こす稼働報告メールがある日から届かなくなったのだ。
調べてみると、他の機器からのネット接続は受け付けられず、直接ディスプレイとキーボードを繋いでも無反応だ。
電源抜いて起動しなおしても……というか起動しなくなった。
リカバリ機能自体は生きていて、さあリカバリするディスクを選んでくださいとなるのだが、ディスクの候補が出てこない。
何が起こったか分かった。ディスク代わりに使っているSDカードの障害だ。おそらく寿命(書込可能回数)を使いきってしまったのだろう。
このサーバの役割は赤外線リモコン機器の制御と、外で借りているVPS(仮想サーバ)の稼働監視。そして我が家の室温や湿度といった情報の記録だ。年間365日24時間データを書き続ける仕事をさせていたのだから、当然の結果と言える。
復旧に必要な作業は…
- 代わりのSDカードを入手する。ともかく、これがないとRaspberryPiは起動しない。
- メインで使うHDDを用意する。SDカードだけでは同じ問題が再発するから。
- 一旦、SDカードに専用OS(Raspbian)をインストールして、起動確認。
- インストールしたOSをHDDにコピーする。
- SDカードでの起動後に、その後をHDDにスイッチするように、SDカードの情報を書き換える。
- OS以外のソフトウェア、各種設定を元のとおりに再現する。
一番面倒な作業は6だ。そもそも元のRaspberryPiに何を入れていたか思い出さなければならない。1〜5は割と皆が同じようにやる作業なので参考になる情報があるが、6は過去の自分がやったことなので、記録がないと始まらない。半年前の自分は他人というヤツ。
実のところ記録はあった。しかも、それ自体が自動実行可能な記録だ。
Ansibleのplaylistの形で構築作業の記録をしていたのである。
Ansibleスゴい。自分じゃすっかり忘れてた細かい作業まで、ロボットのように進めてくれる。
自分はといえば、そのロボットが作業しているところを横目で見ることもなく、録画したアニメの視聴に没頭していた。
この記事ではAnsibleの働きぶりを書くつもりでいたのだけど、むしろスムーズすぎて書くことがなかった。
実を言えば、コマンド一つでまったく手を出さずに済んだわけではなかった。Ansible自体のバージョンアップに追随するための書き換えとか。
ただ、今やるべきこと、過去やったことはすでにそこ書いてある。あるべき手順をイチからひねり出すことなく、古い記述を書き換え、空欄を埋めるだけの比較的頭を使わない作業だけで、進められるというのは脳にかかる負担が段違いだ。
一番面倒なはずの作業6があっさり終わった。
欲が出て、今はVPSの構築のほうの自動化に取り組んでいるのだけれど、これはまた別の話。
Ansibleを覚え始めのころ参考にしていた本。
紹介され始めた時期、ネットの情報は(当たり前だけど)「やってみた」程度のあっさりしていたものばかりだったので、包括的な知識を欲していた身にはありがたい存在だった。
今ではAnsibleのバージョンが上がっているので、そのまま使うというわけにはいかないかもしれない。根っこの部分が分かれば、あとはなんとでも……という人には有用。
0 件のコメント:
コメントを投稿