Hadoop HA(高可用)的安裝與使用

2021-09-26 11:41:09 字數 4568 閱讀 7224

hadoop的安裝與使用

隨著資料時代的來臨,現階段的碼農貌似不可少的要接觸大資料這方面了,現將hadoop的相關用法總結下,以供後期複習重溫。

hadoop總共分為hdfs和mapreduce,本次部落格只看下如何安裝hadoop-ha(高可用)

hdfs://mycluster

hadoop.tmp.dir

/opt/ha/hadoop-2.7.2/data/tmp

6)配置hdfs-site.xml

7)拷貝配置好的hadoop環境到其他節點

3.5 啟動hdfs-ha集群

1)在各個journalnode節點上,輸入以下命令啟動journalnode服務:

sbin/hadoop-daemon.sh start journalnode

2)在[nn1]上,對其進行格式化,並啟動:

bin/hdfs namenode -format

sbin/hadoop-daemon.sh start namenode

3)在[nn2]上,同步nn1的元資料資訊:

bin/hdfs namenode -bootstrapstandby

4)啟動[nn2]:

sbin/hadoop-daemon.sh start namenode

5)檢視web頁面顯示

6)在[nn1]上,啟動所有datanode

sbin/hadoop-daemons.sh start datanode

7)將[nn1]切換為active

bin/hdfs haadmin -transitiontoactive nn1

8)檢視是否active

bin/hdfs haadmin -getservicestate nn1

3.6 配置hdfs-ha自動故障轉移

1)具體配置

(1)在hdfs-site.xml中增加

dfs.ha.automatic-failover.enabled

true

(2)在core-site.xml檔案中增加

ha.zookeeper.quorum

hadoop102:2181,hadoop103:2181,hadoop104:2181

2)啟動

(1)關閉所有hdfs服務:

sbin/stop-dfs.sh

(2)啟動zookeeper集群:

bin/zkserver.sh start

(3)初始化ha在zookeeper中狀態:

bin/hdfs zkfc -formatzk

(4)啟動hdfs服務:

sbin/start-dfs.sh

(5)在各個namenode節點上啟動dfszk failover controller,先在哪台機器啟動,哪個機器的namenode就是active namenode

sbin/hadoop-daemin.sh start zkfc

3)驗證

(1)將active namenode程序kill

kill -9 namenode的程序id

(2)將active namenode機器斷開網路

service network stop

4. yarn-ha配置

4.1 yarn-ha工作機制

1)官方文件:

4.2 配置yarn-ha集群

(0)環境準備

(1)修改ip

(2)修改主機名及主機名和ip位址的對映

(3)關閉防火牆

(4)ssh免密登入

(5)安裝jdk,配置環境變數等

(6)配置zookeeper集群

1)規劃集群

hadoop102                  hadoop103                   hadoop104        

namenode                    namenode

journalnode                journalnode                journalnode        

datanode                    datanode                   datanode        

zk                                  zk                             zk

resourcemanager        resourcemanager

nodemanager                nodemanager                nodemanager        

2)具體配置

(1)yarn-site.xml

yarn.nodemanager.aux-services

mapreduce_shuffle

yarn.resourcemanager.ha.enabled

true

yarn.resourcemanager.cluster-id

cluster-yarn1

yarn.resourcemanager.ha.rm-ids

rm1,rm2

yarn.resourcemanager.hostname.rm1

hadoop102

yarn.resourcemanager.hostname.rm2

hadoop103

yarn.resourcemanager.zk-address

hadoop102:2181,hadoop103:2181,hadoop104:2181  

yarn.resourcemanager.recovery.enabled

true

yarn.resourcemanager.store.class

org.apache.hadoop.yarn.server.resourcemanager.recovery.zkrmstatestore

(2)同步更新其他節點的配置資訊

3)啟動hdfs 

(1)在各個journalnode節點上,輸入以下命令啟動journalnode服務:

sbin/hadoop-daemon.sh start journalnode

(2)在[nn1]上,對其進行格式化,並啟動:

bin/hdfs namenode -format

sbin/hadoop-daemon.sh start namenode

(3)在[nn2]上,同步nn1的元資料資訊:

bin/hdfs namenode -bootstrapstandby

(4)啟動[nn2]:

sbin/hadoop-daemon.sh start namenode

(5)啟動所有datanode

sbin/hadoop-daemons.sh start datanode

(6)將[nn1]切換為active

bin/hdfs haadmin -transitiontoactive nn1

4)啟動yarn 

(1)在hadoop102中執行:

sbin/start-yarn.sh

(2)在hadoop103中執行:

sbin/yarn-daemon.sh start resourcemanager

(3)檢視服務狀態

bin/yarn rmadmin -getservicestate rm1

docker之hadoop HA高可用配置

搭建hadoop的高可用性,hadoop版本為2.6.5。hadoop的高可用配置有兩種方法,以下是我選擇配置的quorum journal manager qjm 的方法。quorum的高可用需要啟動奇數個 3 5 7等 journalnodes節點進行日誌的處理,活動namenode節點負責進行...

Hadoop HA高可用集群故障定位

hadoop ha高可用集群namenode啟動後自動停止 hadoop集群啟動命令的正確順序如下 1 啟動zookeeper 每台都執行 zkserver.sh status 2 啟動journalnode 每台都執行 hadoop daemon.sh start journalnode 3 啟動...

高併發與高可用

事發事中 事後高併發 增加處理人手 事前 副本 隔離 配額 提前預案 探知 事發 監控 報警 事中 降級 回滾 應急預案,fail 系列 事後 覆盤 思考 技改 fail 系列 當出現下游呼叫失敗時,我們一般有幾種處理方式 failretry,即失敗重試,需要配合退避時間,否則馬上重試不一定會有效果...