Zookeeper集群部署

        服务器配置

  • 10.8.8.85
  • 10.8.8.86
  • 10.8.8.87

一、安装JDK

        首先下载JDK,官网下载地址

        下载后解压

1
2
tar zxvf jdk-8u111-linux-x64.tar.gz
mv jdk1.8.0_111/ /usr/local/

        编译文件

1
vim /etc/profile.d/java.sh

        加入配置

1
2
3
4
5
6
JAVA_HOME=/usr/local/jdk1.8.0_111/
JAVA_BIN=/usr/local/jdk1.8.0_111/bin
JRE_HOME=/usr/local/jdk1.8.0_111/jre
PATH=$PATH:/usr/local/jdk1.8.0_111/bin:/usr/local/jdk1.8.0_111/jre/bin
CLASSPATH=/usr/local/jdk1.8.0_111/jre/lib:/usr/local/jdk1.8.0_111/lib:/usr/local/jdk1.8.0_111/jre/lib/charsets.jar
export JAVA_HOME JAVA_BIN JRE_HOME PATH CLASSPATH

        然后初始化环境变量

1
source /etc/profile.d/java.sh

        如果以上配置成功,下面就可以看到java得版本

1
2
3
4
java -version
java version "1.8.0_111"
Java(TM) SE Runtime Environment (build 1.8.0_111-b14)
Java HotSpot(TM) 64-Bit Server VM (build 25.111-b14, mixed mode)

二、部署前准备

1、下载zookeeper安装包

        官方下载地址

        下载的版本是zookeeper-3.4.10

2、将下载的zookeeper-3.4.10包放到/opt目录下

3、在/tmp目录下新建一个zookeeper的目录,并在zookeeper目录下新建一个data目录

三、部署zookeeper集群环境

1、首先配置zoo.cfg文件

        将/usr/local/src/zookeeper-3.4.10/conf目录下的zoo-sample.cfg文件名统一修改为zoo.cfg

        然后编辑zoo.cfg

1
vim zoo.cfg

        修改配置如下

1
2
3
4
5
6
7
8
9
initLimit=10
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/tmp/zookeeper
clientPort=2181
server.1=10.8.8.85
server.2=10.8.8.86
server.3=10.8.8.87

        其中:

  • initLimit=10:对于从节点最初连接到主节点时的超时时间,单位为tick值的倍数。
  • syncLimit=5:对于主节点与从节点进行同步操作时的超时时间,单位为tick值的倍数。
  • dataDir=/tmp/zookeeper:用于配置内存数据库保存的模糊快照的目录。即刚刚创建的data文件夹就是在此目录中。文件信息都存放在data目录下。
  • clientPort=2181:表示客户端所连接的服务器所监听的端口号,默认是2181.即zookeeper对外提供访问的端口号。

2、新建myid文件

        在三台服务器上刚刚创建的data目录下新建一个myid文件并打开

1
vim mydi

        在10.8.8.85上输入1;10.8.8.86上输入2;在10.8.8.87上输入3,保存并退出。

3、配置环境变量

1
vim /etc/profile

        在最后添加

1
2
export ZOOKEEPER_HOME=/opt/srczookeeper-3.4.10
export PATH=$PATH:$ZOOKEEPER_HOME/bin:$ZOOKEEPER_HOME/conf

        保存后刷新,使修改生效

1
source /etc/profile

4、启动zookeeper

        分别在三台服务器上/opt/zookeeper-3.4.10/bin目录下启动

  • zkServer.sh start #启动
  • zkServer.sh restart #重启
  • zkServer.sh status #查看状态
  • zkServer.sh stop #关闭
  • zkServer.sh start-foreground #以打印日至方式启动

        三台服务器启动

1
./zkServer.sh start

        查看状态

1
./zkServer.sh status

01

        显示成功,选择的这台服务器是follower,另两台一台是leader一台是follower。