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環境に移行する必要性がでてきた。普通に付け替えるだけではやっぱりダメで処理しないといけない。その手順を公開。
上記サイト情報によると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系の場合)
- 7/8000接続環境上でArrayが正常なことを確認しておく
- 9000シリーズ用ドライバをインストールする
- 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
- 稼働カーネルバージョンにあったドライバソースを展開
cd 3w-9xxx-linux-src-9.5.3 tar zxvf 3w-9xxx-2.6.18.tgz
- ドライバコンパイル
cd driver make -f Makefile
- 既存ドライバと初期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
- ドライバインストール
cd /tmp/3w-9xxx-linux-src-9.5.3/driver(ドライバコンパイルディレクトリ) cp 3w-9xxx.ko /lib/modules/<kernel-version>/kernel/drivers/scsi
- 初期RAMイメージ作成
mkinitrd -v -f --with=3w-9xxx --with=scsi_mod --with=sd_mod /boot/initrd-<kernel-version>.img <kernel-version>
- 再起動
- 9000シリーズ用ドライバがロードされている事を確認する
dmesg | grep 3w
- 停止
- FDでDOS起動
- convert.exe実行
- 停止
- 9000シリーズに接続しなおす
- 起動
- おめでとう!これで7000/8000シリーズと決別して9000シリーズに移行できました!
Fedora Core 4
Fedora Core 4で試してみたときえらい状態になっているのに気がついた。
再起動をすると必ずイニシャライズが走るのだ。なんでだろうと検索してみるとFC4の標準カーネル2.6.11-1.1369のバグだと。3wareサイト参考情報
なんつーことだ!カーネルをupdatesしないとconvert実行することができない!要注意です!!
しかも既にFC4のリポジトリはメンテナンスが終了しているのでリポジトリデータをmirrorlistからbaseurlに変更した上でkddilabs.jpなどにむけなおさないといけない。
- fedora-extras.repoはリネームして利用しない
- fedora.repoとfedora-updates.repoのmirrorlistをコメントアウトしてbaseurlを追加
fedora.repoはftp://ftp.kddilabs.jp/Linux/packages/fedora.legacy/fedora/$releasever/os/$basearch/
- 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ソースを参照してコンパイルしてくれる。