1、 搭建前准备

示例共三台主机,主机IP映射信息如下:

192.168.32.101 s1
192.168.32.102 s2
192.168.32.103 s3

2、下载ZooKeeper, 以 zookeeper-3.4.14 为例,下载地址如下:

https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/zookeeper-3.4.14/zookeeper-3.4.14.tar.gz

3、复制下载好的zookeeper-3.4.14.tar.gzs1主机上,并解压到/opt 下

tar -zxvf zookeeper-3.4..tar.gz -C /opt/

4、配置

s1 上创建data目录和myid文件

mkdir /opt/zookeeper-3.4./data
echo > /opt/zookeeper-3.4./data/myid

创建conf/zoo.cfg

vi /opt/zookeeper-3.4./conf/zoo.cfg

输入如下内容:

tickTime=
initLimit=
syncLimit=
dataDir=/opt/zookeeper-3.4./data
dataLogDir=/opt/zookeeper-3.4./logs
clientPort=
server.=s1::
server.=s2::
server.=s3::

5、远程复制zookeeper到另外两台主机 s2、s3 上

scp -r /opt/zookeeper-3.4. root@s2:/opt/
scp -r /opt/zookeeper-3.4. root@s3:/opt/

登录主机s2 ,修改 myid 文件

ssh s2
echo > /opt/zookeeper-3.4./data/myid

登录主机s3 ,修改 myid 文件

ssh s3
echo > /opt/zookeeper-3.4./data/myid

6、配置三台主机环境变量

vi /etc/profile

添加内容如下:

export ZOOKEEPER_HOME=/opt/zookeeper-3.4.
export PATH=$PATH:$ZOOKEEPER_HOME/bin

使用source命令使配置立即生效

source /etc/profile

7、启动

在三台主机上分别执行如下命令

zkServer.sh start

查询运行状态

zkServer.sh status

三台主机显示信息如下:

[root@s1 conf]# zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /opt/zookeeper-3.4./bin/../conf/zoo.cfg
Mode: follower
[root@s2 opt]# zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /opt/zookeeper-3.4./bin/../conf/zoo.cfg
Mode: leader
[root@s3 opt]# zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /opt/zookeeper-3.4./bin/../conf/zoo.cfg
Mode: follower

leader:s2

follower:s1、s3

重启命令

zkServer.sh restart

停止命令

zkServer.sh stop

8、客户端连接

/opt/zookeeper-3.4./bin/zkCli.sh -server s1:

输入 h 查看所有命令

查看节点命令

ls /

指定ZooKeeper日志zookeeper.out的输出目录,不指定情况下会输出到运行zkServer.sh时的当前目录

zkServer.sh文件里加入一行配置即可指定输出目录,如下所示:

ZOO_LOG_DIR=/opt/zookeeper-3.4.14/logs

ZooKeeper 完全分布式集群环境搭建

.

最新文章

  1. SDWebImage的使用
  2. <<Windows via C/C++>>学习笔记 —— 线程优先级【转】
  3. Select-or-Die:灵活的 jQuery 下拉列表插件
  4. MSDE简介
  5. “双十一”购物狂欢节,电商运营和商业智能(BI)才是绝配
  6. ckeditor中“浏览服务器”的后台操作
  7. C++中的位域(bit-filed):一种节省空间的成员
  8. Java基础知识强化34:String类之String类的转换功能
  9. LeetCode_Minimum Path Sum
  10. 使用prettytable美化python的print输出
  11. flask连接sqlalchemy数据库,实现简单的登录跳转功能
  12. bjtu 1819 二哥求和(前缀和)
  13. Python开发【内置模块篇】configparser
  14. Linux查看密码
  15. 洛谷P1434滑雪题解及记忆化搜索的基本步骤
  16. 用 DocumentFormat.OpenXml 和Microsoft.Office.Interop.Word 写入或者读取word文件
  17. AES加解密算法
  18. java关键字总结
  19. Java基础-常用工具类(一)
  20. streaming优化:禁用序列化

热门文章

  1. requirej入门(二)
  2. xml和json互转
  3. Andrew Ng 的 Machine Learning 课程学习 (week4) Multi-class Classification and Neural Networks
  4. HDU 4635 —— Strongly connected——————【 强连通、最多加多少边仍不强连通】
  5. [转]javascript之数组操作
  6. 内存分配详解 malloc, new, HeapAlloc, VirtualAlloc,GlobalAlloc
  7. BZOJ4245: [ONTAK2015]OR-XOR(前缀和)
  8. python处理字符串:将字符串中的数字相加求和
  9. React 表单组件
  10. SpringCloud的学习记录(3)