Filesharing über Infiniband unter FreeBSD

7

Ich habe zwei Server, die ich direkt miteinander verbinden möchte - und nicht über den Switch, den der Rest des Netzwerks gemeinsam nutzt. Ich erwarte von einer geringeren Latenz und einer höheren Bandbreite, die die direkte Verbindung bietet (einschließlich der viel größeren MTUs).

Auf beiden Computern wird derzeit FreeBSD-11.2 ausgeführt, und jeder verfügt über einen eigenen ZFS-Pool mit mehreren Dateisystemen. Ein schneller Hauptzugriff auf diese Dateisysteme ist eines der Hauptziele.

Zu diesem Zweck habe ich ein Paar gebrauchter Karten ( Mellanox IBM 46M2201 Dual Port ConnectX 4X ) gekauft und habe folgende Fragen:

  1. Was sind meine Konnektivitätsoptionen? Der Hauptzweck ist das Teilen von Daten - ist NFS meine einzige Wahl oder hat FreeBSD etwas Infiniband-spezifisches?
  2. Wenn es sich um NFS handelt, muss es über IP erfolgen, oder gibt es ein "intimeres" Infiniband-spezifisches Protokoll?
  3. Wenn es sich um NFS über IP handelt, sollte ich UDP oder TCP auswählen? Gibt es noch andere Tuning-Parameter, um die direkte Verbindung optimal zu nutzen?
  4. Welche Art von Kabel benötige ich, um diese direkt anzuschließen? Zu meiner Überraschung ergab die Suche nach "Infiniband-Kabel" eine Vielzahl von Produkten mit unterschiedlichen Anschlüssen.Geben Sie hier die Bildbeschreibung ein

Vielen Dank im Voraus für alle Einblicke. Wenn es ein Online-Dokument gibt, in dem (einige) dieser Fragen beantwortet wurden, würde ich gerne den Link verwenden - alles, was ich finden kann, scheint herstellerspezifisch zu sein ...

(Warum wird diese Frage zum Verbinden von Servern in Serverfault als "Off-Topic" betrachtet ?)

Mikhail T.
quelle
3
Stoßen Sie tatsächlich auf ein Leistungsproblem?
ewwhite
6
Wir sollten interessante Fragen nicht nur schließen, weil das Wort "Zuhause" in der Beschreibung steht. Dies kann auch für das Geschäftsumfeld gelten.
Shodanshok
1
@ewwhite, ja, die Dinge sind über NFS viel langsamer als lokal.
Mikhail T.
1
Dinge zum Auschecken ... Netzwerkblockgerät (NBD), AOE (ATA über Ethernet), RDMA + ZFS. Protokollsuppe!
Der Unix-Hausmeister
Danke, @TheUnixJanitor - muss herausfinden, welches Kabel zuerst gekauft werden soll :)
Mikhail T.

Antworten:

4

Ich habe keine Antworten für 1-3, nur einige zusätzliche Informationen zu Infiniband (IB) -Anwendungen, die Ihnen helfen können, die Antwort zu finden. Ich kann aber 4 beantworten.

1) Was sind meine Konnektivitätsoptionen? Der Hauptzweck ist das Teilen von Daten - ist NFS meine einzige Wahl oder hat FreeBSD etwas Infiniband-spezifisches?

2) Wenn es sich um NFS handelt, muss es über IP sein oder gibt es ein "intimeres" Infiniband-spezifisches Protokoll?

Das Schlüsselwort, nach dem gesucht werden muss, ist wahrscheinlich NFS über RDMA, aber eine schnelle Suche zeigt, dass es für FreeBSD möglicherweise noch nicht vollständig ist. Sie könnten sich auch mit SRP oder iSER befassen, aber ich habe keine Verweise auf Anwendungen gefunden, die diese IB-Protokolle verwenden.

3) Wenn es sich um NFS über IP handelt, sollte ich UDP oder TCP auswählen? Gibt es noch andere Tuning-Parameter, um die direkte Verbindung optimal zu nutzen?

TCP. Laut dem FreeBSD IB-Wiki stellen Sie im Rahmen Ihrer IB-Konfiguration den Verbindungsmodus ein, der der Verwendung von TCP ähnelt. Zumindest in der Linux-Welt sollten Sie im verbundenen Modus nur NFS über TCP und nicht UDP verwenden. NFS über UDP sollte nur im Datagrammmodus durchgeführt werden, und beides wird nicht empfohlen.

4) Welche Art von Kabel benötige ich, um diese direkt anzuschließen? Zu meiner Überraschung ergab die Suche nach "Infiniband-Kabel" eine Vielzahl von Produkten mit unterschiedlichen Anschlüssen.

Sie möchten ein "QDR" -Kabel, das für "Quad Data Rate" oder 40 Gbit / s steht. Die ConnectX-3-Karten verfügen über FDR (Abkürzung für "Fourteen Data Rate") oder 56 Gbit / s (14 Gbit / s * 4 Lanes). Beide Kabel sollten für Ihre Karte einwandfrei funktionieren.

Sie können Kabel der Marke Mellanox kaufen. In diesem Fall wissen Sie, dass dies funktioniert, oder Sie können eine Marke außerhalb der Marke erwerben. Ich mag die Kabel der Marke 3M. Es handelt sich um ein Flachkabel, das einen sehr scharfen Biegeradius unterstützt und es Ihnen ermöglicht, eine Reihe von Kabeln auf sehr kleinem Raum ohne Übersprechen zu stapeln. Gebrauchte Mellanox QDR-Kabel sollten bei eBay wirklich günstig sein. Ich habe noch nie ein gebrauchtes gekauft, aber wenn Sie das tun, MÜSSEN Sie ein Kabel bekommen, das getestet wurde - das ist eine schwierige Sache, wenn Sie kein funktionierendes System haben, mit dem Sie vergleichen können.

Es gibt zwei Arten von Kabeln - passive (Kupfer) oder aktive (Glasfaser) Kabel. Die Glasfaserkabel sind fest mit den QSFP-Anschlüssen verbunden, sodass Sie sie in bestimmten Längen erhalten müssen. Kupfer hat eine maximale Länge von 3 Metern oder vielleicht bis zu 5 Metern - länger, und Sie müssen die Glasfaserkabel verwenden. Besorgen Sie sich kein Glasfaserkabel, bis alles zu 100% auf Kupfer funktioniert. Ich habe Fälle gesehen, in denen das Kupfer einwandfrei funktioniert, die Glasfaser jedoch aufgrund eines merkwürdigen Fehlermodus in der Hardware nicht. Beseitigen Sie diese Möglichkeit, bis Sie Erfahrung und ein Inventar der Teile haben, mit denen Sie Fehler beheben können.

Und jetzt noch ein paar andere Hinweise, nach denen Sie nicht gefragt haben, die aber vielleicht helfen könnten. Stellen Sie zunächst sicher, dass Sie opensm auf einem der Systeme ausführen. Stellen Sie es sich wie einen DHCP-Server vor. Ohne sie verbinden sich die beiden Systeme physisch, geben jedoch keine Daten weiter.

Zweitens arbeiten einige Mellanox-Karten entweder im IB-Modus oder im Ethernet-Modus. Dies sind normalerweise die VPI-Kartenserien. Ich bin mir nicht sicher, ob dies eine Option für ConnectX-2 war oder ob Ihre Karten dies unterstützen. In diesem Fall ist es möglicherweise einfacher, diese Karten als 40 GBE anstelle von QDR IB auszuführen und eine gute NFS-Leistung zu erzielen. Nach meiner Erfahrung unter Linux hat IPoIB etwa 20 bis 30% der Leistung als Drahtgeschwindigkeit. Mit IB-Protokollen wie RDMA oder durch Umschalten in den Ethernet-Modus erhalten Sie Kabelgeschwindigkeit.

Paul
quelle
Vielen Dank. Ich habe das Kabel, das zu passen scheint. Nun zu den Konfigurationsunterschieden zwischen Infiniband und Ethernet.
Mikhail T.