1. zookeeper作用

    ZooKeepr在Hadoop中的应用主要有:

    1.1 HDFS中NameNode的HA和YARN中ResourceManager的HA。

    1.2 存储RMStateStore状态信息

  2. 迁移原因

    原来的方案是考虑到namenode占用cpu资源小,为了提高设备利用率,把zookeeper和namenode搭建在同一台设备上。经过测试发现namenode会缓存大量的数据到内存中,导致zookeeper相应时间变长,namenode和resourcemanager因为连接zookeeper超时而频繁切换。进过讨论,将zookeeper迁移到datanode     节点上。

  3. 迁移步骤

    3.1 备份原zookeeper集群设备中的zookeeper配置,hadoop集群两个namenode节点的配置

cp -r zookeeper-3.4./conf zookeeper-3.4./conf.bak
cp -r hadoop-2.6./etc/hadoop hadoop-2.6./etc/hadoop.bak   

    3.2 拷贝zookeeper安装包到选择好的三个datanode设备

scp zookeeper-3.4..tar.gz datanode1:/home/hadoop
scp zookeeper-3.4..tar.gz datanode2:/home/hadoop
scp zookeeper-3.4..tar.gz datanode3:/home/hadoop

    3.3 修改配置文件,启动zookeeper,检查zookeeper状态

scp namenode:/home/hadoop/zookeeper-3.4./conf/zoo.cfg datanode1:/home/hadoop/zookeer-3.4./conf
scp namenode:/home/hadoop/zookeeper-3.4./conf/zoo.cfg datanode3:/home/hadoop/zookeer-3.4./conf
scp namenode:/home/hadoop/zookeeper-3.4./conf/zoo.cfg datanode3:/home/hadoop/zookeer-3.4./conf
#修改配置文件中的ip地址为新zookeeper集群的设备ip
vi zoo.cfg
server.=datanode1::
server.=datanode2::
server.=datanode3::
#建myid文件,每个zookeeper的my.id要和配置文件中的server.id保持一致
vi myid vi myid vi myid #启动zookeeper
bin/zkServer.sh start
#zookeeper全部启动完成后,查看zookeeper状态
bin/zkServer.sh status

    3.4 修改hadoop相关配置文件,重启resourcemanger

      修改hdfs-site.xml,core-site.xml,yarn-site.xml配置文件中的zookeeper地址。

cd /home/hadoop/hadoop-2.6.
sbin/yarn-demon.sh stop resourcemanger
sbin/yarn-demon.sh start resourcemanger

    3.5 停zkfc,namenode应用 

sbin/hadoop-demon.sh stop zkfc
sbin/hadoop-demon.sh stop namenode  

    3.6 格式化zkfc,启动namenode,zkfc

bin/hdfs zkfc –formatZK
sbin/hadoop-demon.sh start zkfc
sbin/hadoop-demon.sh start namenode

    3.7 测试hadoop和yarn可用性

#查看namenode:50070和namenode:8088webui是否正常
#向hdfs中上传测试文件,测试hdfs可用性
hdfs dfs -put test.txt /user/
#执行wordcount测试yarn可用性
hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.6..jar wordcount /user/test.txt /user/output

  4. 总结

    zookeeper对网络和磁盘及内存响应要求较高,不能和网络和磁盘及内存使用率高的应用共用主机。最好使用单独的设备。

