日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

HA高可用完全分布式集群 HDFS搭建

發布時間:2023/12/19 编程问答 45 豆豆
生活随笔 收集整理的這篇文章主要介紹了 HA高可用完全分布式集群 HDFS搭建 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
HDFS HA 需要 設置靜態IP、安裝 jdk、設置ssh無密碼登錄、安裝zookeeper、安裝hadoop。

在Hadoop2.X之前,Namenode是HDFS集群中可能發生單點故障的節點,每個HDFS集群只有一個namenode,一旦這個節點不可用,則整個HDFS集群將處于不可用狀態。

HDFS高可用(HA)方案就是為了解決上述問題而產生的,在HA HDFS集群中會同時運行兩個Namenode,一個作為活動的Namenode(Active),一個作為備份的Namenode(Standby)。備份的Namenode的命名空間與活動的Namenode是實時同步的,所以當活動的Namenode發生故障而停止服務時,備份Namenode可以立即切換為活動狀態,而不影響HDFS集群服務。

下面是大家過程,我將整個過程分步詳細整理了,這樣能夠更詳細的展示。

服務器名稱進程
hadoop01QuorumPeerMain、NameNode、DataNode、JournalNode、ResourceManager、NodeManager、DFSZKFailoverController、
hadoop02QuorumPeerMain、NameNode、DataNode、JournalNode、DFSZKFailoverController 、NodeManager
hadoop03QuorumPeerMain、DataNode、JournalNode、NodeManager

1、設置靜態IP

設置靜態IP
https://blog.csdn.net/weixin_42119153/article/details/100124300#commentBox

2、安裝jdk

安裝jdk
https://blog.csdn.net/weixin_42119153/article/details/100125845

3、設置ssh無密碼登錄

普通hdfs集群實現鏈接里面的一臺虛擬機(master即namenode所在機器)無密碼登錄其他虛擬機就可以,
搭建HA高可用需要其他的namenode所在機器也能夠無密碼登錄其他虛擬機,所以要在另一臺namenode上都重復下面的操作
設置ssh無密碼登錄
https://blog.csdn.net/weixin_42119153/article/details/100126037

4、安裝zookeeper

1)新建zookeeper安裝目錄

[hadoop@hadoop01 app]$ mkdir zookeeper

2)將下載的安裝包上傳至目錄下并解壓

[hadoop@hadoop01 zookeeper]$ tar -zxvf apache-zookeeper-3.5.5-bin.tar.gz

3)修該解壓后的目錄便于使用

[hadoop@hadoop01 zookeeper]$ mv apache-zookeeper-3.5.5-bin zookeeper3.5


4)在當前目錄新建zkdata目錄

[hadoop@hadoop01 zookeeper]$ mkdir zkdata

5)在zkdata目錄新建myid文件并輸入數據1

[hadoop@hadoop01 zkdata]$ vi myid


6)復制配置文件zoo_sample.cfg為zoo.cfg并編輯

[hadoop@hadoop01 conf]$ cp zoo_sample.cfg zoo.cfg [hadoop@hadoop01 conf]$ vi zoo.cfg

修改其中dataDir路徑為zhdata并添加server

dataDir=/home/app/zookeeper/zkdata server.1=192.168.146.210:2888:3888 server.2=192.168.146.211:2888:3888 server.3=192.168.146.212:2888:3888

上述三個server地址即三臺虛擬機ip,第一個端口2888為QuorumPeerMain服務端口,3888端口為leader選舉端口。
7)將整個zookeeper文件加scp到其他兩臺虛擬機同樣位置,并分別修改myid文件內容為2,3

[hadoop@hadoop01 app]$scp -r zookeeper/ hadoop@hadoop02:/home/hadoop/app/hdfs/zookeeper/




8)因為三臺虛擬機的zookeeper都需要啟動,為了方便我們寫在bin目錄下一個啟動三臺虛擬機的shell腳本start-ZK.sh

[hadoop@hadoop01 bin]$ vi start-ZK.sh

#!/bin/bashecho "Starting zkServer ..."hostname="hadoop01 hadoop02 hadoop03" #虛擬機名寫自己的for name in $hostnamedossh $name "source /etc/profile; /home/app/zookeeper/zookeeper3.5/bin/zkServer.sh start" #目錄修改為自己的done


