夜行録 - 酔歩.net

日暮れて道遠し さらに夜道を行く もって夜行録と名付く

サーバ放置してたら酷い目にあった話

サーバ放置してたら大変酷い目にあった。トラブル3連発。しかもまだ未解決

その1:gfarm のメタデータサーバのバックエンドを、ldapにして放置していたら、

> sudo du -sh /var/gfarm-ldap
77G /var/gfarm-ldap

とかなっていて、/ に 100G とか割り当ててあったのに 95% くらい使い切っていて焦る。

一応この件の問題は、/var/gfarm-ldap/DB_CONFIG

set_flags DB_LOG_AUTOREMOVE

と指定するのみならず/etc/gfarm-ldap/slapd.conf

checkpoint  512  15

としておいてやらないと bdb のトランザクションログがちゃんと消えてくれないよ、ということで、ちゃんとそこまで書いておいて欲しいものである。
AUTOREMOVE だけは設定しておいたんだけどなー、これでいいのかどうか判らないから放置して様子みようとほったらかしにしたんだった。

その2:で、正しい消し方がよく判らなかったので、 gfmd を再起動する。通常の OS 再起動時の動作でもそうだけど、gfmd 起動時に、なんとなく消してくれる(しばらく悩んでいるけど)。コケたりコカしたりすると、2度目の起動でさっくり消してくれる。

ということで、夜中のうちに再起動かけて朝結果を確認してみると、

[  954.187521] ata1.00: exception Emask 0x0 SAct 0x200000 SErr 0x0 action 0x0
[  954.188169] ata1.00: irq_stat 0x40000008
[  954.188764] ata1.00: failed command: READ FPDMA QUEUED
[  954.189373] ata1.00: cmd 60/08:a8:80:34:76/00:00:00:00:00/40 tag 21 ncq 4096 in
[  954.189373]          res 41/40:00:80:34:76/00:00:00:00:00/40 Emask 0x409 (media error) 
[  954.190558] ata1.00: status: { DRDY ERR }
[  954.191149] ata1.00: error: { UNC }
[  954.193148] ata1.00: configured for UDMA/133
[  954.193160] sd 0:0:0:0: [sda] Unhandled sense code
[  954.193162] sd 0:0:0:0: [sda]
[  954.193164] Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE
[  954.193166] sd 0:0:0:0: [sda]
[  954.193167] Sense Key : Medium Error [current] [descriptor]
[  954.193171] Descriptor sense data with sense descriptors (in hex):
[  954.193172]         72 03 11 04 00 00 00 0c 00 0a 80 00 00 00 00 00
[  954.193180]         00 76 34 80
[  954.193185] sd 0:0:0:0: [sda]
[  954.193187] Add. Sense: Unrecovered read error - auto reallocate failed
[  954.193189] sd 0:0:0:0: [sda] CDB:
[  954.193190] Read(10): 28 00 00 76 34 80 00 00 08 00
[  954.193197] end_request: I/O error, dev sda, sector 7746688
[  954.193815] ata1: EH complete

とか大量に出てて、何かのタイムアウト待ちでコマンド実行に2分くらいかかる
うーん、直そうとしてトドメ刺しちゃったパターン

その3:慌てて、その辺で新しいディスク買って行って、とりあえずつなぐ。
結局、bad sector出してるようなディスクは怪しい、しかも gfarm メタデータあたりでボロボロに読めてないので、ディスクつないで適当に fdisk して LVM に追加して適当な大きさのファイルシステムちぎり出す。

gfarm メタデータ自体は、 cron で毎日

slapcat -f /etc/gfarm-ldap/slapd.conf -l /Backup/LDAP/gfarm_meta$(date +\%u).ldif

してあって、それを

slapadd -f slapd.conf -l /Backup/LDAP/gfarm-meta?.ldif

するだけで復元できた(/var/gfarm-ldap/ へ直接戻すので先にmountするなりしておく)。backupがここまで役に立ったことも珍しい体験だったけど。

その4:古い怪しいディスクはさっさと外したかったんだけど、 root パーティション作り直して切り替えてみると起動しない。
いろいろと不幸が重なっていたけど、結局判明したのは

  1. 適当に買っていったディスクが3Tのものだった
  2. fdisk/MBR だと 3T のディスクが扱えない
  3. parted でパーティション切り直したけど、/boot/ 切るの忘れた。
  4. 気がついたときには、古いディスクからいろいろ移動済みで、今更切り直せない
  5. というか、BIOSが古くて、そもそも MBR しか無理なんじゃね?

というわけで、bad sector出したディスクが、開けっ放しのケースに、ネジ止めせずただ乗っけただけで運用されるという事態に。

最後の件が全然解決できなくて頭抱えてる。というか、仕事でジョブ入れてる子がいるので負荷もりもりなんだが…

2015年12月13日 (Sun) - 16:54:02 - ファイルサーバ - 1149x - permalink
Karma points: 2. Do you like this article? [yes/no]