博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
hadoop高可用集群的搭建
阅读量:4161 次
发布时间:2019-05-26

本文共 4554 字,大约阅读时间需要 15 分钟。

文章目录

一.HDFS-HA 集群配置

1.1 配置 HDFS-HA 集群

  • 1.HDFS 高可用集群规划,请保证 Hadoop 完全分布式和 ZooKeeper 完全分布式环境已经安装完成。
hadoop110 hadoop111
NameNode NameNode
  • 2.在 hadoop110 配置 core-site.xml :
fs.defaultFS
hdfs://mycluster
hadoop.tmp.dir
/opt/install/hadoop/hdfsTmp
hadoop.proxyuser.root.hosts
*
hadoop.proxyuser.root.groups
*
  • 3.在 hadoop110 配置 hdfs-site.xml
dfs.replication
3
dfs.namenode.secondary.http-address
hadoop111:50090
dfs.nameservices
mycluster
dfs.ha.namenodes.mycluster
nn1,nn2
dfs.namenode.rpc-address.mycluster.nn1
hadoop110:9000
dfs.namenode.rpc-address.mycluster.nn2
hadoop111:9000
dfs.namenode.http-address.mycluster.nn1
hadoop110:50070
dfs.namenode.http-address.mycluster.nn2
hadoop111:50070
dfs.namenode.shared.edits.dir
qjournal://hadoop110:8485;hadoop111:8485;hadoop112:8485/mycluster
dfs.ha.fencing.methods
sshfence
dfs.ha.fencing.ssh.private-key-files
/root/.ssh/id_rsa
dfs.journalnode.edits.dir
/opt/install/hadoop/data/jn
dfs.permissions.enable
false
dfs.client.failover.proxy.provider.mycluster
org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider

注意修改完配置文件将这俩文件用scp命令全部发送到其他机器上

1.2 启动 HDFS-HA 集群

  • 1.在各个 JournalNode 节点上,输入以下命令启动 journalnode 服务: hadoop-daemon.sh start journalnode
  • 2.在[nn1]上,对其进行格式化,并启动,格式化只在第一次启动时需要以后不需要: hdfs namenode -format , hadoop-daemon.sh start namenode
  • 3.在[nn2]上,同步 nn1 的元数据信息,只在第一次启动时需要,以后不需要: hdfs namenode -bootstrapStandby
  • 4.启动[nn2]: hadoop-daemon.sh start namenode
  • 5.查看 web 页面显示,如下:
    在这里插入图片描述
    在这里插入图片描述
  • 6.在[nn1]上,启动所有 datanode : hadoop-daemons.sh start datanode
  • 7.将[nn1]切换为 Active : hdfs haadmin -transitionToActive nn1
  • 8.查看是否 Active :hdfs haadmin -getServiceState nn1,效果如下:
    在这里插入图片描述
  • 9.刷新hadoop110网页,效果如下:
    在这里插入图片描述

1.3 配置 HDFS-HA 自动故障转移

  • 1.在 hdfs-site.xml 中增加
dfs.ha.automatic-failover.enabled
true
  • 2.在 core-site.xml 文件中增加
ha.zookeeper.quorum
hadoop110:2181,hadoop111:2181,hadoop112:2181
  • 3.启动

  • 1)关闭所有 HDFS 服务: stop-dfs.sh

  • 2)启动 Zookeeper 集群,即在所有机器输入如下命令: zkServer.sh start

  • 3)初始化 HA 在 Zookeeper 中状态: hdfs zkfc -formatZK

  • 4)启动 HDFS 服务: start-dfs.sh

  • 5)在各个 NameNode 节点上启动 DFSZK Failover Controller,先在哪台机器启动,哪个机器的NameNode就是Active NameNode :

    hadoop-daemon.sh start zkfc,启动后如下:
    在这里插入图片描述
    在这里插入图片描述

  • 4.验证

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

  • 2)将 Active NameNode 机器断开网络: service network stop

二、YARN-HA 配置

2.1 配置 YARN-HA 集群

  • 1.规划集群
hadoop110 hadoop111
ResourceManager ResourceManager
  • 2.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
hadoop110
yarn.resourcemanager.hostname.rm2
hadoop111
yarn.resourcemanager.zk-address
hadoop110:2181,hadoop111:2181,hadoop112:2181
yarn.resourcemanager.recovery.enabled
true
yarn.resourcemanager.store.class
org.apache.hadoop.yarn.server.resourcemanager.recovery.ZKRMStateStore
yarn.log-aggregation-enable
true
yarn.log-aggregation.retain-seconds
604800

配置完用scp命令将文件发送到其他机器

  • 3.启动 yarn
  • 1)在 hadoop110 中执行:start-yarn.sh
  • 2)在 hadoop111 中执行:yarn-daemon.sh start resourcemanager
  • 3)查看服务状态: yarn rmadmin -getServiceState rm1,如下:
    在这里插入图片描述

注:需要下载psmisc依赖包,否则无法完成自动切换节点

yum install -y psmisc

转载地址:http://ccjxi.baihongyu.com/

你可能感兴趣的文章
无线网络加密方式对比 .
查看>>
linux中cat命令使用详解
查看>>
Static 作用详述
查看>>
透析ICMP协议(三): 牛刀初试之一 应用篇ping(ICMP.dll)
查看>>
透析ICMP协议(四): 牛刀初试之二 应用篇ping(RAW Socket)
查看>>
再次写给我们这些浮躁的程序员
查看>>
Linux下重要日志文件及查看方式(1)
查看>>
Linux下重要日志文件及查看方式(2)
查看>>
Ubuntu系统root用户密码找回方法
查看>>
Linux驱动程序中比较重要的宏
查看>>
芯片驱动问题定位思路总结之一单板重启的问题
查看>>
S3C2440看门狗定时器
查看>>
LDD3源码分析之llseek分析
查看>>
linux read 用法
查看>>
LDD3源码分析之llseek分析(二)
查看>>
printk及控制台的日志级别
查看>>
Linux驱动加载实例
查看>>
详解数据库设计中的三大范式理论
查看>>
JDBCUtils工具类
查看>>
Linux基本命令(1)
查看>>