当前位置:   article > 正文

hadoop高可用集群配置

hadoop高可用集群

1、HDFS-HA集群配置 

Apache Hadoop 3.3.4 – HDFS High Availability Using the Quorum Journal Manager

1.1、环境准备

  1. 修改IP
  2. 修改主机名及主机名和IP地址的映射
  3. 关闭防火墙
  4. ssh免密登录
  5. 安装JDK,配置环境变量等

1.2、集群规划

linux121linux122linux123
NameNodeNameNode
JournalNodeJournalNodeJournalNode
DataNodeDataNodeDataNode
ZKZKZK
ResourceManager
NodeManagerNodeManagerNodeManager

1.3、NodeManager

启动zookeeper集群

zk.sh start

查看状态

zk.sh status

注意:这里的zk.sh是我写的群起脚本命令。

1.4、配置HDFS-HA集群

(1)停止原先HDFS集群

stop-dfs.sh

(2)在所有节点,/opt/lagou/servers目录下创建一个ha文件夹

mkdir /opt/lagou/servers/ha

(3)将/opt/lagou/servers/目录下的 hadoop-2.9.2拷贝到ha目录下

cp -r hadoop-2.9.2 ha

(4)删除原集群data目录

rm -rf /opt/lagou/servers/ha/hadoop-2.9.2/data

(5)配置hdfs-site.xml(后续配置都要清空原先的配置)

  1. <property>
  2. <name>dfs.nameservices</name>
  3. <value>lagoucluster</value>
  4. </property>
  5. <property>
  6. <name>dfs.ha.namenodes.lagoucluster</name>
  7. <value>nn1,nn2</value>
  8. </property>
  9. <property>
  10. <name>dfs.namenode.rpc-address.lagoucluster.nn1</name>
  11. <value>linux121:9000</value>
  12. </property>
  13. <property>
  14. <name>dfs.namenode.rpc-address.lagoucluster.nn2</name>
  15. <value>linux122:9000</value>
  16. </property>
  17. <property>
  18. <name>dfs.namenode.http-address.lagoucluster.nn1</name>
  19. <value>linux121:50070</value>
  20. </property>
  21. <property>
  22. <name>dfs.namenode.http-address.lagoucluster.nn2</name>
  23. <value>linux122:50070</value>
  24. </property>
  25. <property>
  26. <name>dfs.namenode.shared.edits.dir</name>
  27. <value>qjournal://linux121:8485;linux122:8485;linux123:8485/lagou</value>
  28. </property>
  29. <property>
  30. <name>dfs.client.failover.proxy.provider.lagoucluster</name>
  31. <value>org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider</value>
  32. </property>
  33. <property>
  34. <name>dfs.ha.fencing.methods</name>
  35. <value>sshfence</value>
  36. </property>
  37. <property>
  38. <name>dfs.ha.fencing.ssh.private-key-files</name>
  39. <value>/root/.ssh/id_rsa</value>
  40. </property>
  41. <property>
  42. <name>dfs.journalnode.edits.dir</name>
  43. <value>/opt/journalnode</value>
  44. </property>
  45. <property>
  46. <name>dfs.ha.automatic-failover.enabled</name>
  47. <value>true</value>
  48. </property>

(6)配置core-site.xml

  1. <property>
  2. <name>fs.defaultFS</name>
  3. <value>hdfs://lagoucluster</value>
  4. </property>
  5. <property>
  6. <name>hadoop.tmp.dir</name>
  7. <value>/opt/lagou/servers/ha/hadoop-2.9.2/data/tmp</value>
  8. </property>
  9. <property>
  10. <name>ha.zookeeper.quorum</name>
  11. <value>linux121:2181,linux122:2181,linux123:2181</value>
  12. </property>

(7)拷贝配置好的hadoop环境到其他节点

1.5、启动HDFS-HA集群

(1)在各个JournalNode节点上,输入以下命令启动journalnode服务(去往HA安装目录,不要使用环境变量中命令)

/opt/lagou/servers/ha/hadoop-2.9.2/sbin/hadoop-daemon.sh start journalnode

(2)在[nn1]上,对其进行格式化,并启动

/opt/lagou/servers/ha/hadoop-2.9.2/bin/hdfs namenode -format

/opt/lagou/servers/ha/hadoop-2.9.2/sbin/hadoop-daemon.sh start namenode

(3)在[nn2]上,同步nn1的元数据信息

/opt/lagou/servers/ha/hadoop-2.9.2/bin/hdfs namenode -bootstrapStandby

(4)在[nn1]上初始化zkfc

/opt/lagou/servers/ha/hadoop-2.9.2/bin/hdfs zkfc -formatZK

(5)在[nn1]上,启动集群

/opt/lagou/servers/ha/hadoop-2.9.2/sbin/start-dfs.sh

(6)验证

  • 将Active NameNode进程kill
  • kill -9 namenode的进程id

2、YARN-HA配置

2.1、YARN-HA工作机制

官方文档

Apache Hadoop 3.3.4 – ResourceManager High Availability

YARN-HA工作机制

2.2、配置YARN-HA集群

(1)配置YARN-HA集群

  • 修改IP
  • 修改主机名及主机名和IP地址的映射
  • 关闭防火墙
  • ssh免密登录
  • 安装JDK,配置环境变量等
  • 配置Zookeeper集群

(2)具体配置

(3)yarn-site.xml(清空原有内容)

  1. <configuration>
  2. <property>
  3. <name>yarn.nodemanager.aux-services</name>
  4. <value>mapreduce_shuffle</value>
  5. </property>
  6. <!--启⽤resourcemanager ha-->
  7. <property>
  8. <name>yarn.resourcemanager.ha.enabled</name>
  9. <value>true</value>
  10. </property>
  11. <!--声明两台resourcemanager的地址-->
  12. <property>
  13. <name>yarn.resourcemanager.cluster-id</name>
  14. <value>cluster-yarn</value>
  15. </property>
  16. <property>
  17. <name>yarn.resourcemanager.ha.rm-ids</name>
  18. <value>rm1,rm2</value>
  19. </property>
  20. <property>
  21. <name>yarn.resourcemanager.hostname.rm1</name>
  22. <value>linux122</value>
  23. </property>
  24. <property>
  25. <name>yarn.resourcemanager.hostname.rm2</name>
  26. <value>linux123</value>
  27. </property>
  28. <!--指定zookeeper集群的地址-->
  29. <property>
  30. <name>yarn.resourcemanager.zk-address</name>
  31. <value>linux121:2181,linux122:2181,linux123:2181</value>
  32. </property>
  33. <!--启⽤⾃动恢复-->
  34. <property>
  35. <name>yarn.resourcemanager.recovery.enabled</name>
  36. <value>true</value>
  37. </property>
  38. <!--指定resourcemanager的状态信息存储在zookeeper集群-->
  39. <property>
  40. <name>yarn.resourcemanager.store.class</name>
  41. <value>org.apache.hadoop.yarn.server.resourcemanager.recovery.ZKRMStateStore</value>
  42. </property>
  43. </configuration>

(4)同步更新其他节点的配置信息

(5)启动hdfs

sbin/start-yarn.sh

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Monodyee/article/detail/508413
推荐阅读
相关标签
  

闽ICP备14008679号