阿里云ECS服务器部署HADOOP集群(三):ZooKeeper 完全分布式集群搭建
本篇将在阿里云ECS服务器部署HADOOP集群(一):Hadoop完全分布式集群环境搭建的基础上搭建,多添加了一个 datanode 节点 。
1 节点环境介绍:
1.1 环境介绍:
- 服务器:三台阿里云ECS服务器:master, slave1, slave2
- 操作系统:CentOS 7.3
- Hadoop:hadoop-2.7.3.tar.gz
- Java: jdk-8u77-linux-x64.tar.gz
- ZooKeeper: zookeeper-3.4.14.tar.gz
1.2 各节点角色分配
- master: NameNode、SecondaryNameNode、QuorumPeerMain
- slave1: DataNode、QuorumPeerMain
- slave2: DataNode、QuorumPeerMain
2 ZooKeeper 下载
下载 zookeeper-3.4.14.tar.gz 并在合适的位置解压缩,笔者这里解压缩的路径为:
/usr/local/
将解压得到的目录改名为 zookeeper 。
cd /usr/local
mv zookeeper-3.4. zookeeper
3 添加 ZooKeeper 环境变量
在"/etc/profile"中添加内容:
export ZOOKEEPER_HOME=/usr/local/zookeeper
export PATH=$PATH:$ZOOKEEPER_HOME/bin
重新加载环境:
source /etc/profile
4 修改 Zookeeper 配置信息
4.1 修改 Zookeeper 默认配置
编辑文件:
cd $ZOOKEEPER_HOME/conf/
cp zoo_sample.cfg zoo.cfg
vim zoo.cfg
配置可参考如下代码:
# The number of milliseconds of each tick 通信心跳时间
tickTime=
# The number of ticks that the initial
# synchronization phase can take 初始通信时限
initLimit=
# The number of ticks that can pass between
# sending a request and getting an acknowledgement 同步通信时限
syncLimit=
# the directory where the snapshot is stored.
# do not use /tmp for storage, /tmp here is just
# example sakes. 数据文件目录
dataDir=/usr/local/zookeeper/tmp
# the port at which the clients will connect 客户端连接端口
clientPort=
#服务器名称与地址:集群信息(服务器编号、服务器地址、LF 通信端口、选举端口)
server.=master::
server.=slave1::
server.=slave2::
4.2 为节点配置编号
在 /usr/local/zookeeper 下创建目录 tmp,然后在 tmp 下创建文件 myid 并编辑。
cd $ZOOKEEPER_HOME
mkdir tmp
cd tmp
vim myid
添加内容:
1
5 分发配置给各节点
分发 zookeeper 和 profile 给 slave1, slave2(建议将 zookeeper压缩后分发)
scp -r /usr/local/zookeeper slave1:/usr/local
scp -r /usr/local/zookeeper slave2:/usr/local
scp /etc/profile slave1:/etc
scp /etc/profile slave2:/etc
分发后分别在各节点重新加载环境。
将 slave1 和 slave2 的内容分别改为 2 和 3 。
6 启动 zookeeper
分别在三个节点执行以下命令
zkServer.sh start
然后使用 jps 确定 QuorumPeerMain 进程是否启动
启动完成后可使用以下命令查看各节点的 zookeeper mode。



注:如只启动了一个节点的 zookeeper 则会出现以下错误,因为最少需要一个 leader 和 一个 follower 。
7 Zookeeper shell 使用
zkCli.sh

8 搭建完成
接下来就可以和 Hbase 一起使用了。
阿里云ECS服务器部署HADOOP集群系列:
- 阿里云ECS服务器部署HADOOP集群(一):Hadoop完全分布式集群环境搭建
- 阿里云ECS服务器部署HADOOP集群(二):HBase完全分布式集群搭建(使用外置ZooKeeper)
- 阿里云ECS服务器部署HADOOP集群(四):Hive本地模式的安装
- 阿里云ECS服务器部署HADOOP集群(五):Pig 安装
- 阿里云ECS服务器部署HADOOP集群(六):Flume 安装
- 阿里云ECS服务器部署HADOOP集群(七):Sqoop 安装
阿里云ECS服务器部署HADOOP集群(三):ZooKeeper 完全分布式集群搭建的更多相关文章
- 阿里云ECS服务器部署HADOOP集群(一):Hadoop完全分布式集群环境搭建
准备: 两台配置CentOS 7.3的阿里云ECS服务器: hadoop-2.7.3.tar.gz安装包: jdk-8u77-linux-x64.tar.gz安装包: hostname及IP的配置: ...
- 阿里云ECS服务器部署HADOOP集群(二):HBase完全分布式集群搭建(使用外置ZooKeeper)
本篇将在阿里云ECS服务器部署HADOOP集群(一):Hadoop完全分布式集群环境搭建的基础上搭建,多添加了一个 datanode 节点 . 1 节点环境介绍: 1.1 环境介绍: 服务器:三台阿里 ...
- 阿里云ECS服务器部署HADOOP集群(六):Flume 安装
本篇将在阿里云ECS服务器部署HADOOP集群(一):Hadoop完全分布式集群环境搭建的基础上搭建. 1 环境介绍 一台阿里云ECS服务器:master 操作系统:CentOS 7.3 Hadoop ...
- 阿里云ECS服务器部署HADOOP集群(七):Sqoop 安装
本篇将在 阿里云ECS服务器部署HADOOP集群(一):Hadoop完全分布式集群环境搭建 阿里云ECS服务器部署HADOOP集群(二):HBase完全分布式集群搭建(使用外置ZooKeeper) 阿 ...
- 阿里云ECS服务器部署HADOOP集群(五):Pig 安装
本篇将在阿里云ECS服务器部署HADOOP集群(一):Hadoop完全分布式集群环境搭建的基础上搭建. 1 环境介绍 一台阿里云ECS服务器:master 操作系统:CentOS 7.3 Hadoop ...
- 阿里云ECS服务器部署HADOOP集群(四):Hive本地模式的安装
本篇将在阿里云ECS服务器部署HADOOP集群(一):Hadoop完全分布式集群环境搭建的基础上搭建. 本地模式需要采用MySQL数据库存储数据. 1 环境介绍 一台阿里云ECS服务器:master ...
- thinkphp项目阿里云ECS服务器部署
[日记]thinkphp项目阿里云ECS服务器部署 项目本地开发告一段落.准备上传到服务器上测试 技术组成 thinkphp+mysql+阿里ECS 代码管理方式git 一.阿里ECS服务器配置 ...
- 阿里云ECS服务器部署Node.js项目全过程详解
本文详细介绍如何部署NodeJS项目到阿里云ECS上,以及本人在部署过程中所遇到的问题.坑点和解决办法,可以说是全网最全最详细的教程了.同时讲解了如何申请阿里云免费SSL证书,以及一台ECS服务器配置 ...
- 【日记】thinkphp项目阿里云ECS服务器部署
项目本地开发告一段落.准备上传到服务器上测试 技术组成 thinkphp+mysql+阿里ECS 代码管理方式git 一.阿里ECS服务器配置 1.因为线上已经有几个站点了.所以要配置ngnix多站 ...
随机推荐
- ASP.NET Core 3.0 一个 jwt 的轻量角色/用户、单个API控制的授权认证库
目录 说明 一.定义角色.API.用户 二.添加自定义事件 三.注入授权服务和中间件 三.如何设置API的授权 四.添加登录颁发 Token 五.部分说明 六.验证 说明 ASP.NET Core 3 ...
- Linux Centos7 基于Docker 搭建 Nexus私服搭建
创建Blob Stores[本地文件存储目录,统一管理] 1.设置名称和工作路径: ps[注意事项]: 1.storage name:自定义名称 2.storage path:存储路径,默认[/nex ...
- 第3次作业-MOOC学习笔记:Python网络爬虫与信息提取
1.注册中国大学MOOC 2.选择北京理工大学嵩天老师的<Python网络爬虫与信息提取>MOOC课程 3.学习完成第0周至第4周的课程内容,并完成各周作业 4.提供图片或网站显示的学习进 ...
- IL2CPP深入详解-总览
导语 该系列将会分为以下几个部分:1. 总览(本文)2. c++代码解析3. 调试c++代码4. 方法调用(一般方法,虚方法等)5. 泛型共享6. 类型与方法的 P/invoke 封装7. 垃圾回收8 ...
- 论RSA算法的重要性 -RSA 简介
地球上最重要的算法 (这个说法似乎有点夸张了,但是当你了解了RSA算法后,就觉得不夸张了.) 如果没有 RSA 算法,现在的网络世界毫无安全可言,也不可能有现在的网上交易.上一篇文章 ssh 协议为什 ...
- mybatis-spring 启动过程和调用过程
mybatis-spring 可以为我们做什么 mybatis框架已经很不错了,它把配置和执行sql的通用过程抽象出来.只要你符合mybatis框架的要求,首先有正确的配置,然后有model,inte ...
- Idea导入Web项目并发布到Tomcat
Idea导入现有的Web项目并发布到Tomcat,发现Tomcat没有自动发布 问题: 导入一个Web项目时,idea并没有把他当成web,所以需要自己修改项目结构 1.导入项目 打开 File-&g ...
- fastfdfs上传代码
//上传到FDFS //获取后缀名 String extension = StringUtils.substringAfterLast(file.getOriginalFilename()," ...
- JVM参数及调优
## 3.2.1 JVM参数及调优 ### 调优基本概念 在调整JVM性能时,通常有三个组件需要考虑:1. 堆大小调整2. 垃圾收集器调整3. JIT编译器 大多数调优选项都与调整堆大小和选择合适的垃 ...
- SpringBoot正确打日志的姿势
前篇 Spring Boot 日志处理你还在用Logback? 本文简介 前篇侧重 Log4j2 的配置,本篇侧重统一日志处理的应用,以下包含 HTTP 请求的日志处理.Exception 异常日志处 ...