【Linux】zookeeper构造伪集群
1、在一台机器装安装3个zk server,构建伪集群模式
安装步骤如下:
1、下载zookeeper,下载地址:http://mirror.bit.edu.cn/apache/zookeeper/zookeeper-3.4.6/
2、解压到三个目录下,如
/data/zookeeper/zServer1,/data/zookeeper/zServer2,/data/zookeeper/zServer3
3、创建每个目录下的conf/zoo.cfg配置文件
如
/data/zookeeper/zServer1/confzoo.cfg 内容如下:
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/data/zookeeper/zServer1/tmp/data
dataLogDir=/data/zookeeper/zServer1/tmp/log
clientPort=2181
server.1=127.0.0.1:2287:3387
server.2=127.0.0.1:2288:3388
server.3=127.0.0.1:2289:3389
其他的/data/zookeeper/zServer2/conf/zoo.cfg /data/zookeeper/zServer3/conf/zoo.cfg,与zServer1的相同
注意:
因为是在一台机器上模拟集群,所以端口不能重复,这里用2181~2183,2287~2289,以及3387~3389相互错开。另外每个zk的instance,都需要设置独立的数据存储目录、日志存储目录,所以dataDir、dataLogDir这二个节点对应的目录,需要手动先创建好。
4、另外还有一个灰常关键的设置,在每个zk server配置文件的dataDir所对应的目录下,必须创建一个名为myid的文件,其中的内容必须与zoo.cfg中server.x 中的x相同,即:
/data/zookeeper/zServer1/data/myid 中的内容为1,对应server.1中的1
/data/zookeeper/zServer2/data/myid 中的内容为2,对应server.2中的2
/data/zookeeper/zServer3/data/myid 中的内容为3,对应server.3中的3
生产环境中,分布式集群部署的步骤与上面基本相同,只不过因为各zk server分布在不同的机器,上述配置文件中的localhost换成各服务器的真实Ip即可。分布在不同的机器后,不存在端口冲突问题,可以让每个服务器的zk均采用相同的端口,这样管理起来比较方便。
5、启动验证
进入每个zServer的bin/目录下执行 zServer.sh start进行启动,若已启动,请杀掉进程后启动。
启动成功后,执行jps查看进程,或用zServer.sh status查看状态
PS:如果无须集群服务,只需要将zookeeper/zServer3/conf/zoo.cfg文件中下方几个server.X注释掉就好