Linux-Admin: Oracle Cluster File System (OCFS): Unterschied zwischen den Versionen
Keine Bearbeitungszusammenfassung |
Keine Bearbeitungszusammenfassung |
||
(16 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
== Wozu ist das gut? == | == Wozu ist das gut? == | ||
Um den Netzwerkspeicherplatz des iSCSI-RAID-Systems von mehreren Servern aus gleichzeitig zu mounten, ist ein Cluster-Dateisystem nötig. OCFS2 erfüllt diese Kriterien und ist in den OpenSuse-Standard-Repos enthalten. | Um den Netzwerkspeicherplatz des iSCSI-RAID-Systems von mehreren Servern aus gleichzeitig zu mounten, ist ein Cluster-Dateisystem nötig. OCFS2 erfüllt diese Kriterien und ist in den Ubuntu- und OpenSuse-Standard-Repos enthalten. | ||
== Einrichtung eines OCFS2-Clusters == | == Einrichtung eines OCFS2-Clusters == | ||
Zeile 11: | Zeile 11: | ||
open-iscsi | open-iscsi | ||
ocfs2-tools | ocfs2-tools | ||
ocfs2-tools-o2cb | (openSUSE: zusätzlich ocfs2-tools-o2cb) | ||
sowie deren Abhängigkeiten | sowie deren Abhängigkeiten | ||
=== Cluster-Definition === | === Cluster-Definition === | ||
Alle Rechner, die Zugriff auf den iSCSI-Plattenbereich erhalten sollen, benötigen eine Cluster-Definitions-Datei, die | Alle Rechner, die Zugriff auf den iSCSI-Plattenbereich erhalten sollen, benötigen eine Cluster-Definitions-Datei, die auf '''ALLEN''' Nodes '''IDENTISCH''' sein muss: | ||
/etc/ocfs2/cluster.conf | /etc/ocfs2/cluster.conf | ||
In dieser Datei wird der Cluster und alle seine Teilnehmer ("nodes") definiert. Dies ist die Beispiel-Konfiguration für den vmstorage-Cluster: | In dieser Datei wird der Cluster und alle seine Teilnehmer ("nodes") definiert. Der Port 7777 ist der Default. Bei uns läuft das Speichernetzwerk im internen Netzwerk (192.168.0.*), in der Firewall [[Linux-Admin: Ubuntu-Firewall UFW|UFW]] explizit erlaubt bzw. bei openSUSE als interne Zone definiert. Dann muss Port 7777 nicht extra geöffnet werden. | ||
Dies ist die Beispiel-Konfiguration für den vmstorage-Cluster: | |||
cluster: | cluster: | ||
node_count = | node_count = 4 | ||
name = vmstorage | name = vmstorage | ||
Zeile 45: | Zeile 47: | ||
number = 3 | number = 3 | ||
name = vmhost3 | name = vmhost3 | ||
cluster = vmstorage | |||
node: | |||
ip_port = 7777 | |||
ip_address = 192.168.0.15 | |||
number = 4 | |||
name = vmhost4 | |||
cluster = vmstorage | cluster = vmstorage | ||
=== iSCSI-Target mounten === | === iSCSI-Target mounten === | ||
Um sich mit dem iSCSI-RAID zu verbinden, | Um sich mit dem iSCSI-RAID zu verbinden, benutzt man den iSCSI-Initiator. | ||
In der Datei /etc/iscsi/iscsid.conf wird eine Zeile von: | |||
node.startup = manual | |||
geändert auf: | |||
node.startup = automatic | |||
Dann werden die iSCSI-Freigaben auf dem eonstor-RAID gesucht: | |||
iscsiadm -m discovery -t st -p 192.168.0.10 | |||
Man sollte zwei Freigaben (vmstorage und datengrab) zu sehen bekommen. Der Initiatorname steht in /etc/iscsi/initiatorname.iscsi. Dem iSCSI-RAID muss die IQN des zugreifenden Servers bekannt sein. Falls das noch nicht der Fall ist, muss diese Angabe mit [[Linux-Admin: Geräte über serielle Schnittstelle steuern mit minicom|minicom]] auf dem iSCSI-RAID gespeichert werden. Dann sollte man sich anmelden können mit: | |||
iscsiadm -m node --login | |||
Auf openSUSE sind mit YAST folgende Einstellungen nötig: | |||
*Dienst beim Booten starten | |||
*Discovery: | |||
**192.168.0.10 für vmstorage | |||
**192.168.0.11 für datengrab | |||
**leere Authentifizierung (NICHT "keine Auth.") | |||
*Login in das passende Target | |||
*Verbindung: automatisch | |||
=== O2CB-Dienst starten === | === O2CB-Dienst starten === | ||
Der o2cb-Dienst regelt die Kommunikation der Cluster-Teilnehmer untereinander sowie die Verwaltung der Lock-Files. Falls es sich um eine Neuinstallation handelt, müssen zuerst die Grundeinstellungen festgelegt werden: | Der o2cb-Dienst regelt die Kommunikation der Cluster-Teilnehmer untereinander sowie die Verwaltung der Lock-Files. Falls es sich um eine Neuinstallation handelt, müssen zuerst die Grundeinstellungen festgelegt werden: | ||
openSUSE: | |||
rco2cb configure | rco2cb configure | ||
Ubuntu: | |||
service o2cb configure ("or do it the Debian way ...") | |||
Einstellungen: | Einstellungen: | ||
* Dienst beim Booten starten | * Dienst beim Booten starten | ||
Zeile 72: | Zeile 96: | ||
Zum Testen kann man das Dateiystem normal manuell mounten: | Zum Testen kann man das Dateiystem normal manuell mounten: | ||
mount <devicename> <mountpoint> | mount <devicename> <mountpoint> | ||
Für den Dauerbetrieb empfiehlt sich ein Eintrag in der /etc/fstab. Nützlich: Besser die Notation /dev/disk/by-path/* verwenden, um Verwechslungen mit anderen devices (sda1, sdb1 etc.) auszuschließen. Am besten lässt man sich die vorhandenen EInträge auflisten mit | |||
ll /dev/disk/by-path | |||
Wichtig ist der _netdev-Eintrag, sonst wird beim Booten zu früh versucht, das iSCSI-Target zu mounten. Hier ein Beispiel auf vmhost1: | |||
# vmstorage on eonstor iscsi raid | |||
/dev/disk/by-path/ip-192.168.0.10:3260-iscsi-iqn.2002-10.com.infortrend:raid.sn7195854.00-lun-0-part1 /vmstorage ocfs2 _netdev 0 0 | |||
=== Besonderheiten === | |||
Wenn verschiedene o2cb / dlm-Versionen kooperieren sollen, sollte der Node mit der '''ÄLTESTEN''' Version das Dateisystem '''ZUERST''' mounten, sonst kommt es zu Fehlern.<br/><br/><br/><br/><br/><br/><br/><br/> | |||
[[Category:Installations- und Konfigurationsanleitungen|Installations-_und_Konfigurationsanleitungen]] <br/>[[Category:Anleitung]] <br/> <br/> | [[Category:Installations- und Konfigurationsanleitungen|Installations-_und_Konfigurationsanleitungen]] <br/>[[Category:Anleitung]] <br/> <br/> |
Aktuelle Version vom 21. August 2018, 12:45 Uhr
Wozu ist das gut?
Um den Netzwerkspeicherplatz des iSCSI-RAID-Systems von mehreren Servern aus gleichzeitig zu mounten, ist ein Cluster-Dateisystem nötig. OCFS2 erfüllt diese Kriterien und ist in den Ubuntu- und OpenSuse-Standard-Repos enthalten.
Einrichtung eines OCFS2-Clusters
Paket-Installation
Benötigt werden zusätzlich zur Standard-Installation folgende Pakete:
open-iscsi ocfs2-tools (openSUSE: zusätzlich ocfs2-tools-o2cb) sowie deren Abhängigkeiten
Cluster-Definition
Alle Rechner, die Zugriff auf den iSCSI-Plattenbereich erhalten sollen, benötigen eine Cluster-Definitions-Datei, die auf ALLEN Nodes IDENTISCH sein muss:
/etc/ocfs2/cluster.conf
In dieser Datei wird der Cluster und alle seine Teilnehmer ("nodes") definiert. Der Port 7777 ist der Default. Bei uns läuft das Speichernetzwerk im internen Netzwerk (192.168.0.*), in der Firewall UFW explizit erlaubt bzw. bei openSUSE als interne Zone definiert. Dann muss Port 7777 nicht extra geöffnet werden.
Dies ist die Beispiel-Konfiguration für den vmstorage-Cluster:
cluster: node_count = 4 name = vmstorage node: ip_port = 7777 ip_address = 192.168.0.12 number = 1 name = vmhost1 cluster = vmstorage node: ip_port = 7777 ip_address = 192.168.0.13 number = 2 name = vmhost2 cluster = vmstorage node: ip_port = 7777 ip_address = 192.168.0.14 number = 3 name = vmhost3 cluster = vmstorage node: ip_port = 7777 ip_address = 192.168.0.15 number = 4 name = vmhost4 cluster = vmstorage
iSCSI-Target mounten
Um sich mit dem iSCSI-RAID zu verbinden, benutzt man den iSCSI-Initiator.
In der Datei /etc/iscsi/iscsid.conf wird eine Zeile von:
node.startup = manual
geändert auf:
node.startup = automatic
Dann werden die iSCSI-Freigaben auf dem eonstor-RAID gesucht:
iscsiadm -m discovery -t st -p 192.168.0.10
Man sollte zwei Freigaben (vmstorage und datengrab) zu sehen bekommen. Der Initiatorname steht in /etc/iscsi/initiatorname.iscsi. Dem iSCSI-RAID muss die IQN des zugreifenden Servers bekannt sein. Falls das noch nicht der Fall ist, muss diese Angabe mit minicom auf dem iSCSI-RAID gespeichert werden. Dann sollte man sich anmelden können mit:
iscsiadm -m node --login
Auf openSUSE sind mit YAST folgende Einstellungen nötig:
- Dienst beim Booten starten
- Discovery:
- 192.168.0.10 für vmstorage
- 192.168.0.11 für datengrab
- leere Authentifizierung (NICHT "keine Auth.")
- Login in das passende Target
- Verbindung: automatisch
O2CB-Dienst starten
Der o2cb-Dienst regelt die Kommunikation der Cluster-Teilnehmer untereinander sowie die Verwaltung der Lock-Files. Falls es sich um eine Neuinstallation handelt, müssen zuerst die Grundeinstellungen festgelegt werden: openSUSE:
rco2cb configure
Ubuntu:
service o2cb configure ("or do it the Debian way ...")
Einstellungen: * Dienst beim Booten starten * Name des zu startenden Clusters (vmstorage oder datengrab) * alles andere: default (ENTER)
Mounten des Dateisystems
Zum Testen kann man das Dateiystem normal manuell mounten:
mount <devicename> <mountpoint>
Für den Dauerbetrieb empfiehlt sich ein Eintrag in der /etc/fstab. Nützlich: Besser die Notation /dev/disk/by-path/* verwenden, um Verwechslungen mit anderen devices (sda1, sdb1 etc.) auszuschließen. Am besten lässt man sich die vorhandenen EInträge auflisten mit
ll /dev/disk/by-path
Wichtig ist der _netdev-Eintrag, sonst wird beim Booten zu früh versucht, das iSCSI-Target zu mounten. Hier ein Beispiel auf vmhost1:
# vmstorage on eonstor iscsi raid /dev/disk/by-path/ip-192.168.0.10:3260-iscsi-iqn.2002-10.com.infortrend:raid.sn7195854.00-lun-0-part1 /vmstorage ocfs2 _netdev 0 0
Besonderheiten
Wenn verschiedene o2cb / dlm-Versionen kooperieren sollen, sollte der Node mit der ÄLTESTEN Version das Dateisystem ZUERST mounten, sonst kommt es zu Fehlern.