2007/09/23

pbzip2を使ってみる

デュアルコアの威力を活かすために、マルチスレッドでbzip2圧縮を行うpbzip2をインストールしてみた。インストール自体はaptitude pbzip2で終わりなので、適当なCD-ROM(Master of ORION 2というDOSのゲーム)のイメージファイルを圧縮してみた。

pbzip2はなかなか優秀で、bzip2で3分14秒(194秒)→pbzip2で1分43秒(103秒)と、2倍弱の高速化が達成されていたことが判った。

2007/09/22

いきなりアレイのデータが飛んだ

先日ファイルサーバを丸一日使わなかったので電源を落としておいたのだが、今日になって電源を投入してびっくり。起動時に漫然とカーネルのメッセージを見ていたら「ファイルシステムのマウントが失敗した」などとのたまう。不審に思ってcat /proc/mdstatしたら……リビルド中じゃねーか!もちろん、リビルドが終わったときにはアレイの中身はごっそり消えておりましたorz。PromiseのSATAアダプタに挿したディスクの認識順が毎回バラバラなのが原因ではなかろうか……。こんなことでは危なくて仕方が無いので、問題が解決するまではバックアップのHDDを使うことにしたが、こちらはこちらで別のことに使おうと思ってパーティションを切り直してしまったため、慌ててxfs_repairでデータをレスキューした。あ、危ねぇ……。

本日の教訓「枯れてる技術サイコー」。

2007/09/19

せ、性能が出てない……。

めでたく組みあがったディスクアレイで試しにファイルコピーを実行したところ、感動的なまでに性能が出ていない。シーケンシャルリード18MB/sってのはいったい何の冗談ですか。Samsung HD501LJ(SerialATA 500GB)単発に余裕で負けてるんですけど(涙)。もっとも、データ保護という点を考慮するとRAID5を止める気は無いんだけど。

Antec P182はファイルサーバに向かん。

3連休でディスクアレイを構築すべくHDDを組み込んだのだが、これが悪態の4・5発もつきたくなるような実に忌まわしい作業だった。

このケースは一応3.5インチHDDを6台積めることになっているのだが、フルにHDDを実装するとSerialATAでもケーブルの取り回しが面倒くさくていけない。当方では80 + 500 + 250×4(RAID5)で計6台の割とアホな構成でファイルサーバを構築したわけなんだが、ケーブルの取り回しが大変で、コネクタの抜けとか破損の恐怖に怯えながらPCを組む羽目になり精神衛生上非常によろしくない。アホみたいにディスクを積み込みまくりたい御仁にはこのケースは不向き。専用の外付けケースを使うか、さもなくば5インチベイがたくさんあるケースにエンクロージャを組み込むのが良いかと思われる。

さて、ビクビクしながら組み上げたPCは(HDDの認識順がSATAアダプタのポートと一致していないなど不安でいっぱいだが)一応動くようになったので、まずは時間節約のため4台並列でHDDの検査を行う。/sbin/badblocks -s -w -f デバイスファイルを立て続けに4回実行してしばらく待つ。この際screenを使うと、検査中にログアウトしてどこかに遊びにいけるというのが便利だ。250GBのディスクの検査には半日くらいかかるようなので、その間洗濯などしつつチンタラ待つ。

半日待ってディスクに問題が無いことを確認したら、まずは各HDDにfdiskでパーティションを切る。このときパーティションタイプは0xfd(Linux RAID autodetect)にしておく。最後にfdisk -l /dev/sd[c-f]などとして、アレイを組むディスク全部にパーティションを切ったことを確認してアレイを作成する。うちではファイルサーバにDebian GNU/Linux 4.0(etch)を使っているので、アレイはmdadmで組むことになる。mkadm /dev/md/0 -l5 -n4 /dev/sd[cedf]1とかタイプするとデバイスファイル/dev/md/0でアクセスできるアレイが構築され、いきなりパリティの計算がおっ始まる。パリティの計算中でも一応ディスクに書き込みはできるのだが、ここは我慢して待つことにした。パリティ計算の進行状況は/proc/mdstatに書いてあるので、catなどで適宜状況を確認しつつ、他のことでもしていると良いだろう。今回750GBの初期化には130分ほどかかったので、そのあいだじゅう18歳の老犬と戯れておりました。なお、mdadmに対してうっかり/dev/sd[c-f]などとディスク全体を与えてしまうと、せっかく作ったパーティションテーブルが破壊され、後々何かと厄介なことになるので注意すること(私は何度かしくじった)。

つつがなくアレイのパリティ計算が終わったら、普通はファイルシステムの作成へとなだれ込むのだが、今回はxfs_copyで500GBのHDDからデータをコピーすればことが足りるので、コピー元のHDDをアンマウントしてxfs_copy /dev/sdb /dev/md/0でコピー。ちなみに、この方法はddと違い未使用ブロックはコピーされないので時間の節約にはなるのだが、困ったことにファイルシステムのサイズがコピー元と同じ500GBになってしまう。そこでまずはmount -t xfs /dev/md/0 /mntとしてアレイをマウント後、xfs_growfs /mntでファイルシステムが750GBに拡張される。めでたしめでたし。

ここまできたら後は簡単。/etc/fstabを書き換えて、アレイを起動時にマウントできるようにするだけ。アレイを起動時に自動認識するのは、Debianのmdadmを使っているのであれば自動でやってくれる。

今後の目標は、まずは障害対応のために「アダプタのポート番号とデバイスファイル名の対応を固定する」というのがある。これは切実なので気合を入れて調査しなくてはいけない。その次はお遊びでアクセスランプを4つ装備して、分散パリティ付きストライピングしているところを見えるようにすること。最後にディスクを1台追加してアレイに追加し、オンライン領域拡張を試すことかな?もっとも、次にディスクを足す方法が大問題なのだが。とりあえず4台まではPCIでなんとかなったが、この上を目指すとなるとものすごく頭が痛い……。

結局再インストールだよorz。

CA Internet Security Suiteはめでたくライセンスが切れたので、アンインストール後に再インストール。しかしComputer AssociatesのWebサイトの状況が1年間全く好転してないってのはいかがなものかと思うな。ちなみにこのサイト、WebサーバがIISだったりするのでますますもって嫌な感じだ(※IEで登録しようとしてもダメなんだけど)。

2007/09/16

1年ぶりなので忘れてた

自宅ではウイルス対策とパーソナルファイアウォールにComputer Associatesの製品を使っている。往年のMcAfee VirusScanみたいにアップデータが腐っている(アップデータはActiveXコンポーネントなのだが、アップデートサイトに接続するのに「既定のWebブラウザ」でアクセスするので、Firefox/Operaユーザーはたまったものではなかった)わけでもないし、特に動作に問題があるわけでもない。

唯一の難点が「ユーザー登録ができない」ということなんだよな、あと1日でライセンス切れるってのに、なんだって更新しようとすると「エラーが発生しました」とかアホなメッセージが出やがるんだ(激怒)。