Fasi di distribuzione
Questa sezione illustra i passaggi di distribuzione di NetApp XCP per il trasferimento dei dati.
Dettagli del banco di prova
La tabella seguente fornisce i dettagli del banco di prova utilizzato per questa distribuzione e convalida delle prestazioni.
Componenti della soluzione | Dettagli |
---|---|
XCP versione 1.7 |
|
Coppia HA di array di storage AFF NetApp per il volume di origine |
|
Coppia HA di array di storage AFF NetApp per volume di destinazione |
|
Server Fujitsu PRIMERGY RX2540 |
Ciascuno dotato di: * 48 CPU * Intel Xeon * 256 GB di memoria fisica * doppia porta 10 GbE |
Networking |
10GbE |
Fasi di distribuzione - NAS
Per distribuire NetApp XCP per il trasferimento dati, è necessario innanzitutto installare e attivare il software XCP nella posizione di destinazione. Puoi rivedere i dettagli nel "Guida utente NetApp XCP" . Per farlo, completa i seguenti passaggi:
-
Soddisfare i prerequisiti come dettagliato nella sezione"Prerequisiti per XCP."
-
Scarica il software XCP da "NetApp XCP (Download)" .
-
Copiare i file tar XCP scaricati sul server XCP.
# scp Documents/OneDrive\ -\ NetApp\ Inc/XCP/software/1.6.1/NETAPP_XCP_1.6.1.tgz mailto:root@10.63.150.53:/usr/src
-
Decomprimere il file tar.
[root@mastr-53 src]# tar -zxvf NETAPP_XCP_1.6.1.tgz
-
Scarica la licenza da "https://xcp.netapp.com/license/xcp.xwic" e copiarlo sul server XCP.
-
Attiva la licenza.
[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
-
Trova la porta NFS di origine e il server NFS di destinazione. La porta predefinita è 2049.
[root@mastr-53 ~]# rpcinfo -p 10.63.150.213 [root@mastr-53 ~]# rpcinfo -p 10.63.150.63
-
Controllare la connessione NFS. Controllare il server NFS (sia per l'origine che per la destinazione) utilizzando telnet sulla porta del server NFS.
[root@mastr-53 ~]# telnet 10.63.150.127 2049 [root@mastr-53 ~]# telnet 10.63.150.63 2049
-
Configura il catalogo.
-
Crea un volume NFS ed esporta NFS per il catalogo XCP. È anche possibile sfruttare l'esportazione NFS del sistema operativo per il catalogo XCP.
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
-
Controllare l'esportazione NFS.
[root@mastr-53 ~]# showmount -e 10.63.150.63 | grep xcpca /xcpcatalog (everyone)
-
Aggiornamento
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 ~]#
-
-
Trova le esportazioni NAS di origine utilizzando
xcp show
. Cercare:== 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>
-
(Facoltativo) Eseguire la scansione dei dati NAS di origine.
[root@mastr-53 linux]# ./xcp scan -newid xcpscantest4 -stats 10.63.150.127:/xcpsrc_vol
La scansione dei dati NAS di origine consente di comprendere il layout dei dati e di individuare eventuali problemi di migrazione. Il tempo di scansione XCP è proporzionale al numero di file e alla profondità della directory. Se hai familiarità con i dati del tuo NAS, puoi saltare questo passaggio.
-
Controlla il report creato da
xcp scan
. Cerca principalmente cartelle e file illeggibili.[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/
-
(Facoltativo) Cambiare l'inode. Visualizza il numero di inode e modifica il numero in base al numero di file da migrare o copiare sia per i volumi di catalogo che per quelli di destinazione (se necessario).
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
-
Eseguire la scansione del volume di destinazione.
[root@mastr-53 linux]# ./xcp scan -stats 10.63.150.63:/xcpdest
-
Controllare lo spazio del volume di origine e di destinazione.
[root@mastr-53 ~]# df -h /xcpsrc_vol [root@mastr-53 ~]# df -h /xcpdest/
-
Copia i dati dall'origine alla destinazione utilizzando
xcp copy
e controlla il riepilogo.[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]#
Per impostazione predefinita, XCP crea sette processi paralleli per copiare i dati. Questo può essere regolato. NetApp consiglia di impostare il volume di origine come di sola lettura. In tempo reale, il volume sorgente è un file system attivo e dinamico. IL xcp copy
l'operazione potrebbe non riuscire perché NetApp XCP non supporta una sorgente live che viene modificata continuamente da un'applicazione.Per Linux, XCP richiede un ID indice perché XCP Linux esegue la catalogazione.
-
(Facoltativo) Controllare gli inode sul volume NetApp di destinazione.
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::>
-
Eseguire l'aggiornamento incrementale utilizzando
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
Per questo documento, per simulare in tempo reale, il milione di file nei dati di origine sono stati rinominati e quindi i file aggiornati sono stati copiati nella destinazione utilizzando
xcp sync
. Per Windows, XCP necessita sia del percorso di origine che di quello di destinazione. -
Convalida il trasferimento dei dati. È possibile convalidare che l'origine e la destinazione abbiano gli stessi dati utilizzando
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
La documentazione XCP fornisce molteplici opzioni (con esempi) per scan
, copy
, sync
, E verify
operazioni. Per maggiori informazioni, vedere il "Guida utente NetApp XCP" .
|
I clienti Windows devono copiare i dati utilizzando gli elenchi di controllo di accesso (ACL). NetApp consiglia di utilizzare il comando xcp copy -acl -fallbackuser\<username> -fallbackgroup\<username or groupname> <source> <destination> . Per ottenere le massime prestazioni, considerando il volume di origine che contiene dati SMB con ACL e i dati accessibili sia tramite NFS che SMB, la destinazione deve essere un volume NTFS. Utilizzando XCP (versione NFS), copiare i dati dal server Linux ed eseguire la sincronizzazione XCP (versione SMB) con -acl E -nodata opzioni dal server Windows per copiare gli ACL dai dati di origine ai dati SMB di destinazione.
|
Per i passaggi dettagliati, vedere "Configurazione del criterio "Gestisci registro di controllo e sicurezza"" .
Fasi di distribuzione - Migrazione dei dati HDFS/MapRFS
In questa sezione, discuteremo la nuova funzionalità XCP denominata Hadoop Filesystem Data Transfer to NAS, che migra i dati da HDFS/MapRFS a NFS e viceversa.
Prerequisiti
Per la funzionalità MapRFS/HDFS, è necessario eseguire la seguente procedura in un ambiente utente non root. Solitamente l'utente non root è hdfs, mapr o un utente che ha l'autorizzazione per apportare modifiche al file system HDFS e MapRFS.
-
Impostare le variabili CLASSPATH, HADOOP_HOME, NHDFS_LIBJVM_PATH, LB_LIBRARY_PATH e NHDFS_LIBHDFS_PATH nella CLI o nel file .bashrc dell'utente insieme a
xcp
comando.-
NHDFS_LIBHDFS_PATH punta al file libhdfs.so. Questo file fornisce le API HDFS per interagire e manipolare i file HDFS/MapRFS e il file system come parte della distribuzione Hadoop.
-
NHDFS_LIBJVM_PATH punta al file libjvm.so. Questa è una libreria di macchine virtuali JAVA condivisa nella posizione jre.
-
CLASSPATH punta a tutti i file jar utilizzando i valori (Hadoop classpath –glob).
-
LD_LIBRARY_PATH punta alla posizione della cartella della libreria nativa di Hadoop.
Vedere il seguente esempio basato su un cluster Cloudera.
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 questa versione supportiamo le operazioni di scansione, copia e verifica XCP e la migrazione dei dati da HDFS a NFS. È possibile trasferire dati da un cluster di data lake a un singolo nodo worker e a più nodi worker. Nella versione 1.8, la migrazione dei dati può essere eseguita sia dagli utenti root che da quelli non root. -
Fasi di distribuzione: l'utente non root migra i dati HDFS/MaprFS su NetApp NFS
-
Seguire gli stessi passaggi indicati dal punto 1 al punto 9 nella sezione relativa ai passaggi per la distribuzione.
-
Nell'esempio seguente, l'utente migra i dati da HDFS a NFS.
-
Crea una cartella e dei file (utilizzando
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 ~]#
-
Controllare le autorizzazioni nella cartella HDFS.
[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
-
Creare una cartella in NFS e controllare i permessi.
[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 ~]#
-
Copiare i file da HDFS a NFS utilizzando XCP e verificare le autorizzazioni.
[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 ~]#
-