步骤一;
干净的集群,全新的hdfs
在第一台主机上配置配置文件
core-site.xml:
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://bcqm1711</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/home/hadoop/hadoop-2.6.1/hadoopdata/tmp</value>
</property>
<property>
<name>io.file.buffer.size</name>
<value>4096</value>
</property>
</configuration>

hdfs-site.xml:
<configuration>
<!-- 指定hdfs的nameservice为beicai,就是那个代理程序,询问zk集群哪个namenode还活着 -->
<property>
<name>dfs.nameservices</name>
<value>bcqm1711</value>
</property>

<!—指定hdfs的两个NameNode都是什么名字(等会儿下面会配置他们所对应的机器的信息)-->
<property>
<name>dfs.ha.namenodes.bcqm1711</name>
<value>nn1,nn2</value>
</property>

<!—NameNode1的rpc通讯地址-->
<property>
<name>dfs.namenode.rpc-address.bcqm1711.nn1</name>
<value>hdp-qm-01:8020</value>
</property>

<!—NameNode2的rpc通讯地址-->
<property>
<name>dfs.namenode.rpc-address.bcqm1711.nn2</name>
<value>hdp-qm-02:8020</value>
</property>

<!—NameNode1的web界面地址-->
<property>
<name>dfs.namenode.http-address.bcqm1711.nn1</name>
<value>hdp-qm-01:50070</value>
</property>
<!—NameNode2的web界面地址-->
<property>
<name>dfs.namenode.http-address.bcqm1711.nn2</name>
<value>hdp-qm-02:50070</value>
</property>

######如果给一个有数据的HDFS添加HA,此处无需更改,保持原有地址即可#####
<!---namenode存放元数据信息的Linux本地地址,这个目录不需要我们自己创建->
<property>
<name>dfs.namenode.name.dir</name>
<value>file:///home/hadoop/hadoop-2.6.1/hadoopdata/dfs/name</value>
</property>

<!—datanode存放用户提交的大文件的本地Linux地址,这个目录不需要我们自己创建-->
<property>
<name>dfs.datanode.data.dir</name>
<value>file:///home/hadoop/hadoop-2.6.1/hadoopdata/dfs/data</value>
</property>

<!—QJM存放共享数据的方式-->
<!-- 指定NameNode的元数据在JournalNode上的存放位置 -->
<property>
<name>dfs.namenode.shared.edits.dir</name>
<value>
qjournal://hdp-qm-01:8485;hdp-qm-02:8485;hdp-qm-03:8485/bcqm1711</value>
</property>

<!—单个QJM进程(角色)存放本地edits文件的Linux地址-->
<property>
<name>dfs.journalnode.edits.dir</name>
<value>/home/hadoop/hadoop-2.6.1/hadoopdata/journal</value>
</property>

<!—开启hdfs的namenode死亡后自动切换-->
<property>
<name>dfs.ha.automatic-failover.enabled</name>
<value>true</value>
</property>

<!-- 指定zookeeper集群地址,辅助两个namenode进行失败切换 -->
<property>
<name>ha.zookeeper.quorum</name>
<value>hdp-qm-01:2181,hdp-qm-02:2181,hdp-qm-03:2181</value>
</property>

<!—zkfc程序的主类-->
<property>
<name>dfs.client.failover.proxy.provider.bcqm1711</name>
<value>org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider</value>
</property>
<!—防止多个namenode同时active(脑裂)的方式-->
<property>
<name>dfs.ha.fencing.methods</name>
<value>sshfence</value>
</property>

<!—指定本机的私钥所在目录,
注意:如果是普通用户hadoop则修改为root为”/home/hadoop/.ssh/id_rsa”-->
<property>
<name>dfs.ha.fencing.ssh.private-key-files</name>
<value>/home/hadoop/.ssh/id_rsa</value>
</property>

<!—指定ssh通讯超时时间-->
<property>
<name>dfs.ha.fencing.ssh.connect-timeout</name>
<value>30000</value>
</property>
</configuration>

yarn-site.xml:
<configuration>
<!-- Site specific YARN configuration properties -->
<property>
<name>yarn.resourcemanager.ha.enabled</name>
<value>true</value>
</property>
<property>
<name>yarn.resourcemanager.ha.automatic-failover.enabled</name>
<value>true</value>
</property>
<property>
<name>yarn.resourcemanager.cluster-id</name>
<value>bcqm1711yarn</value>
</property>
<property>
<name>yarn.resourcemanager.ha.rm-ids</name>
<value>rm1,rm2</value>
</property>
<property>
<name>yarn.resourcemanager.hostname.rm1</name>
<value>hdp-qm-01</value>
</property>
<property>
<name>yarn.resourcemanager.hostname.rm2</name>
<value>hdp-qm-02</value>
</property>
<property>
<name>yarn.resourcemanager.zk-address</name>
<value>hdp-qm-01:2181,hdp-qm-02:2181,hdp-qm-03:2181</value>
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>

