欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Zookeeper 集群安装配置,超详细,速度收藏!

程序员文章站 2022-04-11 21:53:05
今天,栈长分享下 Zookeeper 的集群安装及配置。 下载 下载地址:http://zookeeper.apache.org/ 下载过程就不说了,我们下载了最新的 。 安装 1、上传安装包 把下载的最新的包(如:zookeeper 3.4.11.tar.gz)上传到服务器,上传的方式也不多说了。 ......

今天,栈长分享下 zookeeper 的集群安装及配置。

下载

下载地址:http://zookeeper.apache.org/

下载过程就不说了,我们下载了最新的zookeeper-3.4.11

安装

1、上传安装包

把下载的最新的包(如:zookeeper-3.4.11.tar.gz)上传到服务器,上传的方式也不多说了。

2、解压

$ tar zxvf zookeeper-3.4.11.tar.gz

3、移动到/usr/local目录下

$ mv zookeeper-3.4.11 /usr/local/zookeeper

集群配置

zookeeper集群原则上需要2n+1个实例才能保证集群有效性,所以集群规模至少是3台。

下面演示如何创建3台的zookeeper集群,n台也是如此。

1、创建数据文件存储目录

$ cd /usr/local/zookeeper
$ mkdir data

2、添加主配置文件

$ cd conf
$ cp zoo_sample.cfg zoo.cfg

3、修改配置

$ vi zoo.cfg

先把datadir=/tmp/zookeeper注释掉,然后添加以下核心配置。

datadir=/usr/local/zookeeper/data
server.1=192.168.10.31:2888:3888
server.2=192.168.10.32:2888:3888
server.3=192.168.10.33:2888:3888

4、创建myid文件

$ cd ../data
$ touch myid
$ echo "1">>myid

每台机器的myid里面的值对应server.后面的数字x。

5、开放3个端口

$ sudo /sbin/iptables -i input -p tcp --dport 2181 -j accept
$ sudo /sbin/iptables -i input -p tcp --dport 2888 -j accept
$ sudo /sbin/iptables -i input -p tcp --dport 3888 -j accept

$ sudo /etc/rc.d/init.d/iptables save
$ sudo /etc/init.d/iptables restart

$ sudo /sbin/iptables -l -n
chain input (policy accept)
target     prot opt source               destination         
accept     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:3888 
accept     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:2888 
accept     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:2181

6、配置集群其他机器

把配置好的zookeeper目录复制到其他两台机器上,重复上面4-5步。

$ scp -r /usr/local/zookeeper test@192.168.10.32:/usr/local/

7、重启集群

$ /usr/local/zookeeper/bin/zkserver.sh start

3个zookeeper都要启动。

8、查看集群状态

$ /usr/local/zookeeper/bin/zkserver.sh status 
zookeeper jmx enabled by default
using config: /usr/local/zookeeper/bin/../conf/zoo.cfg
mode: follower

客户端连接

./zkcli.sh -server 192.168.10.31:2181

连接本机的不用带-server。

注意

如果是在单机创建的多个zookeeper伪集群,需要对应修改配置中的端口、日志文件、数据文件位置等配置信息。

跟着栈长学 zookeeper,可以在java技术栈微信公众号回复关键字:zookeeper,后续会陆续更新 zookeeper 系列文章。

本文原创首发于微信公众号:java技术栈(id:javastack),关注公众号在后台回复 "java" 可获取更多,转载请原样保留本信息。