zookeeper伪集群安装
记录下zookeeper伪分布式搭建的过程,假设系统已经配置好了JAVA环境。
1.准备环境
linux服务器一台,下载某个版本的zookeeper压缩包,下载链接:http://apache.claz.org/zookeeper/zookeeper-3.5.3-beta/zookeeper-3.5.3-beta.tar.gz
2.生成多个节点
因为是伪分布式环境,所以是在一台机器上搭建多个节点。在/data/zk/目录下生成三个文件夹,分别为:zk0,zk1,zk2,将上面下载的压缩包拷贝进各个文件夹并解压,解压时注意,最好不要带z参数,不然可能会报错。
3.修改配置文件
先由模板生成配置文件:
cp /data/zk/zk0/zookeeper-3.5.3-beta/conf/zoo_sample.cfg /data/zk/zk0/zookeeper-3.5.3-beta/conf/zoo.cfg
cp /data/zk/zk1/zookeeper-3.5.3-beta/conf/zoo_sample.cfg /data/zk/zk1/zookeeper-3.5.3-beta/conf/zoo.cfg
cp /data/zk/zk2/zookeeper-3.5.3-beta/conf/zoo_sample.cfg /data/zk/zk2/zookeeper-3.5.3-beta/conf/zoo.cfg
修改配置文件,增加以下部分
dataDir=/data/zk/zk0/zookeeper-3.5.3-beta/data(注意每个配置文件中zk*的路径不同)
clientPort=2181(zk0是2181,zk1是2182,zk2是2183,端口不能重复否则启动时会出现端口已被占用错误。)
4lw.commands.whitelist=*(此配置是支持四字节命令的,线上环境慎重添加,可能会带来安全问题,不开次配置不能使用下面的telnet命令)
server.0=127.0.0.1:2880:3880
server.1=127.0.0.1:2881:3881
server.2=127.0.0.1:2882:3882
server.A=B:C:D 其中 A 是一个数字,就是myid里的那个数字,表示这个是第几号服务器;B 是这个服务器的 ip 地址,C和D是两个端口,C、D两个端口相互也不能重复(仅限伪分布式模式下)。
4.生成myid文件,伪分布式模式下通过此文件id来区分每个节点,所以值不能重复
mkdir /data/zk/zk0/zookeeper-3.5.3-beta/data
echo 0 > /data/zk/zk0/zookeeper-3.5.3-beta/data/myid
mkdir /data/zk/zk1/zookeeper-3.5.3-beta/data
echo 1 > /data/zk/zk1/zookeeper-3.5.3-beta/data/myid
mkdir /data/zk/zk2/zookeeper-3.5.3-beta/data
echo 2 > /data/zk/zk2/zookeeper-3.5.3-beta/data/myid
5.启动
/data/zk/zk0/zookeeper-3.5.3-beta/bin/zkServer.sh start /data/zk/zk0/zookeeper-3.5.3-beta/conf/zoo.cfg
/data/zk/zk1/zookeeper-3.5.3-beta/bin/zkServer.sh start /data/zk/zk1/zookeeper-3.5.3-beta/conf/zoo.cfg
/data/zk/zk2/zookeeper-3.5.3-beta/bin/zkServer.sh start /data/zk/zk2/zookeeper-3.5.3-beta/conf/zoo.cfg
正常情况会输出:Starting zookeeper ... STARTED
最好是将节点全启动起来之后在进行连接等操作。
6.检查各个节点的状态
/data/zk/zk0/zookeeper-3.5.3-beta/bin/zkServer.sh status
/data/zk/zk1/zookeeper-3.5.3-beta/bin/zkServer.sh status
/data/zk/zk2/zookeeper-3.5.3-beta/bin/zkServer.sh status
正常会输出:
ZooKeeper JMX enabled by default
Using config: /data/zk/zk0/zookeeper-3.5.3-beta/bin/../conf/zoo.cfg
Client port found: 2181. Client address: localhost.
Mode: follower(follower表示角色)
7.查看节点状态、关闭节点
/data/zk/zk0/zookeeper-3.5.3-beta/bin/zkServer.sh status
/data/zk/zk1/zookeeper-3.5.3-beta/bin/zkServer.sh status
/data/zk/zk2/zookeeper-3.5.3-beta/bin/zkServer.sh status
/data/zk/zk0/zookeeper-3.5.3-beta/bin/zkServer.sh stop
/data/zk/zk1/zookeeper-3.5.3-beta/bin/zkServer.sh stop
/data/zk/zk2/zookeeper-3.5.3-beta/bin/zkServer.sh stop
8.client连接测试
/data/zk/zk1/zookeeper-3.5.3-beta/bin/zkCli.sh -server 127.0.0.1:2181
正常会输出:Welcome to ZooKeeper!
然后可以输入正常的client命令来操作zookeeper。
9.除了可以用client连接操作,zookeeper还支持用telnet使用特殊命令来操作,这个称为四字节命令,具体详见:https://zookeeper.apache.org/doc/r3.5.3-beta/zookeeperAdmin.html#sc_clusterOptions
- 1. 可以通过命令:echo stat|nc 127.0.0.1 2181 来查看哪个节点被选择作为follower或者leader
- 2. 使用echo ruok|nc 127.0.0.1 2181 测试是否启动了该Server,若回复imok表示已经启动。
- 3. echo dump| nc 127.0.0.1 2181 ,列出未经处理的会话和临时节点。
- 4. echo kill | nc 127.0.0.1 2181 ,关掉server
- 5. echo conf | nc 127.0.0.1 2181 ,输出相关服务配置的详细信息。
- 6. echo cons | nc 127.0.0.1 2181 ,列出所有连接到服务器的客户端的完全的连接 / 会话的详细信息。
- 7. echo envi |nc 127.0.0.1 2181 ,输出关于服务环境的详细信息(区别于 conf 命令)。
- 8. echo reqs | nc 127.0.0.1 2181 ,列出未经处理的请求。
- 9. echo wchs | nc 127.0.0.1 2181 ,列出服务器 watch 的详细信息。
- 10. echo wchc | nc 127.0.0.1 2181 ,通过 session 列出服务器 watch 的详细信息,它的输出是一个与 watch 相关的会话的列表。
- 11. echo wchp | nc 127.0.0.1 2181 ,通过路径列出服务器 watch 的详细信息。它输出一个与 session 相关的路径。
zookeeper伪集群安装的更多相关文章
- (原) 1.2 Zookeeper伪集群安装
本文为原创文章,转载请注明出处,谢谢 Zookeeper伪集群安装 zookeeper单机安装配置可以查看 1.1 zookeeper单机安装 1.复制三份zookeeper,分别为zookeeper ...
- 【分布式】Zookeeper伪集群安装部署
zookeeper:伪集群安装部署 只有一台linux主机,但却想要模拟搭建一套zookeeper集群的环境.可以使用伪集群模式来搭建.伪集群模式本质上就是在一个linux操作系统里面启动多个zook ...
- zookeeper 伪集群安装和 zkui管理UI配置
#=======================[VM机器,二进制安装] # 安装环境# OS System = Linux CNT7XZKPD02 4.4.190-1.el7.elrepo.x86_ ...
- 03_zookeeper伪集群安装
一句话说明白:在1台机器上模拟多台机器,对外提供服务 在理解zookeeper集群安装方法的基础上,本文描述如何将1个机器模拟为3个节点的zookeeper集群,建议先参考阅读本文的前一期 zooke ...
- zookeeper+kafka集群安装之二
zookeeper+kafka集群安装之二 此为上一篇文章的续篇, kafka安装需要依赖zookeeper, 本文与上一篇文章都是真正分布式安装配置, 可以直接用于生产环境. zookeeper安装 ...
- zookeeper+kafka集群安装之一
zookeeper+kafka集群安装之一 准备3台虚拟机, 系统是RHEL64服务版. 1) 每台机器配置如下: $ cat /etc/hosts ... # zookeeper hostnames ...
- zookeeper+kafka集群安装之中的一个
版权声明:本文为博主原创文章.未经博主同意不得转载. https://blog.csdn.net/cheungmine/article/details/26678877 zookeeper+kafka ...
- win10环境下搭建zookeeper伪集群
一.下载zookeeper https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/ 这里笔者下载的是zookeeper-3.3.6 二.配置zoo ...
- Zookeeper的集群安装
Zookeeper的集群安装 关闭防火墙 安装jdk 下载Zookeeper的安装包 解压Zookeeper的安装包 进入Zookeeper的安装目录中conf目录 将zoo_sample.cfg复制 ...
随机推荐
- jenkins里面使用shell 获取jira的sprint信息
需求 项目需要在jenkins自动发布中加入version.html来跟踪项目发布的版本信息,需要获取到jira中当前sprint的名字,和一个sprint中的发布次数(我这里用文件把次数存起来的傻方 ...
- MYSQL和ORACLE的一些区别
有很多应用项目, 刚起步的时候用MYSQL数据库基本上能实现各种功能需求,随着应用用户的增多,数据量的增加,MYSQL渐渐地出现不堪重负的情况:连接很慢甚至宕机,于是就有把数据从MYSQL迁到ORAC ...
- python中通过datetime获取UTC时间ISO格式
一个热点统计需求,需要限定一个时间范围,计算出该范围内的热点事件,相关数据则以UTC标准时间的ISO时间格式存在mongodb中,和服务器设置的时区UTC+8并不一致. 为了解决这个问题,直觉反应是在 ...
- 北京Uber优步司机奖励政策(2月25日)
滴快车单单2.5倍,注册地址:http://www.udache.com/ 如何注册Uber司机(全国版最新最详细注册流程)/月入2万/不用抢单:http://www.cnblogs.com/mfry ...
- c++ 重载运算与类型转换
1. 基础概念 重载的运算符是具有特殊名字的函数:(重载运算符函数,运算符函数.重载运算符) 依次包含返回类型,函数名(operator=),参数列表,函数体. 只有重载的函数调用运算符operato ...
- Git学习系列 (二)
#克隆目录并重命名为newname,默认目录名是使用.git前的grit git clone git://github.com/schacon/grit.git newname #将所有已经跟踪过的文 ...
- autocomplete.jquery 点击或进入默认显示所有结果
注意使用的是autocomplete.jquery,官网地址是:https://github.com/devbridge/jQuery-Autocomplete.而不是JqueryUI的autocom ...
- LWM2M的DISCOVER操作
1. 先看下DISCOVER的数据流,工作服务器下发的指令到设备客户端 2. 解释,这个操作是用来发现Object, Object Instances, and Resources的属性,同时可以发现 ...
- 基于Kafka的服务端用户行为日志采集
本文来自网易云社区 作者:李勇 背景 随着互联网的不断发展,用户所产生的行为数据被越来越多的网站重视,那么什么是用户行为呢?所谓的用户行为主要由五种元素组成:时间.地点.人物.行为.行为对应的内容.为 ...
- cf#512 C. Vasya and Golden Ticket
题目链接 http://codeforces.com/contest/1058/problem/C 这题还是暴力最方便,和的情况最多有n*a[i] 900种把每种都试一遍 #include<b ...