hadoop集群zookeeper迁移的更多相关文章

  1. 不同hadoop集群之间迁移hive数据

    #!/bin/bash #set -x DB=$1 #获取hive表定义 ret=$(hive -e 'use ${DB};show tables;'|grep -v _es|grep -v _hb| ...

  2. 基于Hadoop集群的HBase集群的配置

    一  Hadoop集群部署 hadoop配置 二 Zookeeper集群部署 zookeeper配置 三  Hbase集群部署 1.配置hbase-env.sh HBASE_MANAGES_ZK:用来 ...

  3. 从零自学Hadoop(17):Hive数据导入导出,集群数据迁移下

    阅读目录 序 将查询的结果写入文件系统 集群数据迁移一 集群数据迁移二 系列索引 本文版权归mephisto和博客园共有,欢迎转载,但须保留此段声明,并给出原文链接,谢谢合作. 文章是哥(mephis ...

  4. (转)hadoop 集群间数据迁移

    hadoop集群之间有时候需要将数据进行迁移,如将一些保存的过期文档放置在一个小集群中进行保存. 使用的是社区提供的功能,distcp.用法非常简单: hadoop distcp hdfs://nn1 ...

  5. hadoop集群环境搭建之zookeeper集群的安装部署

    关于hadoop集群搭建有一些准备工作要做,具体请参照hadoop集群环境搭建准备工作 (我成功的按照这个步骤部署成功了,经实际验证,该方法可行) 一.安装zookeeper 1 将zookeeper ...

  6. 流式大数据计算实践(2)----Hadoop集群和Zookeeper

    一.前言 1.上一文搭建好了Hadoop单机模式,这一文继续搭建Hadoop集群 二.搭建Hadoop集群 1.根据上文的流程得到两台单机模式的机器,并保证两台单机模式正常启动,记得第二台机器core ...

  7. 阿里云ECS服务器部署HADOOP集群(二):HBase完全分布式集群搭建(使用外置ZooKeeper)

    本篇将在阿里云ECS服务器部署HADOOP集群(一):Hadoop完全分布式集群环境搭建的基础上搭建,多添加了一个 datanode 节点 . 1 节点环境介绍: 1.1 环境介绍: 服务器:三台阿里 ...

  8. 阿里云ECS服务器部署HADOOP集群(三):ZooKeeper 完全分布式集群搭建

    本篇将在阿里云ECS服务器部署HADOOP集群(一):Hadoop完全分布式集群环境搭建的基础上搭建,多添加了一个 datanode 节点 . 1 节点环境介绍: 1.1 环境介绍: 服务器:三台阿里 ...

  9. Hadoop集群搭建-02安装配置Zookeeper

    Hadoop集群搭建-05安装配置YARN Hadoop集群搭建-04安装配置HDFS  Hadoop集群搭建-03编译安装hadoop Hadoop集群搭建-02安装配置Zookeeper Hado ...

随机推荐

  1. 「每日五分钟,玩转JVM」:线程共享区

    前言 上一篇中,我们了解了JVM中的线程独占区,这节课我们就来了解一下JVM中的线程共享区,JVM中的线程共享区是跟随JVM启动时一起创建的,包括堆(Heap)和方法区()两部分,而线程独占区的程序计 ...

  2. HTML连载33-背景定位

    一.背景定位 同一个标签可以同时设置背景颜色和背景图片,如果颜色和图片同时存在,那么图片会覆盖颜色 1.在CSS中有一个叫做background-position:属性,就是专门用来控制背景图片的位置 ...

  3. Codeforces 1008C

    题意略. 思路: 其实我们没有必要关注每个数字的位置,我们只要把大的数字放在小的数字上就可以了,这样它的位置必然会发生变换. 在变换时,这个替换的序列越长越好,每个序列对答案的贡献就是该序列的长度 - ...

  4. JAVA解除tomcat 对浏览器特别字符 | () {} [] 的限制

    1.打开tomcat本机地址打开conf文件夹(一定要关闭Tomcat启动在修改) 2.记事本打开或者编辑软件打开(我这里推荐的编辑软件是以下如图) 打开进去加入这两行代码 3打开server.xml ...

  5. Keras(一)Sequential与Model模型、Keras基本结构功能

    keras介绍与基本的模型保存 思维导图 1.keras网络结构 2.keras网络配置 3.keras预处理功能 模型的节点信息提取 config = model.get_config() 把mod ...

  6. 矩阵之间无循环计算L2距离

    实现两个矩阵的无循环计算欧氏距离 Euclidean distance navigation: 1.问题描述 2.解决方法 1.问题来源 kNN算法中会计算两个矩阵的距离 可以使用循环的方法来实现,效 ...

  7. 洛谷-P1414 又是毕业季II -枚举因子

    P1414 又是毕业季II:https://www.luogu.org/problemnew/show/P1414 题意: 给定一个长度为n的数列.要求输出n个数字,每个数字代表从给定数列中最合理地取 ...

  8. MySQL性能调优与架构设计(简朝阳)

    https://www.cnblogs.com/crazylqy/category/625963.html

  9. Http和Https相关问题

    Http和Https Http(默认端口号80) 超文本传输协议(Http,HyperText Transfer Protocol)是互联网上使用最为广泛的一种网络协议(应用层).设计Http最初的目 ...

  10. spring boot项目后台运行

    spring boot项目后台运行 Spring Boot应用的几种运行方式: (1)运行Spring Boot的应用主类 (2)使用Maven的Spring Boot插件mvn spring-boo ...