Zookeeper的的配置可以分为三种,单机,伪集群和集群,三者具体操作差不多(集群时无非就修改一下配置文件),因为现在手上就一台服务器,记录一下单机模式,即一台服务器既当leader,也当follower。
Step1: 把zookeeper的tar包放在 /opt目录下 解压。 并把文件夹名改为zookeeper。如下图
进入解压完后的文件夹,查看一下当前文件,zookeeper的主要配置文件就放在conf文件夹下,如下图所示:
Step2: 进入conf文件夹,里面有一个名为zoo_sample.cfg的文件,为了避免把原配置文件玩坏,我把它改名为zoo.cfg ,如下图
Step3: 在修改配置文件之前,先在linux的 /var目录下新建一个文件夹取名为zookeeper,作用:因为linux常用的动态文件输出一般都放在/var下,在/var建立一个名为zookeeper的文件夹用来存放将来zookeeper运行时的日志输出。如下图:
Step4: 最重要的一步,对配置文件进行修改: 进入zoo.cfg 找到dataDir,让其指刚才创建的/var/zookeeper,作用就不用多说了。
在配置文件的最后一行配置ip地址和端口号:
具体含义:server.1意思是第一台服务器,因为我这里只用了一台,所以配置一条即可,如果在真的集群的情况下,依次增加相应的配置即可。
这里为什么要配置两个端口号呢?一开始我也疑惑,后来查资料知道,第一个端口号代表的follower和leader通信的端口,第二个端口用来zookeeper选举时的投票通信,但是不幸的是我们配置的这两个都不是zookeeper对外提供服务的端口号,
也就是说我们编程时用的端口号并不是这两个,而是配置文件中另一个名为clientport的端口号, 默认为2181,当然可以修改。如下图。
这样对配置文件的基本操作就完成了,如果是多台服务器的真实集群的情况下,用 scp 命令将配置好的文件拷贝到相应服务器即可。
Step5 :回到/var目录下建一个名为myid的文件,然后在第一行写入一个 1,保存退出。个人理解,zookeeper在启动时应该会去读这个名为myid的文件,查看当前的服务器id号是多少,1就代表当前的服务器id号是1。
Step6 : 下面可以启动zookeeper了,首先进入 /opt/zookeeper/bin的文件夹下。可以查看一下该目录下的文件。 具体操作如下图:
可以通过 zkServer.sh启动(停止)Zookeeper 具体命令 : ./zkServer.sh start(stop) 操作如下图:
上图中标红的started表示 启动成功。这样Zookeeper 的基本配置和启动就完成了。