4.7 Hadoop+zookeeper實現HA
- 叢集規劃
zk01——zk05,5臺centos
zk01——zk05部署了5個zookeeper
zk01為namenode節點
zk05為namenode的HA節點
zk02、zk03、zk04為datanode節點 - 搭建過程
修改主機名,hosts
搭建5臺zookeeper,啟動後5臺機器都要zkServer.sh status檢視狀態,如果有啟動沒成功的節點,先解決這裡的問題,再繼續向下進行
配置環境變數
在主節點配置hadoop,其他和以前步驟一樣,只有core-site.xml和hdfs-site.xml有變化,如下:
core-site.xml中,fs.defaultFS的值修改為hdfs://ns ns為自定義的名稱,與hdfs.site.xml中對應
core-site.xml中,增加以下配置:
<property>
<name>dfs.nameservices</name>
<value>ns</value>
</property>
<!-- ns下面有兩個NameNode,分別是nn1,nn2 -->
<property>
<name>dfs.ha.namenodes.ns</name>
<value>nn1,nn2</value>
</property>
<!-- nn1的RPC通訊地址 -->
<property>
<name>dfs.namenode.rpc-address.ns.nn1</name>
<value>zk01:9000</value>
</property>
<!-- nn1的http通訊地址 -->
<property>
<name>dfs.namenode.http-address.ns.nn1</name>
<value>zk01:50070</value>
</property>
<!-- nn2的RPC通訊地址 -->
<property>
<name>dfs.namenode.rpc-address.ns.nn2</name>
<value>zk05:9000</value>
</property>
<!-- nn2的http通訊地址 -->
<property>
<name>dfs.namenode.http-address.ns.nn2</name>
<value>zk05:50070</value>
</property>
<!-- 指定NameNode的後設資料在JournalNode上的存放位置 -->
<property>
<name>dfs.namenode.shared.edits.dir</name>
qjournal://zk01:8485;zk02:8485;zk03:8485;zk04:8485;zk05:8485/ns
dfs.journalnode.edits.dir
/usr/local/hadoop/
dfs.ha.automatic-failover.enabled
true
dfs.client.failover.proxy.provider.ns
org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider
dfs.ha.fencing.methods
shell(/bin/true)
在zk01節點輸入 hdfs zkfc -formatZK 格式化zookeeper叢集,此時會在zookeeper建立HA的相應節點
所有節點hadoop的sbin目錄下,執行 ./hadoop-daemon.sh start journalnode 啟動JournalNode叢集
在所有節點hadoop的sbin目錄執行 ./hadoop-daemon.sh start zkfc 啟動ZooKeeperFailoverCotroller
在zk01節點輸入 hdfs namenode -format -clusterId ss 格式化
在zk01節點hadoop的sbin目錄輸入 ./hadoop-daemon.sh start namenode 啟動namenode
在zk05節點hadoop的bin目錄輸入 ./hdfs namenode -bootstrapStandby 將格式化同步到備機
在zk05節點hadoop的sbin目錄輸入 ./hadoop-daemon.sh start namenode 啟動備機的namenode
在zk01節點hadoop的sbin目錄輸入 ./hadoop-daemons.sh start datanode 啟動datanode
在zk01節點hadoop的sbin目錄輸入 ./start-yarn.sh
下圖是兩個啟動後的namenode節點
此時 kill -9 zk01節點namenode的程式
檢視zk05會自動切換為active,HA配置成功
學院Go語言視訊主頁
https://edu.csdn.net/lecturer/1928
清華團隊帶你實戰區塊鏈開發
掃碼獲取海量視訊及原始碼 QQ群:721929980
相關文章
- 基於heartbeat的NFS HA實現(轉)NFS
- 基於heartbeat的NFS HA實現 (轉)NFS
- PostgreSQL+Pgpool實現HA讀寫分離SQL
- 大資料謝列3:Hdfs的HA實現大資料
- PostgreSQLlibpqmulti-host配置與簡單HA實現SQL
- 使用 HA-LVM 實現高可用儲存LVM
- 4.7
- 畢設4.7
- Captial One如何實現Artifactory HA叢集的自動化維護APT
- 實現一個分散式排程系統-LoadBalance和Ha策略分散式
- 在Linux上實現DB2雙機HA完整方案(轉)LinuxDB2
- RHEL5實現高可用HA叢集+GFS+EnterpriseDB(zt)
- 使用Consul和ProxySQL實現MySQL HA讀寫分離高可用性MySql
- Oracle在HP RX6600小機上實現HA後的測試方法Oracle
- 破解SAP4.6 and 4.7
- 【ha知識兩問】ha軟體是什麼?ha軟體用途有哪些?
- mysql-HAMySql
- mysql HA方案MySql
- rose ha 配置ROS
- nginx與HANginx
- nmon for redhat 4.7(64bit)Redhat
- RocketMQ彈性HAMQ
- HA執行流程
- mysql HA 方案(1)MySql
- 實戰生產環境vCenter HA配置(VCSA6.5)
- Hadoop2.7實戰v1.0之YARN HAHadoopYarn
- Hadoop2.7實戰v1.0之HDFS HAHadoop
- 兩臺HP RX6600共享儲存實現HA,同步兩臺機器vg map的命令
- HDFS HA 配置學習
- ha軟體簡介
- mysql HA 方案(2):MHAMySql
- mysql HA 方案(3):MHAMySql
- 破解SAP4.6,4.7 and ECC6
- 搜到的qt 4.7 vxworks解決方案QT
- CoffeeScript攻略4.7:對映陣列陣列
- HA叢集heartbeat配置--NginxNginx
- HA分散式叢集搭建分散式
- linux-ha heartbeat 搭建Linux