• 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.nameservicesname>
    3. <value>lagouclustervalue>
    4. property>
    5. <property>
    6. <name>dfs.ha.namenodes.lagouclustername>
    7. <value>nn1,nn2value>
    8. property>
    9. <property>
    10. <name>dfs.namenode.rpc-address.lagoucluster.nn1name>
    11. <value>linux121:9000value>
    12. property>
    13. <property>
    14. <name>dfs.namenode.rpc-address.lagoucluster.nn2name>
    15. <value>linux122:9000value>
    16. property>
    17. <property>
    18. <name>dfs.namenode.http-address.lagoucluster.nn1name>
    19. <value>linux121:50070value>
    20. property>
    21. <property>
    22. <name>dfs.namenode.http-address.lagoucluster.nn2name>
    23. <value>linux122:50070value>
    24. property>
    25. <property>
    26. <name>dfs.namenode.shared.edits.dirname>
    27. <value>qjournal://linux121:8485;linux122:8485;linux123:8485/lagouvalue>
    28. property>
    29. <property>
    30. <name>dfs.client.failover.proxy.provider.lagouclustername>
    31. <value>org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvidervalue>
    32. property>
    33. <property>
    34. <name>dfs.ha.fencing.methodsname>
    35. <value>sshfencevalue>
    36. property>
    37. <property>
    38. <name>dfs.ha.fencing.ssh.private-key-filesname>
    39. <value>/root/.ssh/id_rsavalue>
    40. property>
    41. <property>
    42. <name>dfs.journalnode.edits.dirname>
    43. <value>/opt/journalnodevalue>
    44. property>
    45. <property>
    46. <name>dfs.ha.automatic-failover.enabledname>
    47. <value>truevalue>
    48. property>

    (6)配置core-site.xml

    1. <property>
    2. <name>fs.defaultFSname>
    3. <value>hdfs://lagouclustervalue>
    4. property>
    5. <property>
    6. <name>hadoop.tmp.dirname>
    7. <value>/opt/lagou/servers/ha/hadoop-2.9.2/data/tmpvalue>
    8. property>
    9. <property>
    10. <name>ha.zookeeper.quorumname>
    11. <value>linux121:2181,linux122:2181,linux123:2181value>
    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-servicesname>
    4. <value>mapreduce_shufflevalue>
    5. property>
    6. <property>
    7. <name>yarn.resourcemanager.ha.enabledname>
    8. <value>truevalue>
    9. property>
    10. <property>
    11. <name>yarn.resourcemanager.cluster-idname>
    12. <value>cluster-yarnvalue>
    13. property>
    14. <property>
    15. <name>yarn.resourcemanager.ha.rm-idsname>
    16. <value>rm1,rm2value>
    17. property>
    18. <property>
    19. <name>yarn.resourcemanager.hostname.rm1name>
    20. <value>linux122value>
    21. property>
    22. <property>
    23. <name>yarn.resourcemanager.hostname.rm2name>
    24. <value>linux123value>
    25. property>
    26. <property>
    27. <name>yarn.resourcemanager.zk-addressname>
    28. <value>linux121:2181,linux122:2181,linux123:2181value>
    29. property>
    30. <property>
    31. <name>yarn.resourcemanager.recovery.enabledname>
    32. <value>truevalue>
    33. property>
    34. <property>
    35. <name>yarn.resourcemanager.store.classname>
    36. <value>org.apache.hadoop.yarn.server.resourcemanager.recovery.ZKRMStateStorevalue>
    37. property>
    38. configuration>

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

    (5)启动hdfs

    sbin/start-yarn.sh

  • 相关阅读:
    数字孪生技术有没有真正的实用价值?
    aspose转pdf乱码问题
    什么是微前端
    计算机毕业设计(附源码)python智慧停车系统
    arcgis导出某个属性的栅格
    Linux - nm命令
    【Webpack】CSS 处理
    UniAccess Agent卸载
    Linux内存管理(二):页面查询过程简述
    数据收集和数据分析
  • 原文地址:https://blog.csdn.net/weixin_52851967/article/details/127579751