follow me

はじめてのConnectX EN(10GbE)

はじめてのMellanox ConnectX EN(10GbE)です。
はりきってDDRなInfinibandライフを満喫するつもりでESXiなサーバに刺しました。
利用したHCAは、HP 448397-B21になります。(中身はMHGH28-XTCですね。)
中古入手なのでファームを最新にしてESXi 4.1u1にドライバを適用。
何も考えず、VMware ESX/ESXi 4.x Driver CD for Mellanox ConnectX Ethernet Adapters をダウンロードし導入してしまった。
# esxupdate --bundle=MEL-mlx4_en-1.5.7-0-offline_bundle-642409.zip update
Unpacking cross_vmware-esx-drivers-net-mlx4-e.. ################################################################ [100%]

Installing packages :cross_vmware-esx-drivers.. ################################################################ [100%]

Running [/usr/sbin/vmkmod-install.sh]...
ok.
The update completed successfully, but the system needs to be rebooted for the
changes to be effective.
# 
ESXiで認識してから気が付きました。
入れるドライバを間違えてる。。。
Infinibandではなく、10GbEで認識してしまいました。


Infiniband SRP Targetなストレージに繋いで遊ぶのが目的だったので、完全に失敗。。。
ドライバ入れなおさないと。。。
follow me

QUADStorを入れてみた

FCなストレージを利用する際にOpenfilerも若干飽きてきた私は、VAAI Supportな文字に釣られてQUADStorをインストールしてみました。


アーキテクチャとしてLinuxとFreeBSDをサポートしている模様。
ユーザ登録すると、導入パッケージとキーが入手できる様になります。

導入自体は、ガイドに従えばそのまま入ります。
CentOS 6系のminimal CDから導入した場合は、httpd、gcc、kernel-devel、sg3_utilsに加えて、make、perlもyumで導入しておく必要があります。
SELinux有効なままで動かしたい場合は、policycoreutils-pythonも追加で導入しておかないといけない臭い。。。(ちょっと勉強不足

で、ディスクの余っている領域をストレージにしようとしたら、起動ディスクとは異なるディスクしか登録できない模様。
この辺はFreeNASなどと同じですね。
やはり、起動ディスクとストレージディスクは別けろってのが定石なのでしょうか。
ディスクが勿体ないという貧乏根性丸出しの私は結局、scstの自分ビルドに戻ることにしました。。。
follow me

Infiniband HCAをSolarisでも使いたい

InfinibandをSolarisでも使いたい。(ZFSを利用したい)
って事で、Solarisで認識するカードを入手しましたよ。
HP 380298-B21(Mellanox MHEA28-1TC)です。
ヤフオクでHCA 2種類とケーブルセットで見つけたのでポチっとなぁ。(安くは無いんだけど、Solarisで認識するのって探すの面倒だし。。。)
ヤフオクでいつもInfiniband系を出品されてる方から買うのは何度目なんだろう。結構お世話になってるなぁ。


follow me

SRP Target(scst) for CentOS 6.0 試してみる

SRP Targetを作った時の纏め書き。
使用したKernelは 3.1.4(vanilla)、scstはSVNのtrunkを利用。
ディストリビューションには、CentOS 6.0を利用していますが、VanillaKernelを利用しているので、ディストリビューション依存は少ないと思われます。

1.まずは kernel と scst 入手。
# wget ftp://ftp.riken.jp/Linux/kernel.org/linux/kernel/v3.x/linux-3.1.4.tar.gz
# svn co https://scst.svn.sourceforge.net/svnroot/scst

2.scst のパッチ生成。
この方法ではなく、Kernelバージョンにあわせ必要なパッチを適用し、Kernelディレクトリに配置していく事で実施するのが、README通りの方法ですが、経験上このスクリプトで生成したパッチを利用する方がトラブルが少ないです。
※3.1.4などと指定しないように、パッチは生成されますが、ビルドに失敗します。
# cd scst/trunk
# ./scripts/generate-kernel-patch 3.1 > 3.1.patch

3.カーネル・ビルド。
生成されたパッチを適用し、make configしてビルド。
ひたすら待つ。

4.ツールのビルド・導入。
scstadminは、普通にmake、make installで導入できます。
/sysをつかっているか/procを使っているかで、リンクを差し替えろとなっているので、注意は必要。

5.scst な kernel で起動
起動してきたら、必要なモジュールを読み込み。
個人的には、vdiskが使いやすいと思っているので、scst_vdiskを読み込んでいます。
この辺は、用途に合わせて選んでください。
# modprobe scst
# modprobe scst_vdisk
# modprobe ib_srpt

6.OpenSMが必要なら、起動しておきましょう。
Infinibandネットワーク上にSubnetManagerが存在するなら必要ないですが、無い場合は起動しておきましょう。
Infinibandネットワーク内に、必ずSubnetManagerが一台必要になります。
(CentOS 6.0であれば、RPMパッケージが提供されている為、yumで導入が可能です。)
※起動には、ib_umadモジュールが必要になります。
# modprobe ib_umad
# /etc/init.d/opensm start

7.scstの設定
scstの設定はこんな感じで良いんじゃなかろうか。
イニシエータの登録箇所がとても長いですが、イニシエータが接続しに着ているのであれば、セッションを見ればinitiator IDは分かります。
基盤に書いてあった記憶は無いですが、イメージ的にはNICのMACアドレスみたいな感じと思えば良いかと。。。
# scstadmin -clear_config -force
# scstadmin -open_dev DISK01 -handler vdisk_blockio -attributes filename=/dev/sdb1
# scstadmin -set_dev_attr DISK01 -attributes t10_dev_id=0x2345
# scstadmin -add_group HOST01 -driver ib_srpt  -target ib_srpt_target_0
# scstadmin -add_lun 0 -driver ib_srpt -target ib_srpt_target_0 -group HOST01 -device DISK01 -attributes read_only=0
# scstadmin -add_init 0x8102c9020022de9d0002c9020022e105 -driver ib_srpt -target ib_srpt_target_0 -group HOST01
# scstadmin -enable_target ib_srpt_target_0 -driver ib_srpt
# scstadmin -write_config /etc/scst.conf

8.イニシエータからつないでみる。
設定したLUNが見える筈。


簡単なメモですが、Infiniband SRP Targetの情報はまだ少ないので、これから自宅Infinibandされる方の参考になればと思います。
では、自宅Infinibandをお愉しみクダサイ。
follow me

Infiniband SRP Target動作確認(CentOS 6.0)

scstでのInfiniband SRP Targetの動作確認が取れました。
ひとまず報告。

SRP Target機
・CentOS 6.0
・Kernel 3.1.4(vanilla)
・scst(svnのtrunkを利用)
・OpenSM(CentOSで提供されているバージョン)

SRP Initiator機
・vmware ESXi 4.1
・Mellanoxのドライバ導入済

利用したHCAは双方 Mellanox Technologies MT25204 [InfiniHost III Lx HCA] (rev a0) です。
接続方法は、スイッチなどを挟まず直結構成になります。


導入手順については、纏めてアップする予定ですのでお待ちください。
follow me

IP over Infiniband (CentOS 6.0)

ML115 G5 (CentOS 6.0)環境で IP over Infinibandしました。
利用したHCAは Mellanox Technologies MT25204 [InfiniHost III Lx HCA] (rev a0) になります。

まずはじめに、Mellanoxのサイトからダウンロードしてきたドライバは、Kernelが合わないと怒られました。
[root@scst ~]# mount -o loop MLNX_OFED_LINUX-1.5.3-1.0.0-rhel6-i686.iso /mnt/
[root@scst /]# cd /mnt
[root@scst mnt]# ./mlnxofedinstall
The 2.6.32-71.el6.i686 kernel is installed, but do not have drivers available.
Cannot continue.

CentOS 6.0は、標準でInfinibandをサポートしていた筈なので、Kernelモジュールを確認してみました。
yum search openfabrics などとするとドライバ系のRPMパッケージも提供されている様ですが、何も追加しなくてもMinimalインストールした状態でも問題なく利用できる様です。
必要なモジュールは2個。
IPoIBに必要なのは、ib_ipoibです。
ネットワーク上に、SubnetManagerが存在しない場合は、OpenSMを導入してください。
ib_umad は、OpenSM動作に必要なモジュールになります。
[root@scst ~]# modprobe ib_ipoib
[root@scst ~]# modprobe ib_umad
[root@scst ~]# /etc/init.d/opensm start
Starting IB Subnet Manager:[  OK  ]
[root@scst ~]#
認識は、こんな感じになります。IPアドレスのつけ方とかは、Ethernetと同じです。
[root@scst ~]# ifconfig ib0
Ifconfig uses the ioctl access method to get the full address information, which limits hardware addresses to 8 bytes.
Because Infiniband address has 20 bytes, only the first 8 bytes are displayed correctly.
Ifconfig is obsolete! For replacement check ip.
ib0       Link encap:InfiniBand  HWaddr 80:00:04:04:FE:80:00:00:00:00:00:00:00:00:00:00:00:00:00:00  
          inet addr:192.168.0.1  Bcast:192.168.0.255  Mask:255.255.255.0
          inet6 addr: fe80::202:c902:22:de9d/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:2044  Metric:1
          RX packets:15 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:6 overruns:0 carrier:0
          collisions:0 txqueuelen:256 
          RX bytes:1064 (1.0 KiB)  TX bytes:0 (0.0 b)
follow me

直結でもSubnetManagerは必要なのか?

2台直結状態で接続したInfiniband環境でも、SubnetManagerは必要なのだろうか?
A.SubnetManagerは必要。

直結状態でもSubnetManagerが必要という情報は、ちらほら見つかるのですが、SubnetManagerが無い状態だとどんな感じになるのかについて情報が見つからない。。。
で、試してみました。

SubnetManagerのサービスを停止させてみると、インタフェースがダウンした状態のままでした。
しかし、一度SubnetManagerを起動させ通信開始した後に、SubnetManagerサービスを停止させると、その後も通信は可能。(おそらく経路確立が出来ていれば通信に問題は無い模様)
ケーブルが断線などした場合、繋げ直した際には再度SubnetManagerが起動した状態でなければ通信は確立できない。


とりあえず、こんな感じの動きと判明しましたが。
まだ、IB Switchは所有していない為、複数繋げた状態の場合どの様な動きになるかは不明。
follow me

自宅Infiniband

しばらく腐った生活してましたが、OSC2011 Tokyo/Fallの自宅SAN友の会が盛り上っていたので、ひっぱり出して来た。
ネットワークアダプタ側


ストレージアダプタ側

さて1台をSlackware化してscstストレージにしますかね。
Slackware 13.37のDVDどこやったかなぁ。
follow me

InfiniBandがやってきた

Mellanox InfiniHost III Lx Single-Port InfiniBand HCAが我が家にやってきました。
入手した目的はDRBDで利用する事なので、どうでもいいのだがESXiで認識する事確認しておきました。
ESXi 4.1環境です。update1は当てていません。ESXi 5.0用のドライバが公開されてないので、5.0では認識するかは不明。あとで試してみようかな。


ドライバの導入は、こんな感じ。
ドライバは、Mellanoxのサイトからダウンロードできます。
/opt # wget http://mellanox.com/downloads/Drivers/ESX41_MLNX-OFED-1.4.1-2.0.000.zip
/opt # esxupdate --bundle /opt/ESX41_MLNX-OFED-1.4.1-2.0.000.zip --maintenancemode --nosigcheck update
/opt # reboot
ドライバが導入されてるか確認。
~ # esxupdate query
---------Bulletin ID--------- -----Installed----- -------Summary------- 
ESX41_MLNX-OFED-1.4.1-2.0.000 2011-09-23T11:23:43 Mellanox OFED Drivers 
follow me

SilkWorm 200Eが家に来た(パスワードリセット)

SilkWorm 200Eが安くでヤフオクで落ちてきました。
所有していたSilkWorm 3200でも自宅SAN環境的には問題ないのですが、安かったので衝動的に4Gbpsなスイッチを入手してみました。
5,000円なら悪くない。FCスイッチも安く入手できる様になったものです。

今まで所有していたSilkWorm3200は黒色だったので、かなり違った印象になってます。
僕は、I○Mさん系の仕事が多いので、OEMの黒いヤツのイメージが強くて、かなり異質に見えてしまいます。


入っていたバージョンは少し古いですが、Firmwareはユーザ登録していないとダウンロードできそうにないので現状で行くしかなさそうですね。
Kernel 2.6系にしてみたい気はしますが。
sghwb210e2:admin> version
Kernel:     2.4.19     
Fabric OS:  v5.1.0
Made on:    Thu Feb 23 01:55:30 2006
Flash:	    Thu May 31 04:27:53 2007
BootProm:   4.5.3