hadoop集群zookeeper迁移
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迁移的更多相关文章
- 不同hadoop集群之间迁移hive数据
#!/bin/bash #set -x DB=$1 #获取hive表定义 ret=$(hive -e 'use ${DB};show tables;'|grep -v _es|grep -v _hb| ...
- 基于Hadoop集群的HBase集群的配置
一 Hadoop集群部署 hadoop配置 二 Zookeeper集群部署 zookeeper配置 三 Hbase集群部署 1.配置hbase-env.sh HBASE_MANAGES_ZK:用来 ...
- 从零自学Hadoop(17):Hive数据导入导出,集群数据迁移下
阅读目录 序 将查询的结果写入文件系统 集群数据迁移一 集群数据迁移二 系列索引 本文版权归mephisto和博客园共有,欢迎转载,但须保留此段声明,并给出原文链接,谢谢合作. 文章是哥(mephis ...
- (转)hadoop 集群间数据迁移
hadoop集群之间有时候需要将数据进行迁移,如将一些保存的过期文档放置在一个小集群中进行保存. 使用的是社区提供的功能,distcp.用法非常简单: hadoop distcp hdfs://nn1 ...
- hadoop集群环境搭建之zookeeper集群的安装部署
关于hadoop集群搭建有一些准备工作要做,具体请参照hadoop集群环境搭建准备工作 (我成功的按照这个步骤部署成功了,经实际验证,该方法可行) 一.安装zookeeper 1 将zookeeper ...
- 流式大数据计算实践(2)----Hadoop集群和Zookeeper
一.前言 1.上一文搭建好了Hadoop单机模式,这一文继续搭建Hadoop集群 二.搭建Hadoop集群 1.根据上文的流程得到两台单机模式的机器,并保证两台单机模式正常启动,记得第二台机器core ...
- 阿里云ECS服务器部署HADOOP集群(二):HBase完全分布式集群搭建(使用外置ZooKeeper)
本篇将在阿里云ECS服务器部署HADOOP集群(一):Hadoop完全分布式集群环境搭建的基础上搭建,多添加了一个 datanode 节点 . 1 节点环境介绍: 1.1 环境介绍: 服务器:三台阿里 ...
- 阿里云ECS服务器部署HADOOP集群(三):ZooKeeper 完全分布式集群搭建
本篇将在阿里云ECS服务器部署HADOOP集群(一):Hadoop完全分布式集群环境搭建的基础上搭建,多添加了一个 datanode 节点 . 1 节点环境介绍: 1.1 环境介绍: 服务器:三台阿里 ...
- Hadoop集群搭建-02安装配置Zookeeper
Hadoop集群搭建-05安装配置YARN Hadoop集群搭建-04安装配置HDFS Hadoop集群搭建-03编译安装hadoop Hadoop集群搭建-02安装配置Zookeeper Hado ...
随机推荐
- 从0开始学Git——Git的常见操作
Git常用命令 创建Git版本库 git init [目录]#创建目录版本库, 不写的话是当前目录 该命令会在目录中创建一个名为.git的隐藏目录 文件提交 添加文件: git add 文件名 #添加 ...
- Nginx + fastcgi + php 的原理与关系
CGI:Common Gateway Interface 公共网关接口,web服务器和脚本语言通信的一个标准.接口.协议[协议] FastCGI:CGI协议的升级版[协议] PHP-CGI: 实现了C ...
- C++11——智能指针
1. 介绍 一般一个程序在内存中可以大体划分为三部分——静态内存(局部的static对象.类static数据成员以及所有定义在函数或者类之外的变量).栈内存(保存和定义在函数或者类内部的变量)和动态内 ...
- 非域环境下SQL Server搭建Mirror(镜像)的详细步骤
1.测试验证环境 服务器角色 机器名 IP SQL Server Ver 主体服务器 WIN-TestDB4O 172.83.XXX.XXX SQL Server 2012 - 11.0.5058.0 ...
- 信道估计系列之LS
在无线通信系统中,系统的性能主要受到无线信道的制约.基站和接收机之间的传播路径复杂多变,从简单的视距传输到受障碍物反射.折射.散射影响的传播.在无线传输环境中,接收信号会存在多径时延,时间选择性衰落和 ...
- 各IDE代码自用开头模板
Pycharm #!/usr/bin/env python # -*- coding: utf-8 -*- # @version : 1.0 # @Time : ${DATE} ${TIME} # @ ...
- window下 局域网内使用mysql,mysql 开启远程访问权限
一.window 10 开启3306端口 1.按win键选择设置 2.搜索防火墙 3.选择高级设置 3.右键入站规则->新建规则 4.按照提示,规则类型选择端口,应用于tcp,特定本地端口输入3 ...
- Joda学习笔记
Joda Time简介 日常业务开发中,经常需要处理日期.比如:获取当前一个月之内的开播记录,获取十分钟之内的红包记录等等.我们之前是用java.util.Calendar实现的,直到我看到占小 ...
- 一 下载Java的JDK及配置环境变量
1.下载JDK地址 https://www.oracle.com/technetwork/java/javase/downloads/index.html 2.点击download 3.安装JDK 我 ...
- in和exists过程对比
两者执行流程完全不一样. in的过程 select * from tableA a where a.id in (select b.a_id from tableB b); 1)首先子查询,查询B表中 ...