Infiniband
Beschreibung
Infiband Karten sind eine günstige Lösung um schnelles Ethernet zu bauen. Eigentlich sind die Karten urspürnglich dazu angedacht SANs bereitzustellen, aber wir können uns dieses auch als 40 GBit Netzwerk zu nutze machen.
Vorraussetzungen:
Infiniband Karten
Infiniband switch
Infiband Kabel
Installation
Insalltallation Infiniband Karte
Installieren der Tools
apt-get install infiniband-diags iperf
Nun laden wir die Module
modprobe ib_ipoib
modprobe ib_umad
Je nach System heißen die Adapter anders.
Um zu sehen ob die Treiber geladen wurden dann je nach System
ip a | greb ib0
ip a | greb ib1
oder
ip a | greb ibp
Sieht die Ausgabe dann so aus (entweder mit ib0 oder ib1 oder halt diese...
ip a | grep ibp
13: ibp6s16: <BROADCAST,MULTICAST> mtu 4092 qdisc noop state DOWN group default qlen 256
14: ibp6s16d1: <BROADCAST,MULTICAST> mtu 4092 qdisc noop state DOWN group default qlen 256
Dann laufen die Karten.
Diese dann eben der modules Datei hinzufügen, so das diese dann auch beim Systemstart geladen werden.
echo “ib_umad” >> /etc/modules
echo “ib_ipoib” >> /etc/modules
Netzwerk Setup
Die Infinibandkarten werden genauso konfiguriert wie Netzwerkkarten
nur mit dem unterschied das wir noch den Mode angeben.
In meinem Beispiel heißen die Karten (Ports) so:
ibp6s16
ibp6s16d1
#/etc/network/interfaces
auto ibp6s16
iface ibp6s16 inet static
address 172.30.128.75
netmask 255.255.240.0
broadcast 172.30.143.255
pre-up echo connected > /sys/class/net/ibp6s16/mode
mtu 65520
auto ibp6s16d1
iface ibp6s16d1 inet static
address 172.31.128.75
netmask 255.255.240.0
broadcast 172.31.143.255
pre-up echo connected > /sys/class/net/ibp6s16d1/mode
mtu 65520
Nun die Adapter starten
ifup ibp6s16
ifup ibp6s16d1
Nun pingen wir unsere eigene Karte an.
ping 172.30.128.75
Ausgabe, wenn das klappt ist die Konfiguration abgeschlossen.
ING 172.30.128.75 (172.30.128.75) 56(84) bytes of data.
64 bytes from 172.30.128.75: icmp_seq=1 ttl=64 time=0.017 ms
64 bytes from 172.30.128.75: icmp_seq=2 ttl=64 time=0.021 ms
^C
--- 172.30.128.75 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1002ms
rtt min/avg/max/mdev = 0.017/0.019/0.021/0.002 ms
mit dem Befehl ibstat sehen wir den Status der und Eigenschaften der Karte (Ports)
ibstat
Ausgabe:
ibstat
CA 'mlx4_0'
CA type: MT4099
Number of ports: 2
Firmware version: 2.42.5000
Hardware version: 1
Node GUID: 0xf4521403009871a0
System image GUID: 0xf4521403009871a3
Port 1:
State: Initializing
Physical state: LinkUp
Rate: 40
Base lid: 0
LMC: 0
SM lid: 0
Capability mask: 0x02514868
Port GUID: 0xf4521403009871a1
Link layer: InfiniBand
Port 2:
State: Initializing
Physical state: LinkUp
Rate: 40
Base lid: 0
LMC: 0
SM lid: 0
Capability mask: 0x02514868
Port GUID: 0xf4521403009871a2
Link layer: InfiniBand
root@vserv0003:~#
Wie man sieht bleibt der Status auf initilazing stehen, das liegt daran weil wir noch keinen Subnetmanager haben.
Einige Switche bringen auch einen SM Manager mit.
Ich empfehle aber, diesen zu deaktivieren und auf den Hosts einen SM Manager zu installieren, mit Prioritäten
Installation OPENSM Manager (Ein Manager für Subnetze)
Pakete installieren
apt-get install opensm
Nachdem der Manager installiert ist, ist der Status der Karten aktiv.
Ausgabe ibstat
ibstat
CA 'mlx4_0'
CA type:
MT4099
Number
of ports: 2
Firmware version: 2.42.5000
Hardware version: 1
Node GUID: 0xf4521403009871a0
System image GUID: 0xf4521403009871a3
Port 1:
State: Active
Physical state: LinkUp
Rate: 40
Base lid: 1
LMC: 0
SM lid: 1
Capability mask: 0x0251486a
Port GUID: 0xf4521403009871a1
Link layer: InfiniBand
Port 2:
State: Active
Physical state: LinkUp
Rate: 40
Base lid: 3
LMC: 0
SM lid: 1
Capability mask: 0x0251486a
Port GUID: 0xf4521403009871a2
Link layer: InfiniBand