Pasos de la implementación
En esta sección se tratan los pasos de implementación para XCP de NetApp para la transferencia de datos.
Detalles de la cama de prueba
La siguiente tabla muestra los detalles del banco de pruebas utilizado para esta puesta en marcha y validación del rendimiento.
Componentes de la solución | Detalles |
---|---|
XCP versión 1.7 |
|
Par de alta disponibilidad de la cabina de almacenamiento AFF de NetApp para el volumen de origen |
|
Par de alta disponibilidad de la cabina de almacenamiento AFF de NetApp para el volumen de destino |
|
Servidor PRIMERGY RX2540 de Fujitsu |
Cada una equipada con: * 48 CPU * Intel Xeon * 256 GB de memoria física * 10 GbE de doble puerto |
Redes |
10 GbE |
Pasos de puesta en marcha: NAS
Para implementar NetApp XCP para la transferencia de datos, primero instale y active el software XCP en la ubicación de destino. Puede revisar los detalles en la "Guía del usuario de NetApp XCP". Para ello, lleve a cabo los siguientes pasos:
-
Cumpla los requisitos previos tal y como se detalla en la sección "“Requisitos previos para XCP”."
-
Descargue el software XCP de "Página NetApp XCP (descargas)".
-
Copie los archivos tar XCP descargados en el servidor 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
-
Destar el archivo tarfile.
[root@mastr-53 src]# tar -zxvf NETAPP_XCP_1.6.1.tgz
-
Descargue la licencia de "https://xcp.netapp.com/license/xcp.xwic" Y copie en el servidor XCP.
-
Active la licencia.
[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
-
Busque el puerto NFS de origen y el servidor NFS de destino. El puerto predeterminado es 2049.
[root@mastr-53 ~]# rpcinfo -p 10.63.150.213 [root@mastr-53 ~]# rpcinfo -p 10.63.150.63
-
Compruebe la conexión NFS. Compruebe el servidor NFS (tanto para el origen como para el destino) mediante telnet al puerto del servidor NFS.
[root@mastr-53 ~]# telnet 10.63.150.127 2049 [root@mastr-53 ~]# telnet 10.63.150.63 2049
-
Configure el catálogo.
-
Cree un volumen NFS y exporte NFS para el catálogo XCP. También puede aprovechar la exportación NFS del sistema operativo para el catálogo 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
-
Compruebe la exportación NFS.
[root@mastr-53 ~]# showmount -e 10.63.150.63 | grep xcpca /xcpcatalog (everyone)
-
Actualizar
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 ~]#
-
-
Busque las exportaciones NAS de origen mediante
xcp show
. Busque:== 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>
-
(Opcional) analice los datos NAS de origen.
[root@mastr-53 linux]# ./xcp scan -newid xcpscantest4 -stats 10.63.150.127:/xcpsrc_vol
El análisis de los datos NAS de origen le ayuda a comprender la distribución de los datos y a encontrar posibles problemas relacionados con la migración. El tiempo de operación de exploración XCP es proporcional al número de archivos y a la profundidad del directorio. Puede omitir este paso si está familiarizado con los datos de NAS.
-
Compruebe el informe creado por
xcp scan
. Busque principalmente carpetas ilegibles y archivos ilegibles.[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/
-
(Opcional) cambie el inodo. Vea el número de inodos y modifique el número en función del número de archivos que se van a migrar o copiar tanto para los volúmenes de catálogo como de destino (si es necesario).
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
-
Analice el volumen de destino.
[root@mastr-53 linux]# ./xcp scan -stats 10.63.150.63:/xcpdest
-
Compruebe el espacio en el volumen de origen y el de destino.
[root@mastr-53 ~]# df -h /xcpsrc_vol [root@mastr-53 ~]# df -h /xcpdest/
-
Copie los datos del origen en el destino mediante
xcp copy
y compruebe el resumen.[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]#
De forma predeterminada, XCP crea siete procesos paralelos para copiar los datos. Esto se puede ajustar. NetApp recomienda que el volumen de origen sea de solo lectura. En tiempo real, el volumen de origen es un sistema de archivos activo y activo. La xcp copy
La operación puede fallar porque NetApp XCP no admite un origen en directo que cambia continuamente una aplicación.Para Linux, XCP requiere un ID de índice porque XCP Linux realiza la catalogación.
-
(Opcional) Compruebe la información de los inodos en el volumen de NetApp de destino.
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::>
-
Realice la actualización incremental mediante
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
Para este documento, para simular en tiempo real, se cambió el nombre del millón de archivos de los datos de origen y, a continuación, se copiaron los archivos actualizados al destino mediante el uso
xcp sync
. Para Windows, XCP necesita tanto rutas de origen como de destino. -
Validar la transferencia de datos. Puede validar que el origen y el destino tienen los mismos datos con
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 documentación de XCP proporciona varias opciones (con ejemplos) para scan
, copy
, sync
, y. verify
operaciones. Para obtener más información, consulte "Guía del usuario de NetApp XCP".
Los clientes de Windows deben copiar los datos mediante listas de control de acceso (ACL). NetApp recomienda utilizar el comando xcp copy -acl -fallbackuser\<username> -fallbackgroup\<username or groupname> <source> <destination> . Para obtener el máximo rendimiento, teniendo en cuenta el volumen de origen que tiene datos SMB con ACL y los datos a los que pueden acceder NFS y SMB, el destino debe ser un volumen NTFS. Con XCP (versión NFS), copie los datos del servidor Linux y ejecute la sincronización XCP (versión SMB) con el -acl y.. -nodata Opciones del servidor de Windows para copiar las ACL de los datos de origen en los datos de SMB de destino.
|
Para conocer los pasos detallados, consulte "Configuración de la directiva "gestionar auditoría y registro de seguridad"".
Pasos de implementación: Migración de datos HDFS/MapRFS
En esta sección, se trata sobre la nueva función XCP llamada Hadoop Filesystem Data Transfer to NAS, que migra datos de HDFS/MapRFS a NFS y viceversa.
Requisitos previos
Para la función MapRFS/HDFS, debe realizar el siguiente procedimiento en un entorno de usuario que no sea raíz. Normalmente, el usuario no raíz es hdfs, mapr o un usuario que tiene permiso para realizar cambios en el sistema de archivos HDFS y MapRFS.
-
Establezca las variables CLASSPATH, HADOOP_HOME, NHDFS_LIBJVM_PATH, LB_LIBRARY_PATH y NHDFS_LIBHDFS_PATH en la CLI o en el archivo .bashrc del usuario junto con el
xcp
comando.-
NHDFS_LIBHDFS_PATH apunta al archivo libhdfs.so. Este archivo proporciona las API de HDFS para interactuar y manipular los archivos y sistemas de archivos HDFS/MapRFS como parte de la distribución de Hadoop.
-
NHDFS_LIBJVM_PATH apunta al archivo libjvm.so. Se trata de una biblioteca DE máquinas virtuales JAVA compartida en la ubicación jre.
-
CLASSPATH apunta a todos los archivos JAR utilizando los valores (CLasspath –glob) de Hadoop.
-
LD_LIBRARY_PATH apunta a la ubicación de la carpeta de biblioteca nativa de Hadoop.
Consulte el siguiente ejemplo basado en un clúster de 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
+
En esta versión, admitimos el análisis, la copia y la verificación de operaciones y la migración de datos de XCP desde HDFS a NFS. Puede transferir datos desde un solo nodo de trabajo de un clúster de lagos de datos y de varios nodos de trabajo. Con la versión 1.8, los usuarios raíz y no raíz pueden realizar la migración de datos. -
Pasos de implementación: Un usuario que no sea raíz migra los datos de HDFS/MaprFS a NFS de NetApp
-
Siga los mismos pasos que se mencionan en la sección pasos para la implementación en 1-9.
-
En el ejemplo siguiente, el usuario migra datos de HDFS a NFS.
-
Cree una carpeta y archivos (mediante
hadoop fs -copyFromLocal
) En 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 ~]#
-
Compruebe los permisos en la carpeta 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
-
Cree una carpeta en NFS y compruebe los permisos.
[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 ~]#
-
Copie los archivos de HDFS a NFS mediante XCP y compruebe los permisos.
[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 ~]#
-