書接上文,第一篇介紹的是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路經分別爲: