
Ich habe eine Webanwendung, die auf 3 Server verteilt ist. Diese 3 Server benötigen einen gemeinsamen Speicher, um auf Dateien zugreifen zu können. Da iSCSI nur ein Protokoll und kein Dateisystem ist, wird es keine Implementierung zum Sperren von Dateien haben. Wenn ich es also einfach so anschließe, wie es ist, lösche ich einfach alle Daten.
Meinen Untersuchungen zufolge bräuchte ich für die beabsichtigte Funktion dieser LUNs ein echtes Dateisystem.
Wie würde das funktionieren? Wie kann ich ein Dateisystem für die LUN implementieren?
Verwendetes Betriebssystem: Ubuntu 16.* oder 18.*
Antwort1
Sie müssen über eine Art Cluster-Dateisystem oder einen verteilten Sperrmanager verfügen, um zu verhindern, dass durch gleichzeitige Schreibvorgänge die Metadaten Ihres Dateisystems beschädigt werden.
Im StarWind-Forum gibt es eine gute Zusammenfassung dieses Problems.
https://forums.starwindsoftware.com/viewtopic.php?f=5&t=1392
Antwort2
Im Allgemeinen benötigen Sie einen Cluster, um Speicher zwischen mehreren Systemen gemeinsam zu nutzen (es sei denn, Sie möchten, dass eines davon als Dateiserver fungiert).
Ich weiß es eigentlich nichtirgendetwasüber das Erstellen von Clustern auf Ubuntu, aber das hier sieht vielversprechend aus:http://manpages.ubuntu.com/manpages/cosmic/man7/ocfs2.7.html.
Antwort3
Nach einigen Recherchen bin ich auf einige Lösungen gestoßen, die für diejenigen interessant sein könnten, die einen Remote-Speicher oder einen Cluster einrichten möchten.
Überdenken Sie Ihr Netzwerk und Ihre Anforderungen. Mir ist aufgefallen, dass die Einrichtung eines iscsi mit clusterfähigen Dateisystemen keine leichte Aufgabe ist. Außerdem gibt es für GFS und OCFS2 keine gut dokumentierten, öffentlich zugänglichen Anleitungen zur Fehlerbehebung. Im Fall von OCFS2 müssten Sie Oracle-Kunde sein und über ein aktives Support-Konto verfügen. Dasselbe gilt für GFS2. Wenn Sie Centos verwenden, müssen Sie sich auf Online-Tutorials beschränken und erhalten keinen Support dafür.
Höchstwahrscheinlich übersteigt es ohnehin Ihr Budget. Erwägen Sie die Verwendung von NFS für Hobby- und Klein- und Mittelunternehmen. Es ist viel einfacher einzurichten und es gibt viel Dokumentation online.
Wenn Sie wirklich eine iscsi-LUN benötigen, die von mehreren Maschinen gemeinsam genutzt werden kann, stehen Ihnen drei Lösungen zur Verfügung: Oracle OCFS2, Red Hat GFS2 und VMFS. Alle drei sind clusterfähige Dateisysteme. OCFS2 ist einfacher einzurichten, erfordert aber Zugriff auf Oracle-Support, der nicht kostenlos ist. GFS2 ist nicht so einfach wie OCFS2, da Sie Teile davon manuell einrichten müssen, aber es ist auch besser anpassbar. und VMFS, das sich gut mit Ihrem ESXI-Server verwenden lässt, um Ihre VM-Maschinen dort zu halten.
Ich hoffe, dass dies einigen Benutzern in Zukunft bei der Entscheidung hilft, was sie tatsächlich für ihr Netzwerk und ihren Speicher benötigen. Ich persönlich habe mich für NFS als Speicher und dediziertes iscsi für den ESXI-Server zum Booten von Images entschieden.