Zookeeper集群的搭建

  • Post author:
  • Post category:其他


软件环境:

Linux服务器:1台,3台,5台(2*n+1),因为zookeeper的工作原理,只要存活的机子数在半数以上,就能正常工作,比如我们有3台机子,那么存活两台机子就能工作。比如有4台机子,我们需要存活三台才可以工作,这两者都是只能关闭一台才能对外提供服务。所以偶数的机子没有太大的必要。

JAVA: jdk 1.7.

zookeeper : after 3.4.6 (比较稳定的版本).

搭建过程:以我们有三台linux服务器为例

1.在3台服务器上面都下载好jdk和zookeeper的tar包

2.mkdir jdk 和mkdir zookeeper在三台机子都创建jdk和zookeeper两个目录.

3.在三台机器把下载好的tar包都分别放入我们创建的目录里面(jdk的放入jdk, zookeeper放入zookeeper), 使用cp命令.

4. 进入jdk的目录 , tar -zxvf jdk-7u67-linux-x64.tar.gz 解压tar包 。 (三个服务器做同样的事情。)

5.进入jdk的根目录,cd /jdk/jdk1.7.0_67   pwd 列出目录 配置环境变量.

6.配置环境变量有两种方式:

a.  vim ./.bashrc  对当前用户有效

b. vim  /etc/profile   对所有用户有效

7.tar -zxvf 解压zookeeper的压缩包

8.创建zkdata和zkdatalog目录 在/zookeeper下面 。

9.进入zkp的配置目录,查看zoo_sample.cfg .并且 cp zoo_sample.cfg zoo.cfg重新命名一个配置文件.

10.查看zoo.cfg文件把dataDir目录的值变为我们刚刚创建的zkdata目录的位置。 (快照日志)

新增一个目录配置dataLogDir= 我们配置的zkdatalog目录 。 用于存放事物日志(事物日志)。

11.改变端口 防止端口已经被占用.

12. 用于配置slave 和leader . 只有一个leader其他都是slaver.

server.1=  本机的ip: 端口 (官方推荐是2888): 端口(官方推荐是3888) (通过hostname -i 可以查看)

server.2=  第二台机器的ip: (官方推荐是2888): 端口(官方推荐是3888)

server.3=  第三台机器的ip: (官方推荐是2888): 端口(官方推荐是3888)

13.进入快照目录zkdata cd ../../zkdata ,  通过echo “1” >myid .同样 在第二第三台机器上面copuy zoo.cfg的配置文件 。  在第二台机器创建myid 文件 (echo “2” > myid) , 第三台机器创建 echo “3” > myid (使用重定向到myid文件中).

14.进入zkp 的 bin目录, 执行./zkServer.sh 会列出我们需要的参数 包括start |start -foreground | stop |restart 等  .

启动就是./zkServer.sh start

15.同样在其他机器也进行启动.

16. 通过./zkSever.sh status 查看各个机器的状态  可以看到机器是属于follower还是leader .

转载于:https://my.oschina.net/u/3138201/blog/1538260