当前位置: 首页 / 技术分享 / 正文
大数据高可用集群部署(一)启动集群

2022-11-17

集群 搭建   

  启动集群

  现在,集群已经搭建成为了高可用的集群了。在启动集群之前,我们需要先明确一件事情: 集群现在的状态有两种:

  这个集群我之前使用过,NameNode已经存储有数据了(fsimage和edits已生成)

  这个集群是我新搭建的,我直接搭建集群的时候就搭建的高可用的集群,之前从来没有启动过

  如果你是第一种情况,请跳转到 普通集群转HA

  如果你是第二种情况,请跳转到 直接搭建HA

  启动: 普通集群转HA

# 1. 启动集群的JournalNode服务。
# 注意事项: 如果之前集群还在运行,需要先将其停止!使用命令 stop-dfs.sh
[root@qianfeng01 ~]# hdfs --daemon start journalnode
[root@qianfeng02 ~]# hdfs --daemon start journalnode
[root@qianfeng03 ~]# hdfs --daemon start journalnode

# 2. 启动以前节点上的namenode进程
[root@qianfeng01 ~]# hdfs --daemon start namenode

# 3. 在新的namenode节点上拉取镜像文件
[root@qianfeng02 ~]# hdfs namenode -bootstrapStandby

# 4. 同步日志到journalnode集群上,再启动集群
# 先关namenode
[root@qianfeng01 ~]# hdfs --daemon stop namenode
# 再同步日志
[root@qianfeng01 ~]# hdfs namenode -initializeSharedEdits

# 5. 格式化zkfc
# 5.1. 前提QuorumPeerMain服务必须处于开启状态,客户端zkfc才能格式化成功
[root@qianfeng01 ~]# zkServer.sh start
[root@qianfeng02 ~]# zkServer.sh start
[root@qianfeng03 ~]# zkServer.sh start
# 5.2. 选择其中一个namenode节点进行格式化zkfc
[root@qianfeng01 ~]# hdfs zkfc -formatZK

# 6. 你就可以快乐的开启HA集群进行测试了
[root@qianfeng01 ~]# start-all.sh

# 查看NameNode的状态
[root@qianfeng01 ~]# hdfs haadmin -getServiceState nn1

# 注意: 以后开HA集群时,要先开zookeeper服务,再开HDFS。

启动: 直接搭建HA

 

# 1. 启动三个节点上的journalnode服务
[root@qianfeng01 ~]# hdfs --daemon start journalnode
[root@qianfeng02 ~]# hdfs --daemon start journalnode
[root@qianfeng03 ~]# hdfs --daemon start journalnode

# 2. 格式化namenode
# - 先删除所有节点的${hadoop.tmp.dir}/tmp/的数据(可选,这一步表示弃用fsimage.)
# - 选择其中一个namenode进行格式化
[root@qianfeng01 ~]# hdfs namenode -format
# - 并启动namenode进程
[root@qianfeng01 ~]# hdfs --daemon start namenode

# 3. 在另一台namenode上拉取已格式化的那台机器的镜像文件(数据的一致性)
[root@qianfeng02 ~]# hdfs namenode -bootstrapStandby

# 4. 然后关闭已经启动的namenode
[root@qianfeng01 ~]# hdfs --daemon stop namenode

# 5. 格式化zkfc
# 5.1. 前提QuorumPeerMain服务必须处于开启状态,客户端zkfc才能格式化成功
[root@qianfeng01 ~]# zkServer.sh start
[root@qianfeng02 ~]# zkServer.sh start
[root@qianfeng03 ~]# zkServer.sh start
# 5.2. 选择其中一个namenode节点进行格式化zkfc
[root@qianfeng01 ~]# hdfs zkfc -formatZK

# 6. 你就可以快乐的开启HA集群进行测试了
[root@qianfeng01 ~]# start-all.sh

# 注意:以后开HA集群时,要先开zookeeper服务,再开HDFS。

  自动容灾测试

  由于CentOS7的minimal版本缺少容灾切换ActiveNameNode节点时所需要的组件,因此需要手动安装一下:

  yum install -y psmisc

  1. 首先查看当前活跃的Active节点是谁

  2. Kill掉活跃节点上的NameNode进程,模拟宕机

  3. 观察另外一个节点,是否已经变成Active的状态

好程序员公众号

  • · 剖析行业发展趋势
  • · 汇聚企业项目源码

好程序员开班动态

More+
  • HTML5大前端 <高端班>

    开班时间:2021-04-12(深圳)

    开班盛况

    开班时间:2021-05-17(北京)

    开班盛况
  • 大数据+人工智能 <高端班>

    开班时间:2021-03-22(杭州)

    开班盛况

    开班时间:2021-04-26(北京)

    开班盛况
  • JavaEE分布式开发 <高端班>

    开班时间:2021-05-10(北京)

    开班盛况

    开班时间:2021-02-22(北京)

    开班盛况
  • Python人工智能+数据分析 <高端班>

    开班时间:2021-07-12(北京)

    预约报名

    开班时间:2020-09-21(上海)

    开班盛况
  • 云计算开发 <高端班>

    开班时间:2021-07-12(北京)

    预约报名

    开班时间:2019-07-22(北京)

    开班盛况
在线咨询
试听
入学教程
立即报名

Copyright 2011-2020 北京千锋互联科技有限公司 .All Right 京ICP备12003911号-5 京公网安备 11010802035720号