9)在bin目錄下執行start-ZK.sh腳本,啟動zookeeper集群

[hadoop@hadoop01 bin]$ sh start-ZK.sh


使用jps查看啟動狀態:

[hadoop@hadoop01 bin]$ jps


三臺機器均啟動成功,zookeeper安裝配置完畢。

5、安裝hadoop

1、解壓hadoop-2.7.7.tar.gz

1)將下載的hadoop-2.7.7.tar.gz上傳至/home/hadoop 目錄
2)解壓

[hadoop@hadoop01 ~]$ tar -zxvf hadoop-2.7.7.tar.gz

解壓完成:

3)使用 root 用戶配置 hadoop 環境變量(三臺機器都要配置)

[root@hadoop01 hadoop2.7]# vi /etc/profile


使配置生效

[root@hadoop01 hadoop]# source /etc/profile

4)配置hosts映射(三臺機器都要配置)

[root@hadoop01 hadoop2.7]# vi /etc/hosts

2、配置 hadoop 文件中相應的文件

這里使用的是hadoop用戶
需要配置的文件如下,core-site.xml、hadoop-env.sh、hdfs-site.xml、mapred-site.xml、yarn-site.xml 所有的文件配置均位于hadoop2.7.1/etc/hadoop下面,具體需要的配置如下:
1) 配置core-site.xml

[hadoop@hadoop01 hadoop]$ vi core-site.xml <configuration><property><name>fs.defaultFS</name><value>hdfs://hf</value> </property><property><name>hadoop.tmp.dir</name><value>/home/hadoop/app/hdfs/hadoop/hadoop-2.7.7/tmp</value></property><property><name>ha.zookeeper.quorum</name><value>hadoop01:2181,hadoop02:2181,hadoop03:2181</value></property></configuration>


在/home/hadoop/app/hdfs/hadoop/hadoop-2.7.7/ 目錄下新建文件夾tmp
注意:hadoop.tmp.dir是hadoop 文件系統依賴的配置文件。 默認是在 /tmp 目錄下的,而這個目錄下的文件,在Linux系統中,重啟之后,很多都會被清空。所以我們要手動指定這寫文件的保存目錄。
這個目錄路徑要么不存在,hadoop啟動的時候會自動幫我們創建;要么是一個空目錄,不然在啟動的時候會報錯。

2)配置hadoop-env.sh

[hadoop@hadoop01 hadoop]$ vi hadoop-env.sh

設置 JAVA_HOME 為自己在系統中安裝的 JDK 目錄

3)配置hdfs-site.xml

<?xml version="1.0" encoding="UTF-8"?> <?xml-stylesheet type="text/xsl" href="configuration.xsl"?> <!--Licensed under the Apache License, Version 2.0 (the "License");you may not use this file except in compliance with the License.You may obtain a copy of the License athttp://www.apache.org/licenses/LICENSE-2.0Unless required by applicable law or agreed to in writing, softwaredistributed under the License is distributed on an "AS IS" BASIS,WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.See the License for the specific language governing permissions andlimitations under the License. See accompanying LICENSE file. --><!-- Put site-specific property overrides in this file. --><configuration><property><name>dfs.namenode.name.dir</name><value>/home/hadoop/app/hdfs/hadoop/name</value></property><property><name>dfs.datanode.data.dir</name><value>/home/hadoop/app/hdfs/hadoop/data</value></property><property><name>dfs.replication</name><value>3</value></property><!--<property><name>dfs.namenode.secondary.http-address</name><value>hadoop02:50090</value></property> --><!--指定hdfs的虛擬服務名--><property><name>dfs.nameservices</name><value>hf</value></property><!--指定hdfs的虛擬服務名下的namenode--><property><name>dfs.ha.namenodes.hf</name><value>namenode01,namenode02</value></property> <!--指定namenode的內部通信地址--><property><name>dfs.namenode.rpc-address.hf.namenode1</name><value>hadoop01:9000</value></property><property><name>dfs.namenode.rpc-address.hf.namenode2</name><value>hadoop02:9000</value></property><!--指定namenode的web ui通信地址--> <property><name>dfs.namenode.http-address.hf.namenode1</name><value>hadoop01:50070</value></property><property><name>dfs.namenode.http-address.hf.namenode2</name><value>hadoop02:50070</value></property><!--指定journalnode數據共享目錄--><property><name>dfs.namenode.shared.edits.dir</name><value>qjournal://hadoop01:8485;hadoop02:8485;hadoop03:8485/hf</value></property><!--存放journalnode本地存放目錄--><property><name>dfs.journalnode.edits.dir</name><value>/home/hadoop/app/hdfs/hadoop/journaldata</value></property> <!--開啟namenode失敗是否自動切換--><property><name>dfs.ha.automatic-failover.enabled</name><value>true</value></property><!--指定namanode失敗進行自動切換的主類--><property><name>dfs.client.failover.proxy.provider.hf</name><value>org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider</value></property> <!--指定腦裂時,采用某種方式殺死期中一個--> <!--防止多個namenode,同active(腦裂)--><property><name>dfs.ha.fencing.methods</name><value>sshfence</value></property><property><name>dfs.ha.fencing.ssh.private-key-files</name><value>/home/hadoop/.ssh/id_rsa</value></property> <property><name>dfs.ha.fencing.ssh.connect-timeout</name><value>30000</value></property> </configuration>

