サーバ更新から1週間経ったが、実はまだ安定稼働していなかったり。
HDDへのアクセスがどうにもこうにも遅い。
Fedora Core 6にはLVM(論理ボリューム管理)という仕組みがある。物理的なHDDやパーティションを寄せ集めたりしてグループを作り、それを仮想的なひとつのドライブとして管理する、ような仕組み。アクティブな状態のまま、それぞれの領域を拡大、縮小できるという画期的な仕組みではある。今回初めて触れたこの仕組みが、どうにもよくわからなくて。
我が家のサーバのHDD構成は、250GBが1台、200GBが2台、80GBが2台の合計5台。80GBと200GBはRAID1(ミラーリング)で構成している。RAIDはOSやソフトウェアではなくRAIDカードで行っているので、Fedora
Coreから見れば250GB、200GB、80GBの3台に見えている。200GBと80GBのHDDをLVMで取りまとめ、280GBの1ドライブとして扱おうと思ったところからスタートした。構成自体はうまくいき、1週間前にすんなり稼働を開始した。しかし…、しかしである。smbで共有したドライブにWindowsからアクセスすると画期的に遅いことがわかったのである。バックアップしておいたデータの書き戻しに異常に時間がかかるのだ。smbが悪いのか、LVMが悪いのか…。
試しに、200GBと80GBを取りまとめた論理ボリュームと250GBのHDDとの間でファイルコピーを繰り返し、どうやらこの論理ボリュームへのアクセス自体が遅いということがわかった。さらに、論理ボリュームによるドライブの取りまとめをやめ、個別にアクセスしてもおかしい。果ては、アクセスしようとしたままタイムアウトし、ドライブにアクセスさえできなくなる始末。
原因はHDDの機械的な問題ではないかと疑い始めた。とにかく、ありえないくらい遅いのだ。Linuxはサーバ用途くらいにしか使っていないので、ディスクをチェックするようなコマンドも知らないので途方に暮れる。挙動だけ見れば、不良セクタをよけながら書いているような、もしくはべりファイに失敗してリトライしているような、そんなくらいの遅さ。時間をかけて調べるよりも、HDDを新調してしまう方が得策か…俺は楽天市場でHDDを注文した。日曜のことだ。
月曜深夜…というか、火曜早朝。つまり、これを書いている今よりちょっと前。仕事が一段落し、気晴らしにLinuxに関する情報を検索していると、ある情報に行きあたった。
「RAIDカードを装着するとHDDが遅くなる」
「DMAをONにすると改善された」
ん? DMA? えー? あー、そうか。えー、そうなの? うーん。
ということでそのサイトに書かれていた方法でうちのサーバをチェック。
/sbin/hdparm /dev/hda
:
using_dma = 0 (off)
あー、うちもOFFだ。転送速度をチェックすると8MB/秒程度。
/sbin/hdparm -d 1 /dev/hda
とコマンドを打ち込んで、DMAを有効にすると、一気に53MB/秒へ(笑)
えー、そーなのー?
ということで、明日届く予定のHDDはいらなかったかもしれないという悲しいお話でした。
ちなみに、LVMの仕組み、操作方法については「LVMを使ってみよう」が参考になった。
|