书接上文,第一篇介绍的是zk单机的搭建,今天就以上一篇为基础来搭建一个伪集群,之因此成为伪集群是由于我只有一台linux服务器(配置三台,第一台在第一篇文章已配置)linux
咱们按照第一篇文章介绍的将zk的tar包解压出另外两个zk分别命名为zookeeper-3.5.7.2和zookeeper-3.5.7.3,因此咱们如今就有了三台zk,以下图:vim
首先咱们登陆第一台zookeeper-3.5.7在zkData里面经过vim myid建立myid文件在里面写入数字1服务器
而后登陆zookeeper-3.5.7.2里面将配置文件修改成zoo.cfg,而后建立myData文件夹,在里面建立myid并写入数字2,zookeeper-3.5.7.3同上写入数字3ide
而后修改对应的dataDir路径:阿里云
zookeeper-3.5.7.2:spa
zookeeper-3.5.7.3:3d
切记配置文件中的clientport要修一下,三台修改分别为218一、218二、2183rest
而后在三个配置文件都加入下面一段配置:(集群模式这样配置的)code
server.1=ip:2888:3888 server.2=ip:2888:3888 server.3=ip:2888:3888
咱们这里是伪集群配置,要保证下面C和D都各不相同才能够哦:server
server.1=localhost:2287:3387 server.2=localhost:2288:3388 server.3=localhost:2289:3389
固然ip你要换成你本身的具体ip,这个模式:server.A=B:C:D
A:就是配置的myid的值;
B:是这个服务器的地址;
C:是这个服务器 Follower 与集群中的 Leader 服务器交换信息的端口;
D:是万一集群中的 Leader 服务器挂了,须要一个端口来从新进行选举,选出一个新的 Leader,而这个端口就是用来执行选举时服务器相互通讯的端口。
其中C和D的端口号咱们本身指定便可(阿里云记得开放端口哦)
而后分别启动三台zk的server:
zk经常使用命令:
./zkServer.sh start
./zkServer.sh stop
./zkServer.sh restart
./zkServer.sh status
都启动以后能够看到三个zk的进程:
固然也能够经过命令来查看咱们当台服务器是属于leader仍是follower
总结:
三台zk路径分别为:
三台dataDir的路径分别为:
三台myid路经分别为: