2007/10/16

さて、バックアップでも取ろうかな。

ファイルサーバのディスクを増強した過程で「Antec P182にハードディスクを6台突っ込むのは危険行為だ」ということが身にしみて判ったので、専用のエンクロージャ(5インチベイ3段にディスク5台を突っ込む)を購入してみた。ファイルサーバを止めて作業をする前に、バックアップを取らなくては。というわけで、イマイチ使い方が良くわからんxfsdumpコマンドでとっととバックアップを取る。

バックアップを取りついでに、ファイルシステムの再構成もかけてしまおうかと考えてみた。聞くところによると、アレイのブロックサイズとXFSのブロックサイズを一致させるとファイルアクセスのオーバーヘッドが最も低くなるらしいのだ。しかし、LinuxにおけるXFSファイルシステムのブロックサイズは最大64KB。ディスクアレイは現在のブロックサイズ256KBの時パフォーマンスが良いのだが(というか、64→128で急激に性能が向上し、さらに128→256で多少の性能向上を見たのだが、それ以上は面倒くさくなって止めた)、64KBに戻すと覿面に遅くなるんだよなぁ。現在アレイの書き込みで70MB/s程度出ている(ddコマンド調べ)のだが、アレイのブロックサイズをデフォルトの64KBにしていた頃は20MB/s切ってたものなぁ。というわけで、ファイルシステムの再構成は却下し。HDDをエンクロージャに移し変えるだけで我慢しておく。

すったもんだの末にエンクロージャをケースに取り付けてみたんだが、これがまたなんとも微妙。P182には4段の5インチベイがあり、DVD-ROMなどのドライブを取り付ける際には、ドライブ側に専用のレールを取り付けてベイに差し込むだけで取り付けが完了する仕組みになっている。直にネジ止めするタイプのケースだと、ケースの両側を開けて両側からネジを締めたり緩めたりしなければならんので、便利な仕組みではある、光学ドライブをつけるときには。

このエンクロージャ、困ったことにネジ穴の位置が光学ドライブとだいぶ違っているので、レールを付けてケースに突っ込むと5インチベイ4段を占有し、かつ上下にみっともないスキマができてしまうのだった。まぁ、Linuxマシンの光学ドライブは使用頻度が低いし、USB接続の光学ドライブ外付けケースもあるので、とりあえず5インチベイ4段はHDDに占拠させておくことにしても構わないんだが。

で、電源を入れてファイルサーバを起動したところ、乙なことに電源投入時にはスタッガード・スピンアップ(複数台のHDDのモータを一斉に始動すると瞬間的に消費電力が跳ね上がり電源に負荷がかかるので、1台ずつ時間差でHDDのモータを始動する仕組み)しているようではないか。さらにOSを起動してみると、つつがなく認識はされている。ここで一発ddコマンドで4GBのファイルを作りつつ、エンクロージャのアクセスランプを眺めると……おぉ、なんか並列にアクセスしてるっぽく点滅してるじゃないか。善哉。正直な話、自作でディスクアレイを組む醍醐味ってのは、このアクセスランプがチカチカ点滅するのを拝むところにあるんだよな。データ保護ならバックアップ取っとけば良いんだし、個人レベルでダウンタイムの短縮なんて効果が薄いし。

ふと気になってhdparm -i /dev/sd[cdef]などと叩き込んでHDDの認識順を調べてみたところ、スタッガード・スピンアップのご利益でエンクロージャに突っ込んだ順にきちんと認識されている。これは素晴らしい。


hogehoge:~# hdparm -i /dev/sd[cdef]

/dev/sdc:

 Model=Hitachi HDT725025VLA380                 , FwRev=V5DOA73A, SerialNo=      VFC100R1D7YWDD
 Config={ HardSect NotMFM HdSw>15uSec Fixed DTR>10Mbs }
 RawCHS=16383/16/63, TrkSize=0, SectSize=0, ECCbytes=52
 BuffType=DualPortCache, BuffSize=7372kB, MaxMultSect=16, MultSect=?0?
 CurCHS=16383/16/63, CurSects=16514064, LBA=yes, LBAsects=268435455
 IORDY=on/off, tPIO={min:120,w/IORDY:120}, tDMA={min:120,rec:120}
 PIO modes:  pio0 pio1 pio2 pio3 pio4
 DMA modes:  mdma0 mdma1 mdma2
 UDMA modes: udma0 udma1 udma2 udma3 udma4 udma5
 AdvancedPM=yes: disabled (255) WriteCache=enabled
 Drive conforms to: ATA/ATAPI-7 T13 1532D revision 1:  ATA/ATAPI-2 ATA/ATAPI-3 ATA/ATAPI-4 ATA/ATAPI-5 ATA/ATAPI-6 ATA/ATAPI-7

 * signifies the current active mode


