部署步驟
本節介紹用於資料傳輸的NetApp XCP 的部署步驟。
試驗台細節
下表提供了用於此部署和效能驗證的測試平台的詳細資訊。
解決方案組件 | 細節 |
---|---|
XCP 版本 1.7 |
|
來源磁碟區的NetApp AFF儲存陣列 HA 對 |
|
目標磁碟區的NetApp AFF儲存陣列 HA 對 |
|
富士通PRIMERGY RX2540伺服器 |
每個配備:* 48 個 CPU * Intel Xeon * 256GB 實體記憶體 * 10GbE 雙端口 |
聯網 |
10GbE |
部署步驟 - NAS
若要部署NetApp XCP 進行資料傳輸,請先在目標位置安裝並啟動 XCP 軟體。您可以在 "NetApp XCP 使用者指南"。為此,請完成以下步驟:
-
滿足本節中詳細說明的先決條件"XCP 的先決條件。"
-
從下載 XCP 軟體 "NetApp XCP(下載)頁面"。
-
將下載的 XCP tar 檔案複製到 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
-
解壓縮 tarfile。
[root@mastr-53 src]# tar -zxvf NETAPP_XCP_1.6.1.tgz
-
從下載許可證 "https://xcp.netapp.com/license/xcp.xwic"並複製到XCP伺服器。
-
啟動許可證。
[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
-
找到來源 NFS 連接埠和目標 NFS 伺服器。預設連接埠為 2049。
[root@mastr-53 ~]# rpcinfo -p 10.63.150.213 [root@mastr-53 ~]# rpcinfo -p 10.63.150.63
-
檢查 NFS 連接。使用 telnet 到 NFS 伺服器連接埠檢查 NFS 伺服器(來源和目標)。
[root@mastr-53 ~]# telnet 10.63.150.127 2049 [root@mastr-53 ~]# telnet 10.63.150.63 2049
-
配置目錄。
-
建立 NFS 磁碟區並為 XCP 目錄匯出 NFS。您也可以利用作業系統 NFS 匯出 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
-
檢查 NFS 導出。
[root@mastr-53 ~]# showmount -e 10.63.150.63 | grep xcpca /xcpcatalog (everyone)
-
更新
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 ~]#
-
-
使用以下方式尋找來源 NAS 匯出
xcp show
。尋找:== 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>
-
(可選)掃描來源 NAS 資料。
[root@mastr-53 linux]# ./xcp scan -newid xcpscantest4 -stats 10.63.150.127:/xcpsrc_vol
掃描來源 NAS 資料有助於您了解資料佈局並發現任何潛在的遷移問題。 XCP掃描操作時間與檔案數量和目錄深度成正比。如果您熟悉 NAS 數據,可以跳過此步驟。
-
檢查由
xcp scan
。主要搜尋無法讀取的資料夾和無法讀取的檔案。[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/
-
(可選)更改 inode。查看 inode 的數量,並根據目錄和目標磁碟區要遷移或複製的檔案數量修改該數量(如果需要)。
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
-
掃描目標卷。
[root@mastr-53 linux]# ./xcp scan -stats 10.63.150.63:/xcpdest
-
檢查來源和目標磁碟區空間。
[root@mastr-53 ~]# df -h /xcpsrc_vol [root@mastr-53 ~]# df -h /xcpdest/
-
使用以下方法將資料從來源複製到目標 `xcp copy`並檢查摘要。
[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]#
預設情況下,XCP 會建立七個並行進程來複製資料。這可以調整。 NetApp建議來源磁碟區為唯讀。即時地,來源磁碟區是一個活動的、活躍的檔案系統。這 `xcp copy`操作可能會失敗,因為NetApp XCP 不支援由應用程式不斷更改的即時來源。 對於 Linux,XCP 需要索引 ID,因為 XCP Linux 執行編目。
-
(可選)檢查目標NetApp磁碟區上的 inode。
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::>
-
使用以下方式執行增量更新
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
對於本文檔,為了模擬即時性,將來源資料中的一百萬個文件重新命名,然後使用以下方法將更新的文件複製到目標位置:
xcp sync
。對於 Windows,XCP 需要來源路徑和目標路徑。 -
驗證資料傳輸。您可以使用以下方法驗證來源和目標是否具有相同的數據
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
XCP 文件提供了多種選項(帶有範例) scan
, copy
, sync
, 和 `verify`營運.有關詳細信息,請參閱 "NetApp XCP 使用者指南"。
|
Windows 客戶應使用存取控制清單 (ACL) 複製資料。 NetApp建議使用指令 xcp copy -acl -fallbackuser\<username> -fallbackgroup\<username or groupname> <source> <destination> 。為了獲得最佳效能,考慮到來源磁碟區具有帶有 ACL 的 SMB 資料以及可由 NFS 和 SMB 存取的數據,目標必須是 NTFS 磁碟區。使用 XCP(NFS 版本),從 Linux 伺服器複製資料並與 `-acl`和 `-nodata`Windows 伺服器選項將 ACL 從來源資料複製到目標 SMB 資料。
|
詳細步驟請參見 "配置“管理審計和安全性日誌”策略"。
部署步驟 - HDFS/MapRFS 資料遷移
在本節中,我們討論新的 XCP 功能“Hadoop 檔案系統資料傳輸到 NAS”,它將資料從 HDFS/MapRFS 遷移到 NFS,反之亦然。
先決條件
對於 MapRFS/HDFS 功能,您必須在非 root 使用者環境中執行下列步驟。通常非 root 使用者是 hdfs、mapr 或有權限在 HDFS 和 MapRFS 檔案系統中進行更改的使用者。
-
在 CLI 或使用者的 .bashrc 檔案中設定 CLASSPATH、HADOOP_HOME、NHDFS_LIBJVM_PATH、LB_LIBRARY_PATH 和 NHDFS_LIBHDFS_PATH 變數以及 `xcp`命令。
-
NHDFS_LIBHDFS_PATH 指向 libhdfs.so 檔案。該檔案提供 HDFS API 來互動和操作 HDFS/MapRFS 檔案和檔案系統,作為 Hadoop 發行版的一部分。
-
NHDFS_LIBJVM_PATH 指向 libjvm.so 檔案。這是JAVA虛擬機器共享庫在jre中的位置。
-
CLASSPATH 使用(Hadoop classpath –glob)值指向所有 jar 檔案。
-
LD_LIBRARY_PATH 指向 Hadoop 本機程式庫資料夾位置。
請參閱以下基於 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
+
在此版本中,我們支援 XCP 掃描、複製和驗證操作以及從 HDFS 到 NFS 的資料遷移。您可以從資料湖叢集單一工作節點和多個工作節點傳輸資料。在1.8版本中,root用戶和非root用戶都可以執行資料遷移。 -
部署步驟 - 非 root 使用者將 HDFS/MaprFS 資料移轉到NetApp NFS
-
請依照部署部分步驟 1-9 中提到的相同步驟進行操作。
-
在以下範例中,使用者將資料從 HDFS 遷移到 NFS。
-
建立資料夾和檔案(使用
hadoop fs -copyFromLocal
) 在 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 ~]#
-
檢查 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
-
在 NFS 中建立一個資料夾並檢查權限。
[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 ~]#
-
使用 XCP 將檔案從 HDFS 複製到 NFS,並檢查權限。
[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 ~]#
-