共计 3777 个字符,预计需要花费 10 分钟才能阅读完成。
本人现在对 zookeeper 的环境搭建做一个总结,一般 zookeeper 的安装部署可以有三种模式,单机模式、伪分布式和分布式,这三种模式在什么时候应用具体看大家的使用场景,如果你只有一台机器且只是想自己开发测试时用,你可以安装个单机模式,简单又实用。如果想装逼但又没有足够的机器,那你可以选择伪分布式的方式搭建,这可以满足你内心高大上的分布式需求又可以满足没有机器的屌丝现状。如果手头有三台以上的服务器,那就可以大展高富帅的风采,直接上真的分布式,真的分布式部署一般是在系统的正式环境中应用。下面我来对这三种搭建模式作个介绍。
本人用的是 CentOS 系统,zookeeper-3.4.9,Java-1.8,Java 环境的搭建以及 zookeeper 的下载我在这里就不再多说了,我的所有操作都是在 /data/zookeeper 目录下。
一、单机模式
1. 新建目录 zookeeper_single,将下载好的 zookeeper-3.4.9.tar.gz 拷进该目录。
2. 解压 zookeeper。
tar –zxvf zookeeper-3.4.9.tar.gz
3. 在 zookeeper-3.4.9 目录下新建 data,logs 两个文件夹。
4. 进入 zookeeper-3.4.9/conf 目录,把 zoo_sample.cfg 文件复制一份名字改成 zoo.cfg。
cp zoo_sample.cfg zoo.cfg
5. 修改 zoo.cfg 文件,需要修改以下几个地方。
dataDir=/data/zookeeper/zookeeper_single/zookeeper-3.4.9/data
dataLogDir=/data/zookeeper/zookeeper_single/zookeeper-3.4.9/logs
clientPort=2181
6. 配置完以后,就可以启动 zookeeper 服务了,进入 zookeeper-3.4.9/bin 目录,启动 zookeeper 服务。
./zkServer.sh start
7. 启动完成后,查看服务状态。
./zkServer.sh status
二、伪分布式模式
1. 新建目录 zookeeper_cluster_fake,将下载好的 zookeeper-3.4.9.tar.gz 拷进该目录。
2. 解压 zookeeper。
tar –zxvf zookeeper-3.4.9.tar.gz
3. 解压后将 zookeeper-3.4.9 改名为 zookeeper_01,在 zookeeper_01 目录下新建 data,logs 两个文件夹。
4. 进入 zookeeper_01/conf 目录,把 zoo_sample.cfg 文件复制一份名字改成 zoo.cfg。
cp zoo_sample.cfg zoo.cfg
5. 将 zookeeper_01 再复制两份分别取名为 zookeeper_02 和 zookeeper_03。
cp zookeeper_01 zookeeper_02
cp zookeeper_01 zookeeper_03
6. 分别修改 zookeeper_01,zookeeper_02 和 zookeeper_03 中 conf 目录下 zoo.cfg 文件。
zookeeper_01 的配置(其中前三项是配置文件中有的,只要改成自己的配置就可以,后面三项添加到配置文件末尾):
dataDir=/data/zookeeper/zookeeper_cluster_fake/zookeeper_01/data
dataLogDir=/data/zookeeper/zookeeper_cluster_fake/zookeeper_01/logs
clientPort=2181
server.1=192.168.71.82:2881:3881
server.2=192.168.71.82:2882:3882
server.3=192.168.71.82:2883:3883
zookeeper_02 的配置:
dataDir=/data/zookeeper/zookeeper_cluster_fake/zookeeper_02/data
dataLogDir=/data/zookeeper/zookeeper_cluster_fake/zookeeper_02/logs
clientPort=2182
server.1=192.168.71.82:2881:3881
server.2=192.168.71.82:2882:3882
server.3=192.168.71.82:2883:3883
zookeeper_03 的配置:
dataDir=/data/zookeeper/zookeeper_cluster_fake/zookeeper_03/data
dataLogDir=/data/zookeeper/zookeeper_cluster_fake/zookeeper_03/logs
clientPort=2183
server.1=172.16.20.101:2881:3881
server.2=172.16.20.101:2882:3882
server.3=172.16.20.101:2883:3883
7. 分别在 zookeeper_01,zookeeper_02 和 zookeeper_03 三个目录的 data 下新建 myid 文件,内容分别为 server.1,server.2,server.3 后面的数字。
三、分布式模式
1. 选取三台服务器 172.16.20.101,172.16.20.102,172.16.20.103。
2. 在 172.16.20.101 这台服务器 /data/zookeeper 目录下操作,新建目录 zookeeper_cluster,将下载好的 zookeeper-3.4.9.tar.gz 拷进该目录。
3. 解压 zookeeper。
tar -zxvf zookeeper-3.4.9.tar.gz
4. 在 /data/zookeeper/zookeeper_cluster/zookeeper-3.4.9 目录下新建 data,logs 两个文件夹。
5. 进入 zookeeper-3.4.9/conf 目录,把 zoo_sample.cfg 文件复制一份名字改成 zoo.cfg。
cp zoo_sample.cfg zoo.cfg
6. 修改 zoo.cfg 文件,需要修改以下几个地方:
dataDir=/data/zookeeper/zookeeper_cluster/zookeeper-3.4.9/data
dataLogDir=/data/zookeeper/zookeeper_cluster/zookeeper-3.4.9/logs
clientPort=2181
同时在文件末尾添加:
server.1=172.16.20.101:2888:3888
server.2=172.16.20.102:2888:3888
server.3=172.16.20.103:2888:3888
7. 将配置好的 zookeeper 复制到另外两台服务器上。
scp -r /data/zookeeper root@172.16.20.102:/data
scp -r /data/zookeeper root@172.16.20.103:/data
8. 分别在三台服务器的 /data/zookeeper/zookeeper_cluster/zookeeper-3.4.9/data 目录下新建 myid 文件,内容分别为 server.1,server.2,server.3 后面的数字,例如:在 172.16.20.101 服务器上执行如下命令,另外两台服务器类似。
echo “1” > myid
9. 分别进入三台服各器的 /data/zookeeper/zookeeper_cluster/zookeeper-3.4.9/bin 目录下,启动服务。
./zkServer.sh start
10. 启动完成后,查看服务状态。
./zkServer.sh status
在 CentOS7 上安装 Zookeeper-3.4.9 服务 https://www.linuxidc.com/Linux/2016-09/135052.htm
ZooKeeper 官方文档翻译——ZooKeeper Overview 3.4.6 https://www.linuxidc.com/Linux/2016-12/138025.htm
CentOS 下 ZooKeeper 3.4.8 集群环境搭建 https://www.linuxidc.com/Linux/2016-12/137958.htm
CentOS 7 下 Zookeeper 集群安装 https://www.linuxidc.com/Linux/2017-01/139733.htm
分布式服务 Dubbo+Zookeeper 安全认证 https://www.linuxidc.com/Linux/2017-12/149605.htm
Linux 下安装 Zookeeper 集群 https://www.linuxidc.com/Linux/2017-01/139545.htm
Linux 下 Zookeeper 集群的安装 https://www.linuxidc.com/Linux/2017-03/141400.htm