2017年12月17日
_ [computer] OpenBlocks AX3のストレージ交換
Debianをインストールして基幹に使っているOpenBlocks AX3のストレージが不穏なメッセージを出し始めた。
ata1.00: exception Emask 0x0 SAct 0x6000 SErr 0x0 action 0x6 frozen ata1.00: failed command: WRITE FPDMA QUEUED ata1.00: cmd 61/08:68:39:1d:00/00:00:00:00:00/40 tag 13 ncq 4096 out res 40/00:00:00:00:00/00:00:00:00:00/00 Emask 0x4 (timeout) ata1.00: status: { DRDY }
smartctl -x /dev/sdaで見てもPRE-FAILなヤバそうなレポートが出ており、緊急にストレージ交換をする必要がある。
AX3のストレージ付き製品を使用しているので、SATAで2.5インチあるいはハーフスリムであれば交換はできるようだった。ただ、ハーフスリムのものはもう各社とも撤退ぎみで、ぷらっとオンラインでも納期応相談という状態のため、若干放熱に心配はあるが2.5インチでいいだろうと踏んでサンディスクの256GB SSDを調達した(今はメモリ系は品薄で高いねぇ……)。
いくつかこちらの事情でハマりどころはあったものの、AX3のOSの仕掛けがよくできていて実際の停止時間は極めて短く済ませることができた。
交換ストレージ準備
新しいSSDにどう現状のOS状態をコピーするかだが、AX3のDebianはフラッシュメモリにブートローダとカーネル、最低限の基本構成が書き込まれており、外部ストレージは/.rwとしてマウントされて、aufsで/etcや/usr等の各システムがオーバレイしている仕掛けになっている。フラッシュメモリが壊れたら元も子もないが、外部ストレージのほうは/.rwの内容をコピーすればよく、ブートローダやカーネルといった起動にあたってちょっと面倒くさい部分を考えなくていい。
手元にRATOCのリムーバブルケース+eSATA・USBの外ケースを持っていたので、これに新SSDを3.5インチマウントアダプタ(裸族のインナー CRIN2535)を使って接続する。ミリネジも買っておいたのだが、インナーのほうに付いていた。
あとはこれをAX3のeSATAにつなげて……としたのだが、AX3のeSATAコントローラはつなげると一応反応らしきものはするものの、OSを再起動しないとディスクを扱えないようだ(scanもできなかった)。元ストレージがいつ天に召されるかわからない中での再起動は怖いので、USBにして接続。今度は普通に/dev/sdbとして見えたので、cfdiskで/dev/sdb1をLinux形式で作成し、「mkfs.ext4 /dev/sdb1」でext4形式にする。
あとは「mount /dev/sdb1 /media」のように適当にマウントし、「rsync -av /.rw/* /media/」で現状をコピー。16GBしかなかったので一瞬で終わった。
最後にAX3固有だがDebianのシステムパーティションとして見えるように、「e2label /dev/sdb1 DEBIAN」でDEBIANラベルを付けておく。「umount /dev/sdb1」で解除し、交換の日に備えて社内外に連絡等の諸々の準備を行う。
ターミナル
AX3のコンソールはRS-232Cのシリアルターミナルであり、これまではLinuxデスクトップ+ELECOMのUC-SGTでモニタリングをしていた。その後、機器群の整理をしてAX3の近くからLinuxデスクトップがなくなって、手元のラップトップは皆macにしてしまった(デスクトップは今でもどれもDebianだけど)ため、UC-SGTがmacではうまく認識されなくて困る、という事実に思い至る。
鯨井さんの記事を見ながらやってみたのだが、タイミングが悪いのかOS X 10.10で署名の問題を解決できず(古いのを読ませてから新しい設定を入れる、というのも試してはみた)。
あまりこれに拘泥しているのも時間が惜しいので、https://www.mac-usb-serial.com/ の検査でサポートされていることを確認して、7.90ユーロでドライバを購入。インストールして接続してみたところ、問題なく/dev/以下にttyデバイスファイルができた。
cuやscreenはどうも挙動が変だったので、homebrewでminicomをインストールし、「minicom -D /dev/ttyデバイスファイル」で接続。AX3のDebianのログインプロンプトが表示され、普通にコンソールとして操作できる。
ストレージ交換
左右4つの小ネジ、後ろのネジを外し、ツメを押しながら上に引き上げる。ツメがちょっと外しずらかった。引き上げるときに変にナナメに力を加えるとSATAのライザーカードが折れかねないので注意。
本体からライザーカードを抜き取り、ディスクマウンタに付いているハーフスリムSSD基盤を取り外す。剥き出し基盤なのでスペーサーが付けられており、この取り外しにはかなり小さな精密ドライバが必要。mSATA化の方向に行く中でハーフスリムがどれだけ入手性があるのかはともかく、なくさないように一式まとめて保存しておく。
2.5インチSSDのほうは特にスペーサーはいらないので、普通にネジで取り付ける。あとは本体にライザーカードごと刺し直し、蓋をして交換は終了。
再起動
交換してシリアルから送られてくるコンソールを見ながら緊張と祈りの再起動……特に何ということもなく、あっさり起動して必要なサービスが復活した。すばらしい。
放熱についても、冬のせいもあるかもしれないが以前より上昇しているという傾向も見られなかった。
さて、16GBから256GBになると、いろいろと欲が出てもくるが、あまり無茶なことをすると基幹に影響が出るので、あくまでもネットワーク監視系特化で何か考えよう。