一.準備階段
1.準備2套能正常執行的hbase集群(new cluster:222|oldcluster:226)
2.2套集群的hosts檔案內容都需要包含對方的主機位址
3.zookeeper可以單獨部署2個集群,也可用乙個zookeeper集群管理2套hbase集群,就是不能用hbase自帶的zookeeper集群做管理
4.hadoop、hbase等元件版本號保持一致
二.配置階段
1.修改222集群的hbase-site.xml檔案
新增如下內容:
hbase.replication
true
2.在222集群上新增peer
./hbase shell add_peer'1','172.16.205.226:2181:/hbase' 執行該命令會報錯,但是不影響執行結果,如果不想讓其有報錯提示,可進入zookeeper將peerid刪除,再執行此命令就行了
3.啟動複製 ./hbase shellstart_replication 執行該命令也會報錯,不予理會。若想看看狀態是否被開啟,同樣進入zookeeper檢視state
4.建立表 在兩套集群建立同樣的表(結構需要完全一樣)
5.在226上新增replication屬性,並重新整理其結構
disable 'your_table'
alter 'your_table',
enable 'your_table'
6.測試資料同步
在226上put一條資料進hbase
222上將能在隨後被scan到
小貼士:
該配置模式是主備模式,也就是說,可以從226同步到222上,但是反向操作是不行的。
Hadoop集群間HBase資料遷移
背景 hbase cluster1 hbase cluster2 利用hbase的snapshots功能,進行集群之間的hbase資料前移 1.開啟snapshots功能 0.95及以上版本預設開啟了 hbase.snapshot.enabledname truevalue property 2.建...
兩個相互獨立的gitLab間的同步
假設機器a上已經有了git倉庫test.git,要在機器b上映象這個git倉庫,則需要在機器b上執行 git clone mirror ssh 也即在機器b上,以git clone mirror的方式將git倉庫從機器a上clone下來,這時機器b上就有了乙份跟機器a一模一樣的git倉庫了。然後在機...
兩個窗體間實時傳遞資料
相信大家在做系統的時候,很多人都遇到需要在兩個不同的窗體間傳遞資料的情況,例如可以單獨開啟乙個視窗,用於顯示 名稱對照關係,通過雙擊該窗體的資料,我們希望這個資料傳遞到另乙個窗體中。如何實現兩個窗體間資料的實時傳遞呢?其實很簡單,只需要簡單地運用事件通知就可以了。首先做如下假設 有兩個窗體mainf...