がらくたネット


3WareのRAIDコントローラ

3WareのRAIDコントローラ

3ware製のRAIDコントローラは定評が高い。

特にlinux機に対してはすこぶる安定して動作するし管理ソフトもシンプルで非常にありがたい。

2TB越えHDDのサポート状況はここ

Firmwareによってwrapされるので要注意!!

ちなみに4TB認識は9650SEのFirmWare 4.10.00.26でOKだった。4.10.00.007ではNGだった。要注意。 FirmWareのアップデートは起動できるUSBメモリを作成して(rufusとかのツール利用) その中にFirmWareファイルを入れておいて、up9650.batをたたけばOK

管理ソフトのインストール

管理ソフトのインストール By CodeSet 10.2版

wget http://www.lsi.com/downloads/Public/SATA/SATA%20Common%20Files/3DM2_CLI-Linux-10.2.zip
unzip -d 3DM2_CLI-Linux-10.2 3DM2_CLI-Linux-10.2.zip
cd 3DM2_CLI-Linux-10.2
sh install.sh --install -fN0
コマンド一撃でドーンとインストールです!

オプション 意味
–install インストールと設定ファイルの作成
–uninstall アンインストール
-f プロンプトを出さない
N0 3dm2をGUIモードでインストール、1ならロギングモード

管理ソフトのインストール(古くなった)

 # wget http://www.3ware.com/download/Escalade9550SX-Series/9.3.0.4/3DM2-Linux-9.3.0.4.tgz
 # tar zxvf 3DM2-Linux-9.3.0.4.tgz
 # .install.3dm -i
 
 3ware 3DM2 installation, configuration and removal script.
 (c) 2006 Applied Micro Circuits Corporation. All rights reserved.
 Script version: v2.03.00.018 for x86
 3DM2 supports two modes of operation.
 -------------------------------------
 0 - 3DM2 with remote/local GUI via WEB interface (Default)
 1 - 3ware error logger only
 
 Which version of 3DM would you like configured? [0 - 3DM2] 0
 ** 3DM2 selected. ** 
 
 **** 3DM2 version being installed is: 2.04.00.018 for x86 ****
 Please enter the location for the help files.  [/usr/local/doc/3dm2]
 Please enter the location for the message files. [/etc/3dm2/msg]
 3DM2 help files being installed... done.
 3DM2 message files being installed... done.
 
 Would you like to have email notification enabled? (Y/N) [Y] y
 Please enter the name of your mail server. [ss1.hypc.co.jp]:  localhost
 Please enter the name of the user you want sending email  notification. [root]:
 Please enter the name of the user you want receiving email notification. [3ware_admin]:root
 
 Email Notification Severity Levels.
 -----------------------------------
 1) Errors
 2) Warnings
 3) Information
 Please enter the email notification severity level (1,2,3). [1]: 2
 Please enter the port number you would like to use for web monitoring. [888]:
 Would you like 3DM2 connection security to limit connections to localhost only? (Y/N) [Y] N
 
 *** Starting 3DM2 using configuration found in /etc/3dm2/3dm2.conf ***
 [1] 6770
 
 Cleaning up installation files....
 
 Starting 3ware DiskSwitch daemon: [ OK ]
 [1] + 終了 /etc/init.d/tdm2 start

  • 接続する 
    https://<サーバ名>:888/
  • Administratorでログインする 
    パスワードは3ware

httpsで接続するために3dm2.pemが/etc/3dm2に作成されるが
これは3dm2のバイナリ(3dm2.x86 or 3dm2.x86_64)が実行時に
自動生成している様子
生成されない場合があるが、原因不明…
バイナリ内にはOpenSSL 0.9.7gを利用していると記載があるように見受けられる

絶対やる事

Administratorのパスワードを変更する(デフォルトは3ware)

Userのパスワードを変更する(rootと同様、デフォルトは3ware)

install.3dmのset default_passwordを変更することでインストール時に変更しておくことも可能

この値は暗号化されている(暗号化方法はまだ不明…)

tw_cli

tw_cliで色々と操作可能
とりあえず見るだけの操作


搭載コントローラとコントローラ番号を表示
tw_cli show

コントローラ番号のみ表示
tw_cli show | grep 9650SE | awk '{print $1}'


コントローラc4のp0物理HDDのモデル名とシリアル番号を表示
tw_cli /c4/p0 show model serial
/c4/p1 Model = Hitachi HDT721032SLA360
/c4/p1 Serial = STF204ML0W38LP

こんな感じ。コントローラー番号を取得しておく必要がある。

搭載確認

起動後、dmesgに以下の内容が記載される

9000番台
3ware 9000 Storage Controller device driver for Linux v2.26.02.008.
scsi0 : 3ware 9000 Storage Controller
3w-9xxx: scsi0: Found a 3ware 9000 Storage Controller at 0xfebff000, IRQ: 169.
3w-9xxx: scsi0: Firmware FE9X 4.06.00.004, BIOS BE9X 4.05.00.015, Ports: 2.
  Vendor: AMCC      Model: 9650SE-2LP DISK   Rev: 4.06
  Type:   Direct-Access                      ANSI SCSI revision: 05

8000番台
3ware Storage Controller device driver for Linux v1.26.02.002.
scsi0 : 3ware Storage Controller
3w-xxxx: scsi0: Found a 3ware Storage Controller at 0xc800, IRQ: 21.
scsi 0:0:0:0: Direct-Access     3ware    Logical Disk 0   1.2  PQ: 0 ANSI: 0

