Bereitstellungsschritte
Dieser Abschnitt behandelt die Bereitstellungsschritte für NetApp XCP zur Datenübertragung.
Prüfstandsdetails
Die folgende Tabelle enthält die Details des Testbetts, das für diese Bereitstellung und Leistungsvalidierung verwendet wurde.
| Lösungskomponenten | Details |
|---|---|
XCP-Version 1.7 |
|
NetApp AFF Speicherarray-HA-Paar für das Quellvolume |
|
NetApp AFF Speicherarray-HA-Paar für Zielvolume |
|
Fujitsu PRIMERGY RX2540 Server |
Jeder ist ausgestattet mit: * 48 CPUs * Intel Xeon * 256 GB physischem Speicher * 10 GbE Dual-Port |
Vernetzung |
10GbE |
Bereitstellungsschritte – NAS
Um NetApp XCP für die Datenübertragung bereitzustellen, installieren und aktivieren Sie zunächst die XCP-Software am Zielspeicherort. Sie können die Details im "NetApp XCP-Benutzerhandbuch" . Führen Sie dazu die folgenden Schritte aus:
-
Erfüllen Sie die Voraussetzungen wie im Abschnitt beschrieben"Voraussetzungen für XCP."
-
Laden Sie die XCP-Software von der "NetApp XCP (Downloads)-Seite" .
-
Kopieren Sie die heruntergeladenen XCP-Tar-Dateien auf den XCP-Server.
# scp Documents/OneDrive\ -\ NetApp\ Inc/XCP/software/1.6.1/NETAPP_XCP_1.6.1.tgz mailto:root@10.63.150.53:/usr/src
-
Entpacken Sie die Tar-Datei.
[root@mastr-53 src]# tar -zxvf NETAPP_XCP_1.6.1.tgz
-
Laden Sie die Lizenz herunter von "https://xcp.netapp.com/license/xcp.xwic" und auf den XCP-Server kopieren.
-
Aktivieren Sie die Lizenz.
[root@mastr-53 linux]# ./xcp activate [root@mastr-53 src]# cp license /opt/NetApp/xFiles/xcp/license [root@mastr-53 src]# cd /usr/src/xcp/linux/ [root@mastr-53 linux]# ./xcp activate
-
Suchen Sie den Quell-NFS-Port und den Ziel-NFS-Server. Der Standardport ist 2049.
[root@mastr-53 ~]# rpcinfo -p 10.63.150.213 [root@mastr-53 ~]# rpcinfo -p 10.63.150.63
-
Überprüfen Sie die NFS-Verbindung. Überprüfen Sie den NFS-Server (sowohl für Quelle als auch für Ziel), indem Sie per Telnet auf den NFS-Server-Port zugreifen.
[root@mastr-53 ~]# telnet 10.63.150.127 2049 [root@mastr-53 ~]# telnet 10.63.150.63 2049
-
Konfigurieren Sie den Katalog.
-
Erstellen Sie ein NFS-Volume und exportieren Sie NFS für den XCP-Katalog. Sie können auch den NFS-Export des Betriebssystems für den XCP-Katalog nutzen.
A800-Node1-2::> volume create -vserver Hadoop_SVM -volume xcpcatalog -aggregate aggr_Hadoop_1 -size 50GB -state online -junction-path /xcpcatalog -policy default -unix-permissions ---rwxr-xr-x -type RW -snapshot-policy default -foreground true A800-Node1-2::> volume mount -vserver Hadoop_SVM -volume xcpcatalog_vol -junction-path /xcpcatalog
-
Überprüfen Sie den NFS-Export.
[root@mastr-53 ~]# showmount -e 10.63.150.63 | grep xcpca /xcpcatalog (everyone)
-
Aktualisieren
xcp.ini.[root@mastr-53 ~]# cat /opt/NetApp/xFiles/xcp/xcp.ini # Sample xcp config [xcp] catalog = 10.63.150.64:/xcpcatalog [root@mastr-53 ~]#
-
-
Suchen Sie die Quell-NAS-Exporte mithilfe von
xcp show. Suchen:== NFS Exports == == Attributes of NFS Exports ==
[root@mastr-53 linux]# ./xcp show 10.63.150.127 == NFS Exports == <check here> == Attributes of NFS Exports == <check here>
-
(Optional) Scannen Sie die Quell-NAS-Daten.
[root@mastr-53 linux]# ./xcp scan -newid xcpscantest4 -stats 10.63.150.127:/xcpsrc_vol
Durch das Scannen der NAS-Quelldaten können Sie das Datenlayout verstehen und mögliche Probleme bei der Migration erkennen. Die Dauer des XCP-Scanvorgangs ist proportional zur Anzahl der Dateien und der Verzeichnistiefe. Sie können diesen Schritt überspringen, wenn Sie mit Ihren NAS-Daten vertraut sind.
-
Überprüfen Sie den Bericht, der erstellt wurde von
xcp scan. Suchen Sie hauptsächlich nach nicht lesbaren Ordnern und nicht lesbaren Dateien.[root@mastr-53 linux]# mount 10.63.150.64:/xcpcatalog /xcpcatalog base) nkarthik-mac-0:~ karthikeyannagalingam$ scp -r root@10.63.150.53:/xcpcatalog/catalog/indexes/xcpscantest4 Documents/OneDrive\ -\ NetApp\ Inc/XCP/customers/reports/
-
(Optional) Ändern Sie den Inode. Zeigen Sie die Anzahl der Inodes an und ändern Sie die Anzahl basierend auf der Anzahl der zu migrierenden oder zu kopierenden Dateien für Katalog- und Zielvolumes (falls erforderlich).
A800-Node1-2::> volume show -volume xcpcatalog -fields files,files-used A800-Node1-2::> volume show -volume xcpdest -fields files,files-used A800-Node1-2::> volume modify -volume xcpcatalog -vserver A800-Node1_vs1 -files 2000000 Volume modify successful on volume xcpcatalog of Vserver A800-Node1_vs1. A800-Node1-2::> volume show -volume xcpcatalog -fields files,files-used
-
Scannen Sie das Zielvolume.
[root@mastr-53 linux]# ./xcp scan -stats 10.63.150.63:/xcpdest
-
Überprüfen Sie den Speicherplatz des Quell- und Zielvolumes.
[root@mastr-53 ~]# df -h /xcpsrc_vol [root@mastr-53 ~]# df -h /xcpdest/
-
Kopieren Sie die Daten von der Quelle zum Ziel, indem Sie
xcp copyund überprüfen Sie die Zusammenfassung.[root@mastr-53 linux]# ./xcp copy -newid create_Sep091599198212 10.63.150.127:/xcpsrc_vol 10.63.150.63:/xcpdest <command inprogress results removed> Xcp command : xcp copy -newid create_Sep091599198212 -parallel 23 10.63.150.127:/xcpsrc_vol 10.63.150.63:/xcpdest Stats : 9.07M scanned, 9.07M copied, 118 linked, 9.07M indexed, 173 giants Speed : 1.57 TiB in (412 MiB/s), 1.50 TiB out (392 MiB/s) Total Time : 1h6m. STATUS : PASSED [root@mastr-53 linux]#
Standardmäßig erstellt XCP sieben parallele Prozesse zum Kopieren der Daten. Dies kann angepasst werden. NetApp empfiehlt, das Quellvolume nur lesbar zu machen. In Echtzeit ist das Quellvolume ein aktives Live-Dateisystem. Der xcp copyDer Vorgang kann fehlschlagen, da NetApp XCP keine Live-Quelle unterstützt, die ständig von einer Anwendung geändert wird.Für Linux erfordert XCP eine Index-ID, da XCP Linux die Katalogisierung durchführt.
-
(Optional) Überprüfen Sie die Inodes auf dem NetApp Zielvolume.
A800-Node1-2::> volume show -volume xcpdest -fields files,files-used vserver volume files files-used -------------- ------- -------- ---------- A800-Node1_vs1 xcpdest 21251126 15039685 A800-Node1-2::>
-
Führen Sie das inkrementelle Update durch, indem Sie
xcp sync.[root@mastr-53 linux]# ./xcp sync -id create_Sep091599198212 Xcp command : xcp sync -id create_Sep091599198212 Stats : 9.07M reviewed, 9.07M checked at source, no changes, 9.07M reindexed Speed : 1.73 GiB in (8.40 MiB/s), 1.98 GiB out (9.59 MiB/s) Total Time : 3m31s. STATUS : PASSED
Für dieses Dokument wurden zur Simulation von Echtzeit die eine Million Dateien in den Quelldaten umbenannt und anschließend die aktualisierten Dateien mithilfe von
xcp sync. Für Windows benötigt XCP sowohl Quell- als auch Zielpfade. -
Datenübertragung validieren. Sie können überprüfen, ob Quelle und Ziel die gleichen Daten haben, indem Sie
xcp verify.Xcp command : xcp verify 10.63.150.127:/xcpsrc_vol 10.63.150.63:/xcpdest Stats : 9.07M scanned, 9.07M indexed, 173 giants, 100% found (6.01M have data), 6.01M compared, 100% verified (data, attrs, mods) Speed : 3.13 TiB in (509 MiB/s), 11.1 GiB out (1.76 MiB/s) Total Time : 1h47m. STATUS : PASSED
Die XCP-Dokumentation bietet mehrere Optionen (mit Beispielen) für die scan , copy , sync , Und verify Operationen. Weitere Informationen finden Sie im "NetApp XCP-Benutzerhandbuch" .
|
|
Windows-Kunden sollten die Daten mithilfe von Zugriffskontrolllisten (ACLs) kopieren. NetApp empfiehlt die Verwendung des Befehls xcp copy -acl -fallbackuser\<username> -fallbackgroup\<username or groupname> <source> <destination> . Um eine maximale Leistung zu erzielen, muss das Ziel ein NTFS-Volume sein, wenn man das Quellvolume berücksichtigt, das SMB-Daten mit ACL enthält, und die Daten, auf die sowohl über NFS als auch über SMB zugegriffen werden kann. Kopieren Sie mit XCP (NFS-Version) die Daten vom Linux-Server und führen Sie die XCP-Synchronisierung (SMB-Version) mit dem -acl Und -nodata Optionen vom Windows-Server, um die ACLs von den Quelldaten in die Ziel-SMB-Daten zu kopieren.
|
Ausführliche Schritte finden Sie unter "Konfigurieren der Richtlinie „Überwachung und Sicherheitsprotokoll verwalten“" .
Bereitstellungsschritte – HDFS/MapRFS-Datenmigration
In diesem Abschnitt besprechen wir die neue XCP-Funktion namens „Hadoop Filesystem Data Transfer to NAS“, die Daten von HDFS/MapRFS zu NFS und umgekehrt migriert.
Voraussetzungen
Für die MapRFS/HDFS-Funktion müssen Sie das folgende Verfahren in einer Umgebung ohne Root-Benutzer durchführen. Normalerweise ist der Nicht-Root-Benutzer hdfs, mapr oder ein Benutzer, der die Berechtigung hat, Änderungen im HDFS- und MapRFS-Dateisystem vorzunehmen.
-
Legen Sie die Variablen CLASSPATH, HADOOP_HOME, NHDFS_LIBJVM_PATH, LB_LIBRARY_PATH und NHDFS_LIBHDFS_PATH in der CLI oder der .bashrc-Datei des Benutzers zusammen mit dem
xcpBefehl.-
NHDFS_LIBHDFS_PATH verweist auf die Datei libhdfs.so. Diese Datei bietet HDFS-APIs zur Interaktion und Bearbeitung der HDFS/MapRFS-Dateien und des Dateisystems als Teil der Hadoop-Distribution.
-
NHDFS_LIBJVM_PATH verweist auf die Datei libjvm.so. Dies ist eine gemeinsam genutzte JAVA-Bibliothek für virtuelle Maschinen am JRE-Speicherort.
-
CLASSPATH verweist auf alle JAR-Dateien mit Werten (Hadoop-Klassenpfad –glob).
-
LD_LIBRARY_PATH verweist auf den Speicherort des nativen Hadoop-Bibliotheksordners.
Sehen Sie sich das folgende Beispiel basierend auf einem Cloudera-Cluster an.
export CLASSPATH=$(hadoop classpath --glob) export LD_LIBRARY_PATH=/usr/java/jdk1.8.0_181-cloudera/jre/lib/amd64/server/ export HADOOP_HOME=/opt/cloudera/parcels/CDH-6.3.4-1.cdh6.3.4.p0.6751098/ #export HADOOP_HOME=/opt/cloudera/parcels/CDH/ export NHDFS_LIBJVM_PATH=/usr/java/jdk1.8.0_181-cloudera/jre/lib/amd64/server/libjvm.so export NHDFS_LIBHDFS_PATH=$HADOOP_HOME/lib64/libhdfs.so
+
In dieser Version unterstützen wir XCP-Scan-, Kopier- und Überprüfungsvorgänge sowie die Datenmigration von HDFS zu NFS. Sie können Daten von einem einzelnen Worker-Knoten und mehreren Worker-Knoten eines Data Lake-Clusters übertragen. In der Version 1.8 können Root- und Nicht-Root-Benutzer eine Datenmigration durchführen. -
Bereitstellungsschritte – Nicht-Root-Benutzer migriert HDFS/MaprFS-Daten zu NetApp NFS
-
Befolgen Sie die gleichen Schritte 1–9 im Abschnitt „Schritte zur Bereitstellung“.
-
Im folgenden Beispiel migriert der Benutzer Daten von HDFS zu NFS.
-
Erstellen Sie einen Ordner und Dateien (mit
hadoop fs -copyFromLocal) in HDFS.[root@n138 ~]# su - tester -c 'hadoop fs -mkdir /tmp/testerfolder_src/util-linux-2.23.2/mohankarthikhdfs_src' [root@n138 ~]# su - tester -c 'hadoop fs -ls -d /tmp/testerfolder_src/util-linux-2.23.2/mohankarthikhdfs_src' drwxr-xr-x - tester supergroup 0 2021-11-16 16:52 /tmp/testerfolder_src/util-linux-2.23.2/mohankarthikhdfs_src [root@n138 ~]# su - tester -c "echo 'testfile hdfs' > /tmp/a_hdfs.txt" [root@n138 ~]# su - tester -c "echo 'testfile hdfs 2' > /tmp/b_hdfs.txt" [root@n138 ~]# ls -ltrah /tmp/*_hdfs.txt -rw-rw-r-- 1 tester tester 14 Nov 16 17:00 /tmp/a_hdfs.txt -rw-rw-r-- 1 tester tester 16 Nov 16 17:00 /tmp/b_hdfs.txt [root@n138 ~]# su - tester -c 'hadoop fs -copyFromLocal /tmp/*_hdfs.txt hdfs:///tmp/testerfolder_src/util-linux-2.23.2/mohankarthikhdfs_src' [root@n138 ~]#
-
Überprüfen Sie die Berechtigungen im HDFS-Ordner.
[root@n138 ~]# su - tester -c 'hadoop fs -ls hdfs:///tmp/testerfolder_src/util-linux-2.23.2/mohankarthikhdfs_src' Found 2 items -rw-r--r-- 3 tester supergroup 14 2021-11-16 17:01 hdfs:///tmp/testerfolder_src/util-linux-2.23.2/mohankarthikhdfs_src/a_hdfs.txt -rw-r--r-- 3 tester supergroup 16 2021-11-16 17:01 hdfs:///tmp/testerfolder_src/util-linux-2.23.2/mohankarthikhdfs_src/b_hdfs.txt
-
Erstellen Sie einen Ordner in NFS und überprüfen Sie die Berechtigungen.
[root@n138 ~]# su - tester -c 'mkdir /xcpsrc_vol/mohankarthiknfs_dest' [root@n138 ~]# su - tester -c 'ls -l /xcpsrc_vol/mohankarthiknfs_dest' total 0 [root@n138 ~]# su - tester -c 'ls -d /xcpsrc_vol/mohankarthiknfs_dest' /xcpsrc_vol/mohankarthiknfs_dest [root@n138 ~]# su - tester -c 'ls -ld /xcpsrc_vol/mohankarthiknfs_dest' drwxrwxr-x 2 tester tester 4096 Nov 16 14:32 /xcpsrc_vol/mohankarthiknfs_dest [root@n138 ~]#
-
Kopieren Sie die Dateien mit XCP von HDFS nach NFS und überprüfen Sie die Berechtigungen.
[root@n138 ~]# su - tester -c '/usr/src/hdfs_nightly/xcp/linux/xcp copy -chown hdfs:///tmp/testerfolder_src/util-linux-2.23.2/mohankarthikhdfs_src/ 10.63.150.126:/xcpsrc_vol/mohankarthiknfs_dest' XCP Nightly_dev; (c) 2021 NetApp, Inc.; Licensed to Karthikeyan Nagalingam [NetApp Inc] until Wed Feb 9 13:38:12 2022 xcp: WARNING: No index name has been specified, creating one with name: autoname_copy_2021-11-16_17.04.03.652673 Xcp command : xcp copy -chown hdfs:///tmp/testerfolder_src/util-linux-2.23.2/mohankarthikhdfs_src/ 10.63.150.126:/xcpsrc_vol/mohankarthiknfs_dest Stats : 3 scanned, 2 copied, 3 indexed Speed : 3.44 KiB in (650/s), 80.2 KiB out (14.8 KiB/s) Total Time : 5s. STATUS : PASSED [root@n138 ~]# su - tester -c 'ls -l /xcpsrc_vol/mohankarthiknfs_dest' total 0 -rw-r--r-- 1 tester supergroup 14 Nov 16 17:01 a_hdfs.txt -rw-r--r-- 1 tester supergroup 16 Nov 16 17:01 b_hdfs.txt [root@n138 ~]# su - tester -c 'ls -ld /xcpsrc_vol/mohankarthiknfs_dest' drwxr-xr-x 2 tester supergroup 4096 Nov 16 17:01 /xcpsrc_vol/mohankarthiknfs_dest [root@n138 ~]#
-