<!--RM1-->
<property>
<name>yarn.resourcemanager.address</name>
<value>hdp-qm-01:8032</value>
</property>
<property>
<name>yarn.resourcemanager.scheduler.address</name>
<value>hdp-qm-01:8030</value>
</property>
<property>
<name>yarn.resourcemanager.resource-tracker.address</name>
<value>hdp-qm-01:8031</value>
</property>
<property>
<name>yarn.resourcemanager.admin.address</name>
<value>hdp-qm-01:8033</value>
</property>
<property>
<name>yarn.resourcemanager.webapp.address</name>
<value>hdp-qm-01:8088</value>
</property>

<!--RM2-->
<property>
<name>yarn.resourcemanager.address</name>
<value>hdp-qm-02:8032</value>
</property>
<property>
<name>yarn.resourcemanager.scheduler.address</name>
<value>hdp-qm-02:8030</value>
</property>
<property>
<name>yarn.resourcemanager.resource-tracker.address</name>
<value>hdp-qm-02:8031</value>
</property>
<property>
<name>yarn.resourcemanager.admin.address</name>
<value>hdp-qm-02:8033</value>
</property>
<property>
<name>yarn.resourcemanager.webapp.address</name>
<value>hdp-qm-02:8088</value>
</property>
<property>
<name>yarn.resourcemanager.webapp.address</name>
<value>hdp-qm-02:8088</value>
</property>
</configuration>

步骤二;
在配置hdfs-site.xml配置文件之前,要先删掉之前的记录
删掉hadoopdata目录下的所有文件

