实验中,我们使用一台机器使用多个端口模拟集群,搭建伪集群
1,上传解压zookeeper安装包。
1 tar -zxvf zookeeper-3.4.6.tar.gz
2,进入zookeeper-3.4.5 文件夹,创建data 和log
1 mkdir data log
2 chmod 777 data
3 chmod 777 log
因为我们搭建伪集群,实际上,我们要创建data1、data2、log1、log2,并赋权限
3,拷贝配置文件
1 cd conf
2 cp zoo_sample.cfg zoo.cfg
3 vim zoo.cfg
因为我们搭建伪集群,实际上我们要拷贝出zoo1.cfg和zoo2.cfg
4,配置zoo.cfg
1 #server1的配置文件
2 dataDir=/opt/solrCloud/zookeeper-3.4.6/data1
3 dataLogDir=/opt/solrCloud/zookeeper-3.4.6/log1
4 clientPort=2181
5 server.1=127.0.0.1:2287:3387
6 server.2=127.0.0.1:2288:3388
7 #server2的配置文件
8 dataDir=/opt/solrCloud/zookeeper-3.4.6/data2
9 dataLogDir=/opt/solrCloud/zookeeper-3.4.6/log2
10 clientPort=2182
11 server.1=127.0.0.1:2287:3387
12 server.2=127.0.0.1:2288:3388
clientPort为zookeeper端口,两个server设置不同即可。
dataDir和dataLogDir将数据文件和日志文件分开存放,同时每个server的这两变量所对应的路径都是不同的。
server.X和myid: server.X 这个数字就是对应,data/myid中的数字。在data1中创建文件myid并写入值1,data2同理。右边可以配置两个端口,第一个端口用于F和L之间的数据同步和其它通信,第二个端口用于Leader选举过程中投票通信,设置成不同的即可。
5,启动zookeeper,因为是模拟集群,需要单机启多个zookeeper,所以启动时需要指定配置文件
1 ./zkServer.sh start ../conf/zoo1.cfg
2 ./zkServer.sh start ../conf/zoo2.cfg
查看状态和启动类似,status后指定配置文件即可。