Konfiguration für horizontale Skalierung mit mehreren Nodes
Bei XCP NFS lassen sich die Performance-Grenzen eines einzelnen Node mit nur einem einzigen Node überwinden copy
(Oder scan -md5
) Befehl zum Ausführen von Arbeitern auf mehreren Linux-Systemen oder Cluster-Knoten.
Scale-out mit mehreren Nodes ist in Umgebungen hilfreich, in denen die Performance eines einzelnen Systems zum Beispiel in den folgenden Szenarien nicht ausreicht:
-
Wenn ein einzelner Node Monate dauert, bis mehrere Petabyte an Daten kopiert werden
-
Wenn Verbindungen mit hohen Latenzzeiten zu Cloud-Objektspeichern einen einzelnen Node verlangsamen
-
In großen HDFS-Cluster-Farmen, bei denen eine sehr große Anzahl von I/O-Vorgängen ausgeführt wird
Die Pfadsyntax für Scale-out mit mehreren Nodes ist --nodes worker1,worker2,worker3
.
Erwägen Sie eine Einrichtung mit vier Linux-Hosts mit ähnlichen CPU- und RAM-Konfigurationen. Sie können alle vier Hosts für die Migration verwenden, da XCP die Kopiervorgänge über alle Host-Nodes hinweg koordinieren kann. Um diese Nodes in einer Scale-out-Umgebung nutzen zu können, müssen Sie einen der vier Nodes als Master Node und andere Nodes als „Worker“-Nodes identifizieren. Bei einem Linux-Setup mit vier Knoten beispielsweise die Knoten „Master“, „Worker1“, „Worker2“ und „Worker3“ benennen und dann die Konfiguration auf dem Hauptknoten einrichten:
-
Kopieren Sie XCP in das Home-Verzeichnis.
-
Installieren und aktivieren Sie die XCP-Lizenz.
-
Ändern Sie die
xcp.ini
Datei und fügen Sie den Katalogpfad hinzu. -
Setzen Sie passwortlose Secure Shell (SSH) vom Master-Knoten auf die Worker-Knoten:
-
Generieren des Schlüssels auf dem Hauptknoten:
ssh-keygen -b 2048 -t rsa -f /root/.ssh/id_rsa -q -N ''
-
Kopieren Sie den Schlüssel auf alle Worker-Knoten:
ssh-copy-id -i /root/.ssh/id_rsa.pub root@worker1
-
Der XCP-Hauptknoten verwendet SSH, um Mitarbeiter auf anderen Knoten auszuführen. Sie müssen die Worker-Nodes so konfigurieren, dass der Benutzer, der XCP auf dem Master-Node ausführt, den passwortlosen SSH-Zugriff ermöglicht. Um beispielsweise eine Benutzerdemonstration auf einem Master-Knoten für die Verwendung von Node „worker1“ als XCP-Worker-Node zu aktivieren, müssen Sie XCP-Binärdateien vom Master-Node auf alle Worker-Knoten im Home-Verzeichnis kopieren.
Wenn Sie mehrere XCP-Mitarbeiter gleichzeitig starten, um Fehler zu vermeiden, sollten Sie den erhöhen sshd MaxStartups
Parameter auf jedem Worker-Node, wie im folgenden Beispiel gezeigt:
echo "MaxStartups 100" | sudo tee -a /etc/ssh/sshd_config sudo systemctl restart sshd
Wenn XCP einen Worker auf einem Cluster-Node ausführt, übernimmt der Worker-Prozess die Umgebungsvariablen aus dem Haupt-XCP-Prozess auf dem Master-Knoten. Um eine bestimmte Node-Umgebung anzupassen, müssen Sie die Variablen in festlegen nodes.ini
Datei im Konfigurationsverzeichnis nur auf dem Master-Knoten (Worker-Knoten verfügen nicht über ein Konfigurationsverzeichnis oder einen Katalog). Zum Beispiel für einen ubuntu-Server mars, der seine hat libjvm.so
In einem anderen Speicherort für den Master-Knoten, wie Wave (das ist CentOS), erfordert es ein Konfigurationsverzeichnis, damit ein Mitarbeiter auf mars den HDFS-Connector verwenden kann. Dieses Setup wird im folgenden Beispiel dargestellt:
[schay@wave ~]$ cat /opt/NetApp/xFiles/xcp/nodes.ini [mars] NHDFS_LIBJVM_PATH=/usr/lib/jvm/java-8-openjdk-amd64/jre/lib/ amd64/server/libjvm.so
Wenn Sie eine Multisession mit POSIX- und HDFS-Dateipfaden verwenden, müssen Sie das Dateisystem und das exportierte Quell- und Zieldateisystem auf den Master-Knoten und alle Worker-Knoten mounten.
Wenn XCP auf einem Worker-Node ausgeführt wird, verfügt der Worker-Node über keine lokale Konfiguration (keine Lizenz, keine Protokolldateien oder keinen Katalog). XCP-Binärdateien sind nur auf dem System in Ihrem Home-Verzeichnis erforderlich. Zum Beispiel, um die auszuführen copy
Der Befehl, der Master-Node und alle Worker-Nodes benötigen Zugriff auf die Quelle und das Ziel. Für xcp copy --nodes linux1,linux2 hdfs:///user/demo/test file:///mnt/ontap
, Das linux1
Und linux2
Hosts müssen die HDFS-Client-Software konfiguriert sein und der NFS-Export auf /mnt/ontap gemountet sein. Außerdem muss, wie bereits erwähnt, eine Kopie der XCP-Binärdatei im Home-Verzeichnis abgelegt sein.
Sie können die POSIX- und HDFS-Anschlüsse, die horizontale Skalierbarkeit mit mehreren Knoten sowie Sicherheitsfunktionen in Kombination verwenden. Beispiel: Das folgende copy
Und verify
Befehle kombinieren POSIX- und HDFS-Anschlüsse mit den Sicherheits- und Scale-out-Funktionen:
-
copy
Befehlsbeispiel:./xcp copy hdfs:///user/demo/d1 file:///mnt/nfs-server0/d3 ./xcp copy -match "'USER1 in name'" file:///mnt/nfs-server0/d3 hdfs:///user/demo/d1 ./xcp copy —node worker1,worker2,worker3 hdfs:///user/demo/d1 file:///mnt/nfs-server0/d3
-
verify
Befehlsbeispiel:./xcp verify hdfs:///user/demo/d2 file:///mnt/nfs-server0/d3