zookeeper-02 部署
时间:2022-07-26
本文章向大家介绍zookeeper-02 部署,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
1. 主机规划
主机名称 |
外网IP【外部访问】 |
内网IP |
操作系统 |
备注 |
安装软件 |
---|---|---|---|---|---|
docker01 |
10.0.0.11 |
172.16.1.11 |
CentOS 7.2 |
zookeeper-3.4.5【集群】 |
|
docker02 |
10.0.0.12 |
172.16.1.12 |
CentOS 7.2 |
zookeeper-3.4.5【集群】 |
|
docker03 |
10.0.0.13 |
172.16.1.13 |
CentOS 7.2 |
zookeeper-3.4.5【集群】 |
|
docker04 |
10.0.0.14 |
172.16.1.14 |
CentOS 7.2 |
zookeeper-3.4.5【单独/伪集群】 |
其中zoo.cfg 的连接数如下:
maxClientCnxns=1000
具体就不在每个配置文件中写了
如果使用,请加上这个配置
2. Jdk【java8】
2.1. 软件安装
1 [root@zhang tools]# pwd
2 /root/tools
3 [root@zhang tools]# tar xf jdk-8u162-linux-x64.tar.gz
4 [root@zhang tools]# ll
5 total 201392
6 drwxr-xr-x 8 10 143 4096 Dec 20 13:27 jdk1.8.0_162
7 -rw-r--r-- 1 root root 189815615 Mar 12 16:47 jdk-8u162-linux-x64.tar.gz
8 -rw-r--r-- 1 root root 16402010 May 14 00:26 zookeeper-3.4.5.tar.gz
9 [root@zhang tools]# mv jdk1.8.0_162/ /app/
10 [root@zhang tools]# cd /app/
11 [root@zhang app]# ll
12 total 8
13 drwxr-xr-x 8 10 143 4096 Dec 20 13:27 jdk1.8.0_162
14 [root@zhang app]# ln -s jdk1.8.0_162/ jdk
15 [root@zhang app]# ll
16 total 8
17 lrwxrwxrwx 1 root root 13 May 16 23:19 jdk -> jdk1.8.0_162/
18 drwxr-xr-x 8 10 143 4096 Dec 20 13:27 jdk1.8.0_162
2.2. 环境变量
1 [yun@iZ2zefjy4361ppunik5222Z ~]$ pwd
2 /app
3 [yun@iZ2zefjy4361ppunik5222Z ~]$ ll -d jdk* # 可以根据实际情况选择jdk版本,其中jdk1.8 可以兼容 jdk1.7
4 lrwxrwxrwx 1 yun yun 11 Mar 15 14:58 jdk -> jdk1.7.0_71
5 drwxr-xr-x 8 yun yun 4096 Sep 27 2014 jdk1.7.0_71
6 drwxr-xr-x 8 yun yun 4096 Dec 20 13:27 jdk1.8.0_162
7 [yun@iZ2zefjy4361ppunik5222Z profile.d]$ pwd
8 /etc/profile.d
9 [yun@iZ2zefjy4361ppunik5222Z profile.d]$ cat jdk.sh # java环境变量
10 export JAVA_HOME=/app/jdk
11 export JRE_HOME=/app/jdk/jre
12 export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib:$CLASSPATH
13 export PATH=$JAVA_HOME/bin:$PATH
3. zookeeper【单机部署】
3.1. 配置信息
1 # 路径
2 [root@zhang app]# pwd
3 /app
4 [root@zhang app]# ll
5 total 4
6 lrwxrwxrwx 1 root root 13 May 26 06:55 jdk -> jdk1.8.0_112/
7 drwxr-xr-x 8 10 143 255 Sep 23 2016 jdk1.8.0_112
8 drwxr-xr-x 10 501 games 4096 Nov 5 2012 zookeeper-3.4.5
9
10 # 配置文件
11 [root@zhang conf]# pwd
12 /app/zookeeper-3.4.5/conf
13 [root@zhang conf]# cp -a zoo_sample.cfg zoo.cfg
14 [root@zhang conf]# vim zoo.cfg
15 # The number of milliseconds of each tick #心跳间隔时间,zookeeper中使用的基本时间单位,毫秒值。每隔2秒发送一个心跳
16 tickTime=2000
17 # The number of ticks that the initial
18 # synchronization phase can take
19 initLimit=10
20 # The number of ticks that can pass between
21 # sending a request and getting an acknowledgement
22 syncLimit=5
23 # the directory where the snapshot is stored.
24 # do not use /tmp for storage, /tmp here is just
25 # example sakes. 数据目录 单独目录存放
26 dataDir=/app/bigdata/zookeeper/data
27 # the port at which the clients will connect
28 clientPort=2181
29 #
30 # Be sure to read the maintenance section of the
31 # administrator guide before turning on autopurge.
32 #
33 # http://zookeeper.apache.org/doc/current/zookeeperAdmin.html#sc_maintenance
34 #
35 # The number of snapshots to retain in dataDir
36 #autopurge.snapRetainCount=3
37 # Purge task interval in hours
38 # Set to "0" to disable auto purge feature
39 #autopurge.purgeInterval=1
3.2. 服务启动与停止
1 # 启动服务
2 [root@zhang bin]# pwd
3 /app/zookeeper-3.4.5/bin
4 [root@zhang bin]# ./zkServer.sh start
5 JMX enabled by default
6 Using config: /app/zookeeper-3.4.5/bin/../conf/zoo.cfg
7 Starting zookeeper ... STARTED
8 [root@zhang bin]#
9 [root@zhang bin]# ./zkServer.sh status
10 JMX enabled by default
11 Using config: /app/zookeeper-3.4.5/bin/../conf/zoo.cfg
12 Mode: standalone
13
14 # 停止服务
15 [root@zhang bin]# ./zkServer.sh stop
16 JMX enabled by default
17 Using config: /app/zookeeper-3.4.5/bin/../conf/zoo.cfg
18 Stopping zookeeper ... STOPPED
19 [root@zhang bin]# ./zkServer.sh status
20 JMX enabled by default
21 Using config: /app/zookeeper-3.4.5/bin/../conf/zoo.cfg
22 Error contacting service. It is probably not running.
4. zookeeper【单机伪集群】
一台机器,在该台机器上运行多个ZooKeeper Server进程。
4.1. 软件基本信息
1 [root@zhang app]# pwd
2 /app
3 [root@zhang app]# ll
4 total 16
5 drwxr-xr-x 3 root root 23 May 26 07:01 bigdata
6 lrwxrwxrwx 1 root root 13 May 26 06:55 jdk -> jdk1.8.0_112/
7 drwxr-xr-x 8 10 143 255 Sep 23 2016 jdk1.8.0_112
8 drwxr-xr-x 11 501 games 4096 May 26 07:04 zookeeper-3.4.5_01
9 drwxr-xr-x 11 501 games 4096 May 26 07:04 zookeeper-3.4.5_02
10 drwxr-xr-x 11 501 games 4096 May 26 07:04 zookeeper-3.4.5_03
4.2. 配置文件
4.2.1. zookeeper-3.4.5_01 配置信息
1 [root@zhang conf]# pwd
2 /app/zookeeper-3.4.5_01/conf
3 [root@zhang conf]# ll
4 total 20
5 -rw-r--r-- 1 501 games 535 Oct 1 2012 configuration.xsl
6 -rw-r--r-- 1 501 games 2161 Oct 1 2012 log4j.properties
7 -rw-r--r-- 1 501 games 927 May 26 07:06 zoo.cfg
8 -rw-r--r-- 1 501 games 808 Oct 1 2012 zoo_sample.cfg
9 [root@zhang conf]# vim zoo.cfg
10 # The number of milliseconds of each tick
11 tickTime=2000
12 # The number of ticks that the initial
13 # synchronization phase can take
14 initLimit=10
15 # The number of ticks that can pass between
16 # sending a request and getting an acknowledgement
17 syncLimit=5
18 # the directory where the snapshot is stored.
19 # do not use /tmp for storage, /tmp here is just
20 # example sakes. 数据目录 单独目录存放 确保该目录存在
21 dataDir=/app/bigdata/zookeeper1/data
22 # the port at which the clients will connect
23 # 客户端端口 多个实例的端口配置不可重复
24 clientPort=2181
25 #
26 # Be sure to read the maintenance section of the
27 # administrator guide before turning on autopurge.
28 #
29 # http://zookeeper.apache.org/doc/current/zookeeperAdmin.html#sc_maintenance
30 #
31 # The number of snapshots to retain in dataDir
32 #autopurge.snapRetainCount=3
33 # Purge task interval in hours
34 # Set to "0" to disable auto purge feature
35 #autopurge.purgeInterval=1
36
37 #server.NUM=IP:port1:port2 NUM表示本机为第几号服务器;IP为本机ip地址;
38 #port1为leader与follower通信端口;port2为参与竞选leader的通信端口
39 #多个实例的端口配置不能重复,如下:
40 server.1=172.16.1.14:2222:2225
41 server.2=172.16.1.14:3333:3335
42 server.3=172.16.1.14:4444:4445
4.2.2. zookeeper-3.4.5_02 配置信息
1 [root@zhang conf]# pwd
2 /app/zookeeper-3.4.5_02/conf
3 [root@zhang conf]# ll
4 total 16
5 -rw-r--r-- 1 501 games 535 Oct 1 2012 configuration.xsl
6 -rw-r--r-- 1 501 games 2161 Oct 1 2012 log4j.properties
7 -rw-r--r-- 1 501 games 1269 May 26 10:43 zoo.cfg
8 -rw-r--r-- 1 501 games 808 Oct 1 2012 zoo_sample.cfg
9 [root@zhang conf]# vim zoo.cfg
10 # The number of milliseconds of each tick
11 tickTime=2000
12 # The number of ticks that the initial
13 # synchronization phase can take
14 initLimit=10
15 # The number of ticks that can pass between
16 # sending a request and getting an acknowledgement
17 syncLimit=5
18 # the directory where the snapshot is stored.
19 # do not use /tmp for storage, /tmp here is just
20 # example sakes. 数据目录 单独目录存放 确保该目录存在
21 dataDir=/app/bigdata/zookeeper2/data
22 # the port at which the clients will connect
23 # 客户端端口 多个实例的端口配置不可重复
24 clientPort=2182
25 #
26 # Be sure to read the maintenance section of the
27 # administrator guide before turning on autopurge.
28 #
29 # http://zookeeper.apache.org/doc/current/zookeeperAdmin.html#sc_maintenance
30 #
31 # The number of snapshots to retain in dataDir
32 #autopurge.snapRetainCount=3
33 # Purge task interval in hours
34 # Set to "0" to disable auto purge feature
35 #autopurge.purgeInterval=1
36
37 #server.NUM=IP:port1:port2 NUM表示本机为第几号服务器;IP为本机ip地址;
38 #port1为leader与follower通信端口;port2为参与竞选leader的通信端口
39 #多个实例的端口配置不能重复,如下:
40 server.1=172.16.1.14:2222:2225
41 server.2=172.16.1.14:3333:3335
42 server.3=172.16.1.14:4444:4445
4.2.3. zookeeper-3.4.5_03 配置信息
1 [root@zhang conf]# pwd
2 /app/zookeeper-3.4.5_03/conf
3 [root@zhang conf]# ll
4 total 16
5 -rw-r--r-- 1 501 games 535 Oct 1 2012 configuration.xsl
6 -rw-r--r-- 1 501 games 2161 Oct 1 2012 log4j.properties
7 -rw-r--r-- 1 501 games 1268 May 25 23:39 zoo.cfg
8 -rw-r--r-- 1 501 games 808 Oct 1 2012 zoo_sample.cfg
9 [root@zhang conf]# vim zoo.cfg
10 # The number of milliseconds of each tick
11 tickTime=2000
12 # The number of ticks that the initial
13 # synchronization phase can take
14 initLimit=10
15 # The number of ticks that can pass between
16 # sending a request and getting an acknowledgement
17 syncLimit=5
18 # the directory where the snapshot is stored.
19 # do not use /tmp for storage, /tmp here is just
20 # example sakes. 数据目录 单独目录存放
21 dataDir=/app/bigdata/zookeeper3/data
22 # the port at which the clients will connect
23 # 客户端端口 多个实例的端口配置不可重复
24 clientPort=2183
25 #
26 # Be sure to read the maintenance section of the
27 # administrator guide before turning on autopurge.
28 #
29 # http://zookeeper.apache.org/doc/current/zookeeperAdmin.html#sc_maintenance
30 #
31 # The number of snapshots to retain in dataDir
32 #autopurge.snapRetainCount=3
33 # Purge task interval in hours
34 # Set to "0" to disable auto purge feature
35 #autopurge.purgeInterval=1
36
37 #server.NUM=IP:port1:port2 NUM表示本机为第几号服务器;IP为本机ip地址;
38 #port1为leader与follower通信端口;port2为参与竞选leader的通信端口
39 #多个实例的端口配置不能重复,如下:
40 server.1=172.16.1.14:2222:2225
41 server.2=172.16.1.14:3333:3335
42 server.3=172.16.1.14:4444:4445
4.3. 添加myid文件
1 [root@zhang bigdata]# cat /app/bigdata/zookeeper1/data/myid
2 1
3 [root@zhang bigdata]# cat /app/bigdata/zookeeper2/data/myid
4 2
5 [root@zhang bigdata]# cat /app/bigdata/zookeeper3/data/myid
6 3
4.4. 启动与查看状态
4.4.1. 依次启动
1 # 第一台
2 [root@zhang bin]# pwd
3 /app/zookeeper-3.4.5_01/bin
4 [root@zhang bin]# ./zkServer.sh start
5 JMX enabled by default
6 Using config: /app/zookeeper-3.4.5_01/bin/../conf/zoo.cfg
7 Starting zookeeper ... STARTED
8
9 # 第二台
10 [root@zhang bin]# pwd
11 /app/zookeeper-3.4.5_02/bin
12 [root@zhang bin]# ./zkServer.sh start
13 JMX enabled by default
14 Using config: /app/zookeeper-3.4.5_02/bin/../conf/zoo.cfg
15 Starting zookeeper ... STARTED
16
17 # 第三台
18 [root@zhang bin]# pwd
19 /app/zookeeper-3.4.5_03/bin
20 [root@zhang bin]# ./zkServer.sh start
21 JMX enabled by default
22 Using config: /app/zookeeper-3.4.5_03/bin/../conf/zoo.cfg
23 Starting zookeeper ... STARTED
4.4.2. 查看状态
1 # 第一台
2 [root@zhang bin]# pwd
3 /app/zookeeper-3.4.5_01/bin
4 [root@zhang bin]# ./zkServer.sh status
5 JMX enabled by default
6 Using config: /app/zookeeper-3.4.5_01/bin/../conf/zoo.cfg
7 Mode: follower
8
9 # 第二台
10 [root@zhang bin]# pwd
11 /app/zookeeper-3.4.5_02/bin
12 [root@zhang bin]# ./zkServer.sh status
13 JMX enabled by default
14 Using config: /app/zookeeper-3.4.5_02/bin/../conf/zoo.cfg
15 Mode: leader
16
17 # 第三台
18 [root@zhang bin]# pwd
19 /app/zookeeper-3.4.5_03/bin
20 [root@zhang bin]# ./zkServer.sh status
21 JMX enabled by default
22 Using config: /app/zookeeper-3.4.5_03/bin/../conf/zoo.cfg
23 Mode: follower
5. zookeeper【集群】
5.1. 配置信息
1 [root@docker01 conf]# pwd
2 /app/zookeeper-3.4.5/conf
3 [root@docker01 conf]# vim zoo.cfg
4 # The number of milliseconds of each tick
5 tickTime=2000
6 # The number of ticks that the initial
7 # synchronization phase can take
8 initLimit=10
9 # The number of ticks that can pass between
10 # sending a request and getting an acknowledgement
11 syncLimit=5
12 # the directory where the snapshot is stored.
13 # do not use /tmp for storage, /tmp here is just
14 # example sakes.
15 dataDir=/app/bigdata/zookeeper/data
16 # the port at which the clients will connect
17 clientPort=2181
18 #
19 # Be sure to read the maintenance section of the
20 # administrator guide before turning on autopurge.
21 #
22 # http://zookeeper.apache.org/doc/current/zookeeperAdmin.html#sc_maintenance
23 #
24 # The number of snapshots to retain in dataDir
25 #autopurge.snapRetainCount=3
26 # Purge task interval in hours
27 # Set to "0" to disable auto purge feature
28 #autopurge.purgeInterval=1
29
30 # leader和follow通信端口和投票选举端口
31 server.1=172.16.1.11:2888:3888
32 server.2=172.16.1.12:2888:3888
33 server.3=172.16.1.13:2888:3888
5.2. 添加myid文件
1 [root@docker01 conf]# cd /app/bigdata/zookeeper/data #
2 [root@docker01 data]# vim myid # 3台机器的myid分别为 1、2、3 # 见开头的主机规划
3 1
5.3. 启动zk服务
1 ##### 第1台、2台、3台 依次启动
2 [root@docker01 bin]# pwd
3 /app/zookeeper-3.4.5/bin
4 [root@docker01 bin]# ll
5 total 60
6 -rwxr-xr-x 1 501 games 238 Oct 1 2012 README.txt
7 -rwxr-xr-x 1 501 games 1909 Oct 1 2012 zkCleanup.sh
8 -rwxr-xr-x 1 501 games 1049 Oct 1 2012 zkCli.cmd
9 -rwxr-xr-x 1 501 games 1512 Oct 1 2012 zkCli.sh
10 -rwxr-xr-x 1 501 games 1333 Oct 1 2012 zkEnv.cmd
11 -rwxr-xr-x 1 501 games 2599 Oct 1 2012 zkEnv.sh
12 -rwxr-xr-x 1 501 games 1084 Oct 1 2012 zkServer.cmd
13 -rwxr-xr-x 1 501 games 5467 Oct 1 2012 zkServer.sh
14 [root@docker01 bin]# ./zkServer.sh start
15 JMX enabled by default
16 Using config: /app/zookeeper-3.4.5/bin/../conf/zoo.cfg
17 Starting zookeeper ... STARTED
5.4. 查询运行状态
1 # 第一台
2 [root@docker01 bin]# ./zkServer.sh status
3 JMX enabled by default
4 Using config: /app/zookeeper-3.4.5/bin/../conf/zoo.cfg
5 Mode: follower
6
7 # 第二台
8 [root@docker02 bin]# ./zkServer.sh status
9 JMX enabled by default
10 Using config: /app/zookeeper-3.4.5/bin/../conf/zoo.cfg
11 Mode: leader
12
13 # 第三台
14 [root@docker03 bin]# ./zkServer.sh status
15 JMX enabled by default
16 Using config: /app/zookeeper-3.4.5/bin/../conf/zoo.cfg
17 Mode: follower
- matlab GUI基础3
- 【Python环境】《Python数据科学入门》试译 第一章 简介
- HLS Lesson20-实例分析
- WannaCry勒索病毒详细解读
- matlab GUI基础3
- 不使用反射的实体类方案
- matlab GUI基础1
- Why to do,What to do,Where to do 与 Lambda表达式!
- Cloak ; Dagger攻击:一种可针对所有版本Android的攻击技术(含演示视频)
- 实例探究字符编码:unicode,utf-8,default,gb2312 的区别
- 分布式计算,WCF+JSON+实体对象与WebService+DataSet效率大比拼
- 【自然框架】 页面里的父类—— 改进和想法、解释
- 线性神经网络
- 【数据可视化】深度解析大数据可视化设计案例分析
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法