從兩個HDFS集群之間拷貝資料命令

2021-09-26 09:29:24 字數 891 閱讀 7493

命令如下:

hadoop distcp hdfs:/

/a01:8020/lime/ hdfs:/

/nameservice/

該命令在需要資料的集群上面進行執行,執行過程需要跑mr程式。

於是我親身測試了一下。答案是肯定的 所以有了方法二

這裡我以隨便乙個區域網ip為例,它上面配置的namenode通訊埠為8020

nohup hadoop/bin/hdfs dfs -get hdfs: ./ &
該命令即可把192.168.0.1主機的/lime/test目錄下內容拷貝到本地。

也去你會遇到一些錯誤,比如:

/s.apache.org/sbnn-error那麼你遇到就對了,因為我也遇到了。原因是你拷貝資料的集群是高可用的,但是你去連線的時候卻沒有連線到active的namenode 。因此你可以去儲存資料的集群上面檢視哪乙個namenode是可以active狀態的。

檢視namenode狀態命令

[bigdata@f1 bigdata]$ hadoop/bin/hdfs haadmin -getservicestate namenode1

active

[bigdata@f1 bigdata]$ hadoop/bin/hdfs haadmin -getservicestate namenode2

standby

這時候你就需要把ip該為active狀態的namenode的ip位址了,然後再嘗試一下。你就可以成功了。

兩集群拷貝 hdfs資料

將 a集群的資料 拷貝到b集群 hadoop distcp hdfs 10.30 7.8 8020 master basis report data hdfs 10.30 7.2 hive log 一些 常用引數補充 標識及描述 備註 p rbugp 修改次數不會被保留。並且當指定 update 時...

兩個hbase集群間同步資料

一.準備階段 1.準備2套能正常執行的hbase集群 new cluster 222 oldcluster 226 2.2套集群的hosts檔案內容都需要包含對方的主機位址 3.zookeeper可以單獨部署2個集群,也可用乙個zookeeper集群管理2套hbase集群,就是不能用hbase自帶的...

關於兩個窗體之間交換資料

學習.net不短時間了,最近做的乙個東西需要用到在幾個窗體之間進行通訊。類似於一般軟體的設定這個選項卡,開啟時候進行一些基本引數的設定,然後主程式會根據這些引數作出反映。之前我採取的方法是在主窗體類中建立乙個子窗體的例項。然後把要傳遞的子窗體引數設定為public,這樣在主窗體中就可以呼叫了。這樣做...