搭建 zookeeper 集群
-
每个根据服务器总数得到 需要安装 zookeeper 的服务器的数量,然后再相应服务器上安装 Java jdk 和 zookeeper
-
jdk 安装成功后,配置环境变量
在 环境变量文件 /etc/profile 的最下面 复制下面这段 注意jdk 安装目录使用自己的安装目录
export JAVA_HOME=/usr/local/jdk1.8.0_181 #jdk安装目录 export JRE_HOME=${JAVA_HOME}/jre export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib:$CLASSPATH export JAVA_PATH=${JAVA_HOME}/bin:${JRE_HOME}/bin export PATH=$PATH:${JAVA_PATH}
-
,可以使用 Javac 和 java -version 这两个来验证是否 安装成功
-
将 Zookeeper 解压成功之后,比如解压成功后得到 文件夹 zookeeper + 版本号
-
那么在这个文件加夹下创建文件夹 zkData, 用来存储该zookeeper 的数据
-
在该文件夹下 创建文件,文件名为 myid,并在该文件中 编辑其唯一的id (可以自定义,多个服务器之间不重复)
-
再 conf 文件夹下,找到 zoo_sample.bin.cfg 文件 ,改名为 zoo.cfg
-
首先将 打开文件zoo.cfg ,将其中 dataDir 路径改为 我们之前设置的 zkData 路径
-
再在其文档尾部加上配置 将每个装有zookeeper 的服务器 的信息都要按如下格式编写
server.myid=ip地址:2888:3888 这里的 2888 时follower 服务器 和 集群中leader 服务器交换信息的端口 这里的 3888 是follower 服务器之间 在leader 宕机之后,重新推举 leader 的时候后,使用的端口 myid 就是myid 文件中相应的文件
-
在 启动服务器的时候,会遵从半数原则,也就是 当集群中半数以上的服务器zookeeper 启动的时候,其状态才会启动
-
如果达到条件 但仍然报错 显示不能链接,probably not connected,
- 对于linux 虚拟机来讲,首先查看各个服务器的 zoo.conf是否编写正确
- 在1 的条件下,关闭 防火墙,使得各个端口可以 访问得到
-
在每个服务器上重复上述 操作
-
如此这般,便可搭建成功