删掉/home/hadoop/.ssh/*下的内容
rm -rf /home/hadoop/.ssh/*
步骤三:
配置免密
在/home/hadoop/hadoop-2.6.1/etc/hadoop/目录下
cd /home/hadoop/hadoop-2.6.1/etc/hadoop/
$ ssh-keygen -t rsa 一直回车

在根目录下
发送免密
ssh-copy-id hadoop@hdp-qm-01
ssh-copy-id hadoop@hdp-qm-02
ssh-copy-id hadoop@hdp-qm-03

步骤四:
发送配置好的hadoop文件夹到其他节点
scp -r hadoop-2.6.1 hadoop@hdp-qm-02:/home/hadoop/
scp -r hadoop-2.6.1 hadoop@hdp-qm-03:/home/hadoop/

步骤五;
启动zk集群
sh zkServer.sh start

查看各节点启动状态

步骤六:
启动journanode,在各个节点都启动
# hadoop-daemon.sh start journalnode
运行jps命令检验,多了journalNode进程

步骤七;
在第一台格式化
格式化hdfs(在master上执行命令: 格式化HA必须先启动zk服务、journalnode)
# hadoop namenode -format

步骤八:
在hadoopdata目录下
开启namenode
$ hadoop-daemon.sh start namenode

步骤九;
同步元数据信息,在第二台进行
$ hdfs namenode -bootstrapStandby

步骤十:
在hadoopdata目录下,
$ hdfs zkfc -formatZK

步骤十一:
在hadoopdata目录下,开启集群
$ start-all.sh

步骤十二:
开启第二台的namenode
yarn-daemon.sh start resourcemanager

步骤十三:
jps验证是否功能全部开启
网页登录hdp-qm-01:50070
网页登录hdp-qm-02:50070

网页登录hdp-qm-01:8088
网页登录hdp-qm-02:8088

查看到第一台处于active,第二台处于standby
表示配置成功

对于三节点集群zookeeper配置步骤:的更多相关文章

  1. PostgreSQL 三节点集群故障模拟及恢复

    PostgreSQL 三节点集群故障模拟及恢复 (postgreSQL9.5.1) 正常状态: 10.2.208.10:node1:master 10.2.208.11:node2:standby1同 ...

  2. k8s(docker-desktop)简单搭建zookeeper三节点集群

    前提 已经安装了docker-desktop,并且其中的kubernetes启动运行的.或者安装了k8s环境就行 可以正常下载dockerhub的镜像,这里采用了dockerhub官方制作的镜像 启动 ...

  3. zookeeper三节点集群安装记录

    以下是3个节点的zk安装记录. 下载 下载地址: http://mirrors.shu.edu.cn/apache/zookeeper/ cd /data/opt/zk wget http://mir ...

  4. CentOS7.6搭建Hadoop2.7.2运行环境-三节点集群模式

    一 环境准备 1.    准备机器 2.    修改静态IP 3.    修改主机名 4.    关闭防火墙 5.    创建普通用户hadoop 添加hadoop用户 [root@hadoop102 ...

  5. 部署hadoop2.7.2 集群 基于zookeeper配置HDFS HA+Federation

    转自:http://www.2cto.com/os/201605/510489.html hadoop1的核心组成是两部分,即HDFS和MapReduce.在hadoop2中变为HDFS和Yarn.新 ...

  6. HBase的多节点集群详细启动步骤(3或5节点)(分为Zookeeper自带还是外装)

    HBase的多节点集群详细启动步骤(3或5节点)分为: 1.HBASE_MANAGES_ZK的默认值是false(zookeeper外装)(推荐) 2.HBASE_MANAGES_ZK的默认值是tru ...

  7. hadoop+yarn+hbase+storm+kafka+spark+zookeeper)高可用集群详细配置

    配置 hadoop+yarn+hbase+storm+kafka+spark+zookeeper 高可用集群,同时安装相关组建:JDK,MySQL,Hive,Flume 文章目录 环境介绍 节点介绍 ...

  8. Kafka的3节点集群详细启动步骤(Zookeeper是外装)

    首先,声明,kafka集群是搭建在hadoop1.hadoop2和hadoop3机器上. kafka_2.10-0.8.1.1.tgz的1或3节点集群的下载.安装和配置(图文详细教程)绝对干货 如下分 ...

  9. MySQL数据库集群进行正确配置步骤

    MySQL数据库集群进行正确配置步骤 2010-06-09 10:47 arrowcat 博客园 字号:T | T 我们今天是要和大家一起分享的是对MySQL数据库集群进行正确配置,我前两天在相关网站 ...

  10. [推荐]Hadoop+HBase+Zookeeper集群的配置

    [推荐]Hadoop+HBase+Zookeeper集群的配置 Hadoop+HBase+Zookeeper集群的配置  http://wenku.baidu.com/view/991258e881c ...

随机推荐

  1. 二:飞凌嵌入式FCU1201

    场景一 充电基础设施 场景二 现代机械加工对复杂化.精密化.大型化以及自动化设备的要求不断提高,数控机床设备日益得到广泛应用.数控机床设备对加工质量及效率起着关键乃至核心作用,其造价往往相当昂贵.因此 ...

  2. centos 7 开启 httpd 服务和 80 端口

    centos 7 开启 httpd 服务和 80 端口 yum install -y httpd systemctl start httpd firewall-cmd --add-service=ht ...

  3. 海康iSC综合安防平台-视频web插件调试

    综合安防管理平台 视频WEB插件 1.demo_window_simple_playback.html.demo_window_simple_preview.html为简化版demo,可在此基础上开发 ...

  4. Java面试题:让依赖注入变得简单,面对@Autowired和@Resource,该如何选择?

    @Autowired和@Resource都是Java Spring框架中的注解,用于实现依赖注入(DI)和控制反转(IoC).它们的区别主要在以下三个方面: 源头不同  @Autowired是Spri ...

  5. Linux:查看磁盘配额报告数据

    近期在超算云上跑代码遇到了个乌龙,就是作业一提交到集群上去先是PD状态,然后马上就终止调了.后来知道是我用户目录下文件数量太多,导致已经超过管理员给我分配的磁盘配额了(众所周知机器学习相关项目的数据集 ...

  6. 全网首一份!你最需要的PPTP MS-CHAP V2 挑战响应编程模拟计算教程!代码基于RFC2759,附全部源码!

    本文基于网络密码课上的实验 本来想水一水就过去,代码就网上找找,不行就GPT写,但是!一份都找不到,找到的代码都是跑不了的,总会是就是乱七八糟.所以准备认真的写一份. 代码编译成功的前提是要预先装好o ...

  7. centos安装kvm博客

    一 centos如何安装kvm https://blog.csdn.net/yulsh/article/details/91790804

  8. vue绑定对象,绑定的值不改变的问题

    在使用vue结合elmentui的table组件,对数组绑定,需要编辑数组里一些属性的值.我的情况是,需要在打开这个表时,根据条件插入一些对象到table里,经测试,到这里是没问题的,可以显示新插入的 ...

  9. Swoole 源码分析之 WebSocket 模块

    首发原文链接:Swoole 源码分析之 WebSocket 模块 大家好,我是码农先森. Swoole 源码分析之 WebSocket 模块 引言 WebSocket 是一种在单个 TCP 连接上进行 ...

  10. Django 的 ORM

    Django 的 ORM: 注意: 需要提前创建好数据库,Django不会自动创建数据库