/etc/modprobe.confに以下の記載がある

alias scsi_hostadapter 3w-9xxx ←9000番台
alias scsi_hostadapter 3w-xxxx ←8000番台

lspciの戻り値

#lspci | grep 3ware
9000番台
02:00.0 RAID bus controller: 3ware Inc 9650SE SATA-II RAID (rev 01)

8000番台
01:09.0 RAID bus controller: 3ware Inc 7xxx/8xxx-series PATA/SATA-RAID (rev 01)

7000/8000シリーズから9000シリーズへの移設

8000シリーズを利用していたがPCIバスモデルがなくなり、PCIバス搭載マシンもほぼなくなった事から9000シリーズのPCI-E環境に移行する必要性がでてきた。普通に付け替えるだけではやっぱりダメで処理しないといけない。その手順を公開。

3wareサイト参考情報

上記サイト情報によると7000/8000シリーズがHDDに書き込むArray情報と9000シリーズのそれは異なる。異なるので9000シリーズ用に書き換えるconvertツールが提供されている。また7000/8000と9000ではドライバが異なる。この点に留意して処理しなければならない。

乗せ換えるサーバがマルチコアの場合は、先にsmpを有効にしたkernelで起動しておくと後々面倒にならない。

この参考情報サイトに掲載されているconvert.zipをダウンロードして解凍する。DOSプログラムなのでDOSが起動できるFDを用意する。FDが用意できなければBootableCDでも構わない。その中にconvert.exeとdos4gw.exeがあるのでこの2ファイルを起動FDにコピーする。

Linuxの場合、下記手順が必要(kernel 2.6.18系の場合)

  1. 7/8000接続環境上でArrayが正常なことを確認しておく
  2. 9000シリーズ用ドライバをインストールする
    1. 9000シリーズ用ドライバをダウンロード(3w-9xxx-linux-src-9.5.3.tgz 2010/03/12現在)
      cd /tmp(/tmpにダウンロードしたとする)
      tar zxvf 3w-9xxx-linux-src-9.5.3.tgz
    2. 稼働カーネルバージョンにあったドライバソースを展開
      cd 3w-9xxx-linux-src-9.5.3
      tar zxvf 3w-9xxx-2.6.18.tgz
    3. ドライバコンパイル
      cd driver
      make -f Makefile
    4. 既存ドライバと初期RAMイメージ(initrd)のバックアップ
      cd /lib/modules/<kernel-version>/kernel/drivers/scsi
      mv 3w-9xxx.ko 3w-9xxx.ko.org
      cd /boot
      mv initrd-<kernel-version>.img initrd-<kernel-version>.img.org
    5. ドライバインストール
      cd /tmp/3w-9xxx-linux-src-9.5.3/driver(ドライバコンパイルディレクトリ)
      cp 3w-9xxx.ko /lib/modules/<kernel-version>/kernel/drivers/scsi
    6. 初期RAMイメージ作成
      mkinitrd -v -f --with=3w-9xxx --with=scsi_mod --with=sd_mod /boot/initrd-<kernel-version>.img <kernel-version>
  3. 再起動
  4. 9000シリーズ用ドライバがロードされている事を確認する
    dmesg | grep 3w
  5. 停止
  6. FDでDOS起動
  7. convert.exe実行
  8. 停止
  9. 9000シリーズに接続しなおす
  10. 起動
  11. おめでとう!これで7000/8000シリーズと決別して9000シリーズに移行できました!
convert.exe実行後は7/8000シリーズに接続してもArray情報が読み取れずに新規HDDとして認識されるので絶対接続したまま起動してはいけない!
convert.exeはArray状態が正常でなければ動作しない
kernel 2.6系のドライバは2.6.8以降しかない
確認済みOS CentOS4.5/CentOS5.3/5.4 FC3/4
convert.exe -kとすると古い(旧式の)DCBも削除せずに残される。つまり8000/9000の両方に接続できるってこと。サポート外だけど

Fedora Core 4

Fedora Core 4で試してみたときえらい状態になっているのに気がついた。

再起動をすると必ずイニシャライズが走るのだ。なんでだろうと検索してみるとFC4の標準カーネル2.6.11-1.1369のバグだと。3wareサイト参考情報

なんつーことだ!カーネルをupdatesしないとconvert実行することができない!要注意です!!

しかも既にFC4のリポジトリはメンテナンスが終了しているのでリポジトリデータをmirrorlistからbaseurlに変更した上でkddilabs.jpなどにむけなおさないといけない。

  1. fedora-extras.repoはリネームして利用しない
  2. fedora.repoとfedora-updates.repoのmirrorlistをコメントアウトしてbaseurlを追加
    fedora.repoはftp://ftp.kddilabs.jp/Linux/packages/fedora.legacy/fedora/$releasever/os/$basearch/
  3. fedora-updates.repoは
    ftp://ftp.kddilabs.jp/Linux/packages/fedora.legacy/fedora/$releasever/updates/$basearch/

シングルコアCPUからマルチコアCPUにシステムを入れ替えた場合、FC3/4ではKernelをSMP対応に入れ替える必要がある。この場合、3wareのドライバもSMP用でコンパイルする必要があるので、事前にSMPカーネルで起動しておくこと。 またはSMP対応Kernelで起動できない場合、Makefileに記載がある`uname -r`の後にsmpをつけてコンパイルすると指定バージョンのKernelソースを参照してコンパイルしてくれる。