4)配置mapred-site.xml

<configuration> <property><name>mapreduce.framework.name</name><value>yarn</value> </property><property><name>mapreduce.jobhistory.address</name><value>hadoop01:10020</value> </property><property><name>mapreduce.jobhistory.webapp.address</name><value>hadoop01:19888</value></property></configuration>

5)配置yarn-site.xml

<property><name>yarn.nodemanager.aux-services</name><value>mapreduce_shuffle</value> </property><property><name>yarn.resourcemanager.address</name><value>hadoop01:8032</value> </property><property><name>yarn.resourcemanager.scheduler.address</name><value>hadoop01:8030</value> </property><property><name>yarn.log-aggregation-enable</name><value>true</value> </property><property><name>yarn.resourcemanager.resource-tracker.address</name><value>hadoop01:8031</value></property><property><name>yarn.resourcemanager.admin.address</name><value>hadoop01:8033</value></property><property><name>yarn.resourcemanager.webapp.address</name><value>hadoop01:8088</value> </property><!-- 開啟RM高可用 --><property><name>yarn.resourcemanager.ha.enabled</name><value>true</value></property><!-- 指定RM的cluster id --> <property><name>yarn.resourcemanager.cluster-id</name><value>yrc</value> </property><!-- 指定RM的名字 --> <property><name>yarn.resourcemanager.ha.rm-ids</name><value>rm1,rm2</value> </property><!-- 分別指定RM的地址 --> <property><name>yarn.resourcemanager.hostname.rm1</name><value>hadoop01</value> </property><property><name>yarn.resourcemanager.hostname.rm2</name><value>hadoop02</value></property><!-- 分別指定RM的網絡通信地址 --><property><name>yarn.resourcemanager.webapp.address.rm1</name><value>hadoop01:8088</value> </property> <!-- 分別指定RM的網絡通信地址 --> <property><name>yarn.resourcemanager.webapp.address.rm2</name><value>hadoop02:8088</value> </property><!-- 指定zk集群地址 --><property><name>yarn.resourcemanager.zk-address</name><value>hadoop01:2181,hadoop02:2181,hadoop03:2181</value></property> </configuration>

6)配置/etc/hadoop目錄下的slaves,刪除默認的localhost,增加3個從節點

[hadoop@hadoop01 hadoop]$ vi slaves

3、將配置好的 hadoop 文件上傳給其它兩臺機器

[hadoop@hadoop01 hadoop]$ scp -r hadoop-2.7.7/ hadoop@hadoop03:/home/hadoop/app/hdfs/hadoop [hadoop@hadoop01 hadoop]$ scp -r hadoop-2.7.7/ hadoop@hadoop02:/home/hadoop/app/hdfs/hadoop

4、啟動 hadoop

1)啟動zk(三臺)
因為沒有配置zookeeper得環境變量,我把之前寫的zookeeper得啟動腳本放在hadoop啟動腳本目錄中,方便一起啟用:
需要修改腳本權限為 755

[hadoop@hadoop01 bin]$ cp start-ZK.sh /home/hadoop/app/hdfs/hadoop/hadoop-2.7.7/sbin/start-ZK.sh [hadoop@hadoop01 sbin]$ chmod 755 start-ZK.sh


啟動zookeeper

[hadoop@hadoop01 bin]$ start-ZK.sh


jps查看進程

[root@hadoop01 bin]# jps

2)啟動journalnode服務(三臺)

[hadoop@hadoop01 bin]$ hadoop-daemon.sh start journalnode

jps查看

3)挑選兩個namenode之中的一臺來格式化

[hadoop@hadoop01 hadoop]$ hdfs namenode -format

4)然后啟動namenode

[hadoop@hadoop01 hadoop]$ hadoop-daemon.sh start namenode

5)在另一臺namenode的機子上拉取元數據

[hadoop@hadoop02 hadoop]$ hdfs namenode -bootstrapStandby


6)格式化zkfc(在兩個namenode節點)

[hadoop@hadoop01 hadoop]$ hdfs zkfc -formatZK


7)啟動集群

[hadoop@hadoop01 hadoop]$ start-all.sh


jps查看

完成安裝!!!

注: 以后啟動只需要執行start-ZK.sh 和 start-all.sh 即可!!!

總結

以上是生活随笔為你收集整理的HA高可用完全分布式集群 HDFS搭建的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 91视频精品 | 一区二区免费在线播放 | 色偷偷资源网 | 天天干天天透 | 美女又爽又黄免费视频 | 成人免费视频国产免费麻豆 | 久久网址| 亚洲国产高清国产精品 | 精品一区二区免费 | 不卡视频国产 | 亚洲欧美一区二区三区四区五区 | 国产视频久久久 | 性综合网| 免费在线观看国产精品 | 黄页网址大全免费观看 | 国产黄色高清 | 欧美亚洲另类视频 | 中文字幕无线码一区 | 男同激情视频 | 黄页av| 宅男深夜视频 | 免费成人av网址 | 懂色av一区二区三区免费 | 日韩三级视频在线播放 | 国产真实生活伦对白 | 温柔女教师在线观看 | 日韩人妻一区二区三区蜜桃 | 波多野结衣一区二区三区在线观看 | 欧洲精品久久 | 91高清在线免费观看 | 成人涩涩 | 亚洲中文一区二区 | 超碰v| 久久久久久黄色片 | 欧美日本三级 | 久草免费福利视频 | 国产精品v欧美精品v日韩精品 | 四虎网址大全 | av黄在线 | 黄色一级片国产 | 久久精品国产亚洲7777 | 露脸丨91丨九色露脸 | 日韩av手机在线 | 色激情五月| 亚洲成人午夜在线 | 亚洲一区二区三区成人 | 日日干日日操 | 色老头综合 | 日批视频网站 | 中国毛片在线 | 日韩图片一区 | 小仙女av | 日韩精品在线一区二区三区 | 成人午夜视频免费看 | 人人干人人草 | 国产精品久久久久久久蜜臀 | 久久精品国产亚洲av麻豆 | 色就操| 韩国成人理伦片免费播放 | 息与子五十路翔田千里 | 无码精品人妻一区二区 | 亚洲精品乱码久久久久久日本蜜臀 | 亚洲国产精品99久久 | 久久久久久久久久久99 | 久久精品99久久久久久久久 | 亚洲第一综合网站 | 免费在线观看一区二区 | 狠狠插av | 精品一区久久久 | 狠狠操很很干 | 美女扒开腿让男人 | 国产精品一二三区 | 啪啪网站免费 | 性色av网站 | 成人区一区二区 | 国产91在线亚洲 | yes4444视频在线观看 | 森泽佳奈在线播放 | 久久爱成人 | 日本在线第一页 | 鲁啊鲁在线视频 | 人妻少妇久久中文字幕 | 精品久久久一区二区 | 成人网导航 | 精品二区视频 | 国产视频一区二区三 | 亚洲理伦| 四虎影视成人永久免费观看亚洲欧美 | 青春草在线视频免费观看 | 亚洲最大成人网站 | 成人精品视频网站 | www.成人国产 | 深夜免费视频 | 久久中文字幕av | 亚洲成人国产精品 | 超碰啪啪 | 亚洲精品免费看 | 性猛交xxxx乱大交3 | 91网址在线播放 |