/dev/sdd:

 Model=Hitachi HDT725025VLA380                 , FwRev=V5DOA73A, SerialNo=      VFA160R132828B
 Config={ HardSect NotMFM HdSw>15uSec Fixed DTR>10Mbs }
 RawCHS=16383/16/63, TrkSize=0, SectSize=0, ECCbytes=52
 BuffType=DualPortCache, BuffSize=7372kB, MaxMultSect=16, MultSect=?0?
 CurCHS=16383/16/63, CurSects=16514064, LBA=yes, LBAsects=268435455
 IORDY=on/off, tPIO={min:120,w/IORDY:120}, tDMA={min:120,rec:120}
 PIO modes:  pio0 pio1 pio2 pio3 pio4
 DMA modes:  mdma0 mdma1 mdma2
 UDMA modes: udma0 udma1 udma2 udma3 udma4 udma5
 AdvancedPM=yes: disabled (255) WriteCache=enabled
 Drive conforms to: ATA/ATAPI-7 T13 1532D revision 1:  ATA/ATAPI-2 ATA/ATAPI-3 ATA/ATAPI-4 ATA/ATAPI-5 ATA/ATAPI-6 ATA/ATAPI-7

 * signifies the current active mode


/dev/sde:

 Model=Hitachi HDT725032VLA360                 , FwRev=V54OA7EA, SerialNo=      VFM201R2E3WNTN
 Config={ HardSect NotMFM HdSw>15uSec Fixed DTR>10Mbs }
 RawCHS=16383/16/63, TrkSize=0, SectSize=0, ECCbytes=52
 BuffType=DualPortCache, BuffSize=15315kB, MaxMultSect=16, MultSect=?0?
 CurCHS=16383/16/63, CurSects=16514064, LBA=yes, LBAsects=268435455
 IORDY=on/off, tPIO={min:120,w/IORDY:120}, tDMA={min:120,rec:120}
 PIO modes:  pio0 pio1 pio2 pio3 pio4
 DMA modes:  mdma0 mdma1 mdma2
 UDMA modes: udma0 udma1 udma2 udma3 udma4 udma5
 AdvancedPM=yes: disabled (255) WriteCache=enabled
 Drive conforms to: ATA/ATAPI-7 T13 1532D revision 1:  ATA/ATAPI-2 ATA/ATAPI-3 ATA/ATAPI-4 ATA/ATAPI-5 ATA/ATAPI-6 ATA/ATAPI-7

 * signifies the current active mode


/dev/sdf:

 Model=Hitachi HDT725032VLA360                 , FwRev=V54OA7EA, SerialNo=      VFM201R2E2ZY3N
 Config={ HardSect NotMFM HdSw>15uSec Fixed DTR>10Mbs }
 RawCHS=16383/16/63, TrkSize=0, SectSize=0, ECCbytes=52
 BuffType=DualPortCache, BuffSize=15315kB, MaxMultSect=16, MultSect=?0?
 CurCHS=16383/16/63, CurSects=16514064, LBA=yes, LBAsects=268435455
 IORDY=on/off, tPIO={min:120,w/IORDY:120}, tDMA={min:120,rec:120}
 PIO modes:  pio0 pio1 pio2 pio3 pio4
 DMA modes:  mdma0 mdma1 mdma2
 UDMA modes: udma0 udma1 udma2 udma3 udma4 udma5
 AdvancedPM=yes: disabled (255) WriteCache=enabled
 Drive conforms to: ATA/ATAPI-7 T13 1532D revision 1:  ATA/ATAPI-2 ATA/ATAPI-3 ATA/ATAPI-4 ATA/ATAPI-5 ATA/ATAPI-6 ATA/ATAPI-7

 * signifies the current active mode

hogehoge:~#

デバイスが接続順にきちんと認識されたところで、現在のアレイのディスク構成を見る。


hogehoge:~# mdadm -D /dev/md0
/dev/md0:
        Version : 00.90.03
  Creation Time : Sun Sep 23 15:34:36 2007
     Raid Level : raid5
     Array Size : 732595200 (698.66 GiB 750.18 GB)
    Device Size : 244198400 (232.89 GiB 250.06 GB)
   Raid Devices : 4
  Total Devices : 4
Preferred Minor : 0
    Persistence : Superblock is persistent

    Update Time : Tue Oct 16 00:07:24 2007
          State : clean
 Active Devices : 4
Working Devices : 4
 Failed Devices : 0
  Spare Devices : 0

         Layout : left-symmetric
     Chunk Size : 256K

           UUID : d26441e1:34505416:903e389b:f86352b0
         Events : 0.8

    Number   Major   Minor   RaidDevice State
       0       8       64        0      active sync   /dev/sde
       1       8       48        1      active sync   /dev/sdd
       2       8       80        2      active sync   /dev/sdf
       3       8       32        3      active sync   /dev/sdc
hogehoge:~# 

……2番目→3番目→4番目→1番目の順でディスクに番号振ってあるのか……ダメだこりゃ。機会を見つけてアレイを再構成してしまおう。

0 件のコメント: