Heim > Betrieb und Instandhaltung > Betrieb und Wartung von Linux > So konfigurieren Sie ein hochverfügbares Cluster-Dateisystem unter Linux

So konfigurieren Sie ein hochverfügbares Cluster-Dateisystem unter Linux

WBOY
Freigeben: 2023-07-07 13:18:07
Original
1812 Leute haben es durchsucht

So konfigurieren Sie ein hochverfügbares Cluster-Dateisystem unter Linux

Einführung:
Im Computerbereich ist Hochverfügbarkeit (Hochverfügbarkeit) eine Technologie, die darauf abzielt, die Zuverlässigkeit und Verfügbarkeit des Systems zu verbessern. In einer Clusterumgebung ist ein hochverfügbares Dateisystem eine der wichtigen Komponenten, um den kontinuierlichen Betrieb des Systems sicherzustellen. In diesem Artikel wird die Konfiguration eines hochverfügbaren Cluster-Dateisystems unter Linux vorgestellt und entsprechende Codebeispiele gegeben.

  1. Pakete installieren
    Stellen Sie zunächst sicher, dass die erforderlichen Pakete auf Ihrem System installiert sind. In den meisten Linux-Distributionen können diese Pakete mithilfe von Paketverwaltungstools installiert werden. Im Folgenden sind gängige Softwarepakete aufgeführt:
  • Pacemaker: ein Cluster-Management-Tool zur Verwaltung des Status und der Ressourcen des Dateisystems.
  • Corosync: Kommunikationstool zum Aufbau und zur Pflege von Clusterumgebungen.
  • DRBD: Verteiltes repliziertes Blockgerät, das zur Implementierung der Festplattenspiegelung verwendet wird.
  • GFS2 oder OCFS2: Wird zur Bereitstellung eines hochverfügbaren Cluster-Dateisystems verwendet.

Unter Ubuntu können Sie den folgenden Befehl verwenden, um das Paket zu installieren:

sudo apt-get install pacemaker corosync drbd8-utils gfs2-utils
Nach dem Login kopieren
  1. Konfigurieren Sie die Cluster-Umgebung
    Zunächst müssen Sie die Cluster-Umgebung konfigurieren, einschließlich der Kommunikation zwischen Knoten und der Ressourcenverwaltung. Das Folgende ist ein einfaches Konfigurationsbeispiel mit zwei Knoten (Knoten1 und Knoten2):
  • Ändern Sie die Datei /etc/hosts und fügen Sie die IP-Adresse und den Hostnamen des Knotens hinzu, damit die Knoten aufeinander zugreifen können.
sudo nano /etc/hosts
Nach dem Login kopieren

Fügen Sie Folgendes hinzu:

192.168.1.100    node1
192.168.1.101    node2
Nach dem Login kopieren
  • Konfigurieren Sie die Corosync-Kommunikation.

Corosync-Konfigurationsdatei erstellen.

sudo nano /etc/corosync/corosync.conf
Nach dem Login kopieren

Fügen Sie Folgendes hinzu:

totem {
    version: 2
    secauth: off
    cluster_name: mycluster
    transport: udpu
}

nodelist {
    node {
        ring0_addr: node1
        nodeid: 1
    }
    node {
        ring0_addr: node2
        nodeid: 2
    }
}

quorum {
    provider: corosync_votequorum
}

logging {
    to_syslog: yes
    to_logfile: yes
    logfile: /var/log/corosync.log
    debug: off
    timestamp: on
}
Nach dem Login kopieren
  • Aktivieren Sie Corosync- und Pacemaker-Dienste.
sudo systemctl enable corosync
sudo systemctl enable pacemaker
Nach dem Login kopieren

Starten Sie den Dienst.

sudo systemctl start corosync
sudo systemctl start pacemaker
Nach dem Login kopieren
  1. DRBD konfigurieren
    DRBD ist ein verteiltes repliziertes Blockgerät, das zur Implementierung der Festplattenspiegelung zwischen mehreren Knoten verwendet wird. Das Folgende ist eine Beispielkonfiguration von DRBD mit zwei Knoten (Knoten1 und Knoten2) und der Verwendung von /dev/sdb als gemeinsam genutztes Blockgerät:
  • DRBD konfigurieren.

DRBD-Konfigurationsdatei erstellen.

sudo nano /etc/drbd.d/myresource.res
Nach dem Login kopieren

Fügen Sie Folgendes hinzu:

resource myresource {
    protocol C;

    on node1 {
        device /dev/drbd0;
        disk   /dev/sdb;
        address 192.168.1.100:7789;
        meta-disk internal;
    }

    on node2 {
        device /dev/drbd0;
        disk   /dev/sdb;
        address 192.168.1.101:7789;
        meta-disk internal;
    }

    net {
        allow-two-primaries;
    }

    startup {
        wfc-timeout     15;
        degr-wfc-timeout 60;
    }

    syncer {
        rate    100M;
        al-extents 257;
    }

    on-node-upgraded {
        # promote node1 to primary after a successful upgrade
        if [ "$(cat /proc/sys/kernel/osrelease)" != "$TW_AFTER_MAJOR.$TW_AFTER_MINOR.$TW_AFTER_UP" ] && 
           [ "$(cat /proc/mounts | grep $DRBD_DEVICE)" = "" ] ; then
            /usr/bin/logger "DRBD on-node-upgraded handler: Promoting to primary after upgrade.";
            /usr/sbin/drbdsetup $DRBD_DEVICE primary;
        fi;
    }
}
Nach dem Login kopieren
  • DRBD initialisieren.
sudo drbdadm create-md myresource
Nach dem Login kopieren

Starten Sie DRBD.

sudo systemctl start drbd
Nach dem Login kopieren
  1. Cluster-Dateisystem konfigurieren
    Es stehen mehrere Cluster-Dateisysteme zur Auswahl, z. B. GFS2 und OCFS2. Im Folgenden finden Sie ein Konfigurationsbeispiel am Beispiel von GFS2.
  • Dateisystem erstellen.
sudo mkfs.gfs2 -p lock_gulmd -t mycluster:myresource /dev/drbd0
Nach dem Login kopieren
  • Mounten Sie das Dateisystem.
sudo mkdir /mnt/mycluster
sudo mount -t gfs2 /dev/drbd0 /mnt/mycluster
Nach dem Login kopieren
  • Dateisystemressourcen hinzufügen.
sudo pcs resource create myresource Filesystem device="/dev/drbd0" directory="/mnt/mycluster" fstype="gfs2"  op start  timeout="60s"  op stop  timeout="60s"  op monitor interval="10s"  op monitor timeout="20s"  op monitor start-delay="5s"  op monitor stop-delay="0s"
Nach dem Login kopieren
  • Ressourcen aktivieren und starten.
sudo pcs constraint order myresource-clone then start myresource
sudo pcs constraint colocation add myresource with myresource-clone
Nach dem Login kopieren
  1. Hochverfügbarkeit testen
    Nachdem Sie die obige Konfiguration abgeschlossen haben, können Sie die Hochverfügbarkeit testen. Hier sind die Schritte zum Testen:
  • Stoppen Sie den Masterknoten.
sudo pcs cluster stop node1
Nach dem Login kopieren
  • Überprüfen Sie, ob das Dateisystem auf dem Standby-Knoten ordnungsgemäß läuft.
sudo mount | grep "/mnt/mycluster"
Nach dem Login kopieren
Nach dem Login kopieren

Die Ausgabe sollte die Adresse und der Mount-Punkt des Standby-Knotens sein.

  • Stellen Sie den Masterknoten wieder her.
sudo pcs cluster start node1
Nach dem Login kopieren
  • Überprüfen Sie, ob das Dateisystem auf dem Masterknoten wiederhergestellt ist.
sudo mount | grep "/mnt/mycluster"
Nach dem Login kopieren
Nach dem Login kopieren

Die Ausgabe sollte die Adresse und der Mount-Punkt des Masterknotens sein.

Fazit:
Die Konfiguration eines hochverfügbaren Cluster-Dateisystems kann die Zuverlässigkeit und Verfügbarkeit des Systems verbessern. Dieser Artikel beschreibt die Konfiguration eines hochverfügbaren Cluster-Dateisystems unter Linux und stellt entsprechende Codebeispiele bereit. Leser können entsprechend ihren eigenen Bedürfnissen konfigurieren und anpassen, um eine höhere Verfügbarkeit zu erreichen.

Das obige ist der detaillierte Inhalt vonSo konfigurieren Sie ein hochverfügbares Cluster-Dateisystem unter Linux. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage