2枚のmellanoxFDRデュアルポートConnectX-3HCAカード(CX354A)を、それぞれ別々のマシンにインストールしました。マシンは互いに直接接続されています(スイッチレス構成)。カードの両方のポートは、port1がport1に、port2がport2に接続されています。各ポートは次のように構成されています。
HCA1 port1: ib0 inet addr:192.168.10.13 Bcast:192.168.10.255 Mask:255.255.255.0
port2: ib1 inet addr:192.168.10.15 Bcast:192.168.10.255 Mask:255.255.255.0
HCA2 port1: ib0 inet addr:192.168.10.24 Bcast:192.168.10.255 Mask:255.255.255.0
port2: ib1 inet addr:192.168.10.26 Bcast:192.168.10.255 Mask:255.255.255.0
以下のようにHCA1で2opensmコマンドを実行すると、ibstatは4つのポートすべてが稼働中でアクティブであることを示します。
root@HCA1# opensm -g <ib0 GUID> --daemon
root@HCA1# opensm -g <ib1 GUID> --daemon
上記を構成すると、任意のIPから上記の他のIPにpingを実行できます。
ただし、port1のケーブルを外すと、接続されているport2ペア間でpingが機能しません。 port2ペアを切断し、port1ペアのみを接続すると、切断されたport2 IP(?)でもpingは正常に機能します。これにはどのような理由があり、どうすれば問題を解決できますか。投稿すべき追加情報を教えてください。
私が達成しようとしているのは、ポートペアごとに完全に分離されたリンクを確立し、別々のopenMPIプロセスを実行して、2つのインフィニバンドケーブルの帯域幅を同時にテストおよび比較することです。誰かがこれをどのように行うことができるかについてアドバイスできますか?
私が学んだことに関しては、ポートペアごとに異なるパーティションキーを作成する必要があると思います。 (現在、デフォルトのpkey 0xffffを使用しています)ただし、このデフォルトのpkeyは、起動時にinfinibandが構成された後は変更できません。何か提案やアドバイスはありますか?
どちらのマシンもCentOS6.4を実行しており、Mellanox OFED1.5.3をインストールしました。
これらは、両方のマシンでのibstatの出力です。
[root@HCA1 Desktop]# ifconfig ib0
ib0 Link encap:InfiniBand HWaddr 80:00:00:48:FE:81:00:00:00:00:00:00:00:00:00:00:00:00:00:00
inet addr:192.168.10.13 Bcast:192.168.10.255 Mask:255.255.255.0
inet6 addr: fe80::202:c903:21:8f11/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:65520 Metric:1
RX packets:4144160 errors:0 dropped:0 overruns:0 frame:0
TX packets:4141376 errors:0 dropped:2 overruns:0 carrier:0
collisions:0 txqueuelen:1024
RX bytes:702746349 (670.1 MiB) TX bytes:719570861 (686.2 MiB)
[root@HCA1 Desktop]# ifconfig ib1
ib1 Link encap:InfiniBand HWaddr 80:00:00:49:FE:82:00:00:00:00:00:00:00:00:00:00:00:00:00:00
inet addr:192.168.10.15 Bcast:192.168.10.255 Mask:255.255.255.0
inet6 addr: fe80::202:c903:21:8f12/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:65520 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1024
RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)
[root@HCA2 Desktop]# ifconfig ib0
ib0 Link encap:InfiniBand HWaddr 80:00:00:48:FE:81:00:00:00:00:00:00:00:00:00:00:00:00:00:00
inet addr:192.168.10.24 Bcast:192.168.10.255 Mask:255.255.255.0
inet6 addr: fe80::202:c903:21:8f51/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:65520 Metric:1
RX packets:4141382 errors:0 dropped:0 overruns:0 frame:0
TX packets:4144161 errors:0 dropped:2 overruns:0 carrier:0
collisions:0 txqueuelen:1024
RX bytes:703005597 (670.4 MiB) TX bytes:719323129 (685.9 MiB)
[root@HCA2 Desktop]# ifconfig ib1
ib1 Link encap:InfiniBand HWaddr 80:00:00:49:FE:82:00:00:00:00:00:00:00:00:00:00:00:00:00:00
inet addr:192.168.10.26 Bcast:192.168.10.255 Mask:255.255.255.0
inet6 addr: fe80::202:c903:21:8f52/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:65520 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1024
RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)
ロードされたモジュールは次のとおりです。
[root@HCA1 Desktop]# /etc/init.d/openibd status
HCA driver loaded
Configured IPoIB devices:
ib0 ib1
Currently active IPoIB devices:
ib0
ib1
The following OFED modules are loaded:
rdma_ucm
rdma_cm
ib_addr
ib_ipoib
mlx4_core
mlx4_ib
mlx4_en
ib_mthca
ib_uverbs
ib_umad
ib_ucm
ib_sa
ib_cm
ib_mad
ib_core
iw_cxgb3
iw_nes
ご覧のとおり、2つの異なる物理サブネットが同じサブネットアドレス192.168.10.0で構成されています。この問題を解決するには、異なるサブネットアドレスを割り当てる必要があると思います。