centos7 离线安装zookeeper集群

ZooKeeper 的目标就是封装好复杂易出错的关键服务,将简单易用的接口和性能高效、功能稳定的系统提供给用户。

防止单点故障:ZooKeeper群架通常有2n+1台Server组成,每台Server都知道彼此的存在。对于2n+1台Server,只要有n+1(即一般以上)Server可用,整个集群就保持可用。当然,单个ZooKeeper也可以搭建,只是没有了高可用的特性。

 

本次安装3台虚拟机测试

 

1、安装jdk

#解压文件到/usr/local

#tar -zxvf jdk-8u131-linux-x64.gz -C /usr/local

#修改环境变量

#vi /etc/profile

在文件末尾加上下边内容:

#set java environment
JAVA_HOME=/usr/local/jdk1.8.0_131
CLASSPATH=$JAVA_HOME/lib/
PATH=$PATH:$JAVA_HOME/bin
export JAVA_HOME CLASSPATH PATH

#生效

#source /etc/profile

 

2、安装zookeeper

 

下载地址:http://archive.apache.org/dist/zookeeper/ 

本次测试安装:apache-zookeeper-3.8.0-bin.tar.gz

 

 

创建数据和日志目录

#mkdir -p /home/zookeeper/data

#mkdir -p /home/zookeeper/data

#解压文件到/usr/local

#tar -zxvf apache-zookeeper-3.8.0-bin.tar.gz -C /usr/local/

#编辑配置文件

#cd /usr/local/apache-zookeeper-3.8.0-bin/conf/ 

#cp zoo_sample.cfg zoo.cfg

#备份 zoo_sample.cfg为 zoo_sample.cfg.bak,不能用两个cfg文件,否则启动失败

#mv zoo_sample.cfg zoo_sample.cfg.bak

#vi zoo.cfg

主要信息:

tickTime=2000

initLimit=10
syncLimit=5
#数据目录和日志目录,这个要提前创建  zookeeper不会帮创建的,不创建会报错
dataDir=/home/zookeeper/data
dataLogDir=/home/zookeeper/logs
# 客户端口,建议修改,不使用默认
clientPort=2181

#server 集群地址
server.1=192.168.59.102:2888:3888
server.2=192.168.59.103:2888:3888
server.3=192.168.59.104:2888:3888

 

 创建myid

#进入配置好的数据文件目录

#cd /home/zookeeper/data

#创建

#echo 1 > myid

 

myid文件中只有一个数字,即一个Server ID。例如,server.1 的myid文件内容就是“1”。

注意,请确保每个server的myid文件中id数字不同,并且和server.id=host:port:port中的id一致。id的范围是1~255

 

以上是第一个服务器的安装,再另外安装2台

重复以上步骤,只有myid文件不一样

#echo 2 > myid

#echo 3 > myid

 3、验证:

3台虚拟机安装之后

启动服务:

注意开放防火墙端口,因为是自己的虚拟机  直接关闭防火墙

#/usr/local/apache-zookeeper-3.8.0-bin/bin/zkServer.sh start

102:

 

 

103:

 

 

104:

 

 

4、测试

关闭103的服务

 

 102还是follower:

 

 104成为新的leader:

 

posted @ 2022-05-17 16:36  leihongnu  阅读(297)  评论(0编辑  收藏  举报