zookeeper作为一款分布式协调中间件,其重要性不言而喻,因此需要保证其高可用性。所以一般都会搭建zookeeper集群,今天我们在一台服务器上搭建伪集群。
首先,需要准备zookeeper的安装包,从官网自行下载,上传到云服务器上或者自己的虚拟机上。我选择上传到/user/local/zk目录下。请选择bin.tar.gz结尾的文件,tar.gz文件需要自己进行编译之后才能使用。
解压压缩文件到同级目录
进入apache-zookeeper-3.6.3-bin,目录展示如下
重点关注bin和conf文件夹
bin目录中,关注.sh结尾命令,这是linux环境下的命令,.cmd则是windows环境下的命令,zkCli.sh是客户端命令,通过该命令可以连接指定的zookeeper服务器,zkServer.sh则是客户端命令,通过该命令可以进行zookeeper服务器的启动停止等。
conf目录中,最重要的zoo_sample.cfg文件,这个是zookeeper的最重要的配置文件的模板文件。
简单介绍完毕,现在开始正式搭建伪集群(模拟三台服务器,以下称为3台服务器)
复制zoo_sample.cfg在conf目录中创建3个配置文件,zoo1.cfg 、zoo2.cfg、 zoo3.cfg
apache-zookeeper-3.6.3-bin目录下创建data目录,然后在data目录下分别创建zk1、zk2
、zk3三个目录,分别作为三台服务器的数据目录(主要存放zookeeper的业务数据)
在data目录各自的服务器目录下面创建自己的节点文件,注意内容必须要跟配置文件中规定的机器ID一致
apache-zookeeper-3.6.3-bin目录下创建logs目录,然后在logs目录下分别创建zk1、zk2
、zk3三个目录,分别作为三台服务器的日志目录
回到conf目录,分别修改zoo1.cfg、zoo2.cfg、zoo3.cfg文件,主要修改如下
通过命令zkServer.sh start指定配置文件分别启动三台服务器
启动成功之后,通过命令zkServer.sh status可以查看个节点状态
从截图中可以看到,zk2服务器成为了leader,其余为follower,整个zookeeper伪集群搭建就完成了,可以通过以下命令连接该zookeeper伪集群
./zkCli.sh -server localhost:2181
./zkCli.sh -server localhost:2182
./zkCli.sh -server localhost:2183
zookeeper伪集群的搭建就记录到这里,有问题请多多指教!