大数据||zookeeper来实现HDFS自动故障转移

本文涉及的产品
云原生大数据计算服务MaxCompute,500CU*H 100GB 3个月
云原生网关 MSE Higress,422元/月
服务治理 MSE Sentinel/OpenSergo,Agent数量 不受限
简介: namenode启动都是standby。利用zookeeper来选举一个为activeZooKeeper客户端ZKFC: ZKFailoverController给namenode添加失效备缓监控器(ZKFC: ZKFailoverCon...

namenode启动都是standby。

  • 利用zookeeper来选举一个为active

ZooKeeper客户端ZKFC: ZKFailoverController

NN HA 自动故障转移原理图

  • Zookeeper FC对Namenode进行生命状态监控


    原理图
  • zookeeper集群

通过配置文件实现故障转移

  • 启用故障转移(hdfs-site.xml)
    <property>
    <name>dfs.ha.automatic-failover.enabled</name>
    <value>true</value>
    </property>
  • 故障转移依赖zookeeper集群
    <property>
    <name>ha.zookeeper.quorum</name>
    <value>hadoop-senior.beifeng.com:2181,hadoop-senior02.beifeng.com:2181,hadoop-senior03.beifeng.com:2181</value>
    </property>

自动故障转移启动

  • 关闭所有HDFS 服务 sbin/stop-dfs.sh(131节点)
    停止顺序:namenode->datanode->journalnode
  • 向子节点(132/133)同步core-site.xml和hdfs-site.xml

命令:scp -r etc/hadoop/core-site.xml etc/hadoop/hdfs-site.xml root@hadoop-senior02.beifeng.com:/opt/app/hadoop-2.5.0/etc/hadoop/

  • 启动Zookeeper 集群 bin/zkServer.sh start (131,132,133)


  • 初始化 HA 在Zookeeper中状态 bin/hdfs zkfc -formatZK
    对ha在zookeeper中的状态进行初始化
    在zookeeper服务器上创建一个目录(hadoop-ha)
    通过zookeeper客户端可以看一下这个过程。
    查看:bin/zkCli.sh -server 192.168.57.131:2181
    注意添加ip要不然就会报错。



    命令执行前服务器目录结构



    命令执行后
    zookeeper

    client
  • 启动HDFS服务 sbin/start-dfs.sh
    启动顺序 namenode-->datanode-->journalnode-->zkfc


    131为active

    干掉131看一下是否可以自动切换到132的namenode
    131namenode服务器

    132namenode编程active

    zookeeper集群死掉后不影响hdfs文件系统,只是不能够故障自动转移了。

  • 在各个NameNode节点上启动DFSZK Failover Controller,先在那台机器启动,
    那个机器的NameNode就是Active NameNode
    sbin/hadoop-daemon.sh start zkfc

相关实践学习
基于MSE实现微服务的全链路灰度
通过本场景的实验操作,您将了解并实现在线业务的微服务全链路灰度能力。
目录
相关文章
|
7天前
|
大数据
【赵渝强老师】大数据主从架构的单点故障
大数据体系架构中,核心组件采用主从架构,存在单点故障问题。为提高系统可用性,需实现高可用(HA)架构,通常借助ZooKeeper来实现。ZooKeeper提供配置维护、分布式同步等功能,确保集群稳定运行。下图展示了基于ZooKeeper的HDFS HA架构。
|
1月前
|
分布式计算 Kubernetes Hadoop
大数据-82 Spark 集群模式启动、集群架构、集群管理器 Spark的HelloWorld + Hadoop + HDFS
大数据-82 Spark 集群模式启动、集群架构、集群管理器 Spark的HelloWorld + Hadoop + HDFS
148 6
|
1月前
|
消息中间件 分布式计算 关系型数据库
大数据-140 - ClickHouse 集群 表引擎详解5 - MergeTree CollapsingMergeTree 与其他数据源 HDFS MySQL
大数据-140 - ClickHouse 集群 表引擎详解5 - MergeTree CollapsingMergeTree 与其他数据源 HDFS MySQL
44 0
|
1月前
|
消息中间件 监控 Ubuntu
大数据-54 Kafka 安装配置 环境变量配置 启动服务 Ubuntu配置 ZooKeeper
大数据-54 Kafka 安装配置 环境变量配置 启动服务 Ubuntu配置 ZooKeeper
72 3
大数据-54 Kafka 安装配置 环境变量配置 启动服务 Ubuntu配置 ZooKeeper
|
1月前
|
存储 分布式计算 资源调度
大数据-04-Hadoop集群 集群群起 NameNode/DataNode启动 3台公网云 ResourceManager Yarn HDFS 集群启动 UI可视化查看 YarnUI(一)
大数据-04-Hadoop集群 集群群起 NameNode/DataNode启动 3台公网云 ResourceManager Yarn HDFS 集群启动 UI可视化查看 YarnUI(一)
74 5
|
1月前
|
资源调度 数据可视化 大数据
大数据-04-Hadoop集群 集群群起 NameNode/DataNode启动 3台公网云 ResourceManager Yarn HDFS 集群启动 UI可视化查看 YarnUI(二)
大数据-04-Hadoop集群 集群群起 NameNode/DataNode启动 3台公网云 ResourceManager Yarn HDFS 集群启动 UI可视化查看 YarnUI(二)
35 4
|
1月前
|
XML 分布式计算 资源调度
大数据-02-Hadoop集群 XML配置 超详细 core-site.xml hdfs-site.xml 3节点云服务器 2C4G HDFS Yarn MapRedece(一)
大数据-02-Hadoop集群 XML配置 超详细 core-site.xml hdfs-site.xml 3节点云服务器 2C4G HDFS Yarn MapRedece(一)
149 5
|
1月前
|
XML 资源调度 网络协议
大数据-02-Hadoop集群 XML配置 超详细 core-site.xml hdfs-site.xml 3节点云服务器 2C4G HDFS Yarn MapRedece(二)
大数据-02-Hadoop集群 XML配置 超详细 core-site.xml hdfs-site.xml 3节点云服务器 2C4G HDFS Yarn MapRedece(二)
85 4
|
1月前
|
分布式计算 资源调度 Hadoop
大数据-01-基础环境搭建 超详细 Hadoop Java 环境变量 3节点云服务器 2C4G XML 集群配置 HDFS Yarn MapRedece
大数据-01-基础环境搭建 超详细 Hadoop Java 环境变量 3节点云服务器 2C4G XML 集群配置 HDFS Yarn MapRedece
76 4
|
5月前
|
Java 大数据 API
【大数据】HDFS、HBase操作教程(含指令和JAVA API)
【大数据】HDFS、HBase操作教程(含指令和JAVA API)
147 0
【大数据】HDFS、HBase操作教程(含指令和JAVA API)