2台の別々のコンピュータにある2つのMellanox ConnectX-2カードを、間にスイッチなしで相互に接続することは可能ですか?私は、高価なスイッチに$を費やすことなく、動詞プログラミングの使い方を学ぼうとしています。
特別なケーブルが必要ですか、それとも標準で問題なく動作しますか?標準イーサネットでは、クロスコネクトケーブルが必要です。
はい、直接接続できます。ただし、少なくとも1台のマシンでopensmサブネットマネージャーを実行していることを確認する必要があります。
ソフトウェア側から、Ubuntu 14.04を使用している場合は、次のパッケージをインストールします。
Sudo apt-get install opensm infiniband-diags librdmacm-dev libibverbs-dev libmlx4-dev
次に、これらを/ etc/modulesに追加します
mlx4_ib
ip_ipoib
rdma_ucm
カードにIPアドレスを追加します。/etc/network/interfacesを編集します
auto ib0
iface ib0 inet static
address 10.0.0.1
netmask 255.255.255.0
リブート。
Opensmが自動的に起動します。他のマシンに対して上記を繰り返しますが、別のIPを使用します。10.0.0.2。
すべてうまくいっていれば、10.0.0.1から10.0.0.2にpingでき、その逆も可能です。
いくつかのテストを実行します。
Sudo ibnodes
ああ、ibnodeと他のいくつかのスクリプトにはバグがあります。それらを編集することで修正できます。ほとんどは、/ usr/sbin内のアプリを実際に呼び出しているときに/ usr/local/sbinを指すシェルスクリプトです。
見つかった場合は、すぐに編集して、それに応じてIBPATHを変更します。私はそのためにUbuntuに対するバグレポートを提出することはできませんでした。うまくいけば、他の誰かがそれを行うでしょう。それは長い間問題でした。
出力は次のようになります。
Ca : 0x001a4bffff0c9374 ports 2 "HP Lion Cub DDR 128MB"
Ca : 0x001a4bffff0c446c ports 2 "HP Lion Cub DDR 128MB"
Ca : 0x001a4bffff0c4438 ports 2 "HP Lion Cub DDR 128MB"
Switch : 0x000b8cffff006aa8 ports 24 "MT47396 Infiniscale-III Mellanox Technologies" base port 0 lid 2 lmc 0