zookeeper安装

一、zookeeper简介

ZooKeeper 是一种用于分布式应用程序的分布式开源协调服务。它是一个为分布式应用提供高一致性服务的软件,可以使用它实现负载均衡、配置管理,命名服务等功能

二、单节点安装

以下安装以3.6.4版本为例进行讲解

1、获取安装包并解压

cd $HOME/middle
wget -c https://dlcdn.apache.org/zookeeper/zookeeper-3.6.4/apache-zookeeper-3.6.4-bin.tar.gz
tar -zxvf apache-zookeeper-3.6.4-bin.tar.gz

2、zookeeper目录结构

yiifung@master01 apache-zookeeper-3.6.4-bin]$ ll
total 36
drwxr-xr-x. 2 yiifung yiifung  4096 Dec 18  2022 bin  --------------启动脚本以及命令行所在位置
drwxr-xr-x. 2 yiifung yiifung    77 Dec 18  2022 conf  --------------配置文件所在位置
drwxr-xr-x. 5 yiifung yiifung  4096 Dec 18  2022 docs  ------------文档文件
drwxrwxr-x. 2 yiifung yiifung  4096 Jul 31 21:18 lib
-rw-r--r--. 1 yiifung yiifung 11358 Dec 18  2022 LICENSE.txt
-rw-r--r--. 1 yiifung yiifung  2084 Dec 18  2022 NOTICE.txt
-rw-r--r--. 1 yiifung yiifung  1963 Dec 18  2022 README.md
-rw-r--r--. 1 yiifung yiifung  3166 Dec 18  2022 README_packaging.md
[yiifung@master01 apache-zookeeper-3.6.4-bin]$ 

#配置文件目录
[yiifung@master01 apache-zookeeper-3.6.4-bin]$ cd conf/
[yiifung@master01 conf]$ ll
total 12
-rw-r--r--. 1 yiifung yiifung  535 Dec 18  2022 configuration.xsl
-rw-r--r--. 1 yiifung yiifung 3435 Dec 18  2022 log4j.properties
-rw-r--r--. 1 yiifung yiifung 1148 Dec 18  2022 zoo_sample.cfg
[yiifung@master01 conf]$ 

3、修改配置文件

zookeeper的配置文件是conf/zoo.cfg,可以由zoo_sample.cfg复制出来一个并修改

cd $HOME/middle/apache-zookeeper-3.6.4-bin/conf
cp zoo_sample.cfg zoo.cfg

修改后的配置文件如下所示

[yiifung@master01 conf]$ cat zoo.cfg 
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/home/yiifung/middle/apache-zookeeper-3.6.4-bin/data
clientPort=2181

4、启动并连接

cd /home/yiifung/middle/apache-zookeeper-3.6.4-bin/bin
[yiifung@master01 bin]$ pwd
/home/yiifung/middle/apache-zookeeper-3.6.4-bin/bin
[yiifung@master01 bin]$ ./zkServer.sh start
/usr/bin/java
ZooKeeper JMX enabled by default
Using config: /home/yiifung/middle/apache-zookeeper-3.6.4-bin/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED
[yiifung@master01 bin]$

连接zookeeper服务器

[yiifung@master01 bin]$ ./zkCli.sh -server 127.0.0.1:2181

[zk: 127.0.0.1:2181(CONNECTED) 0] ls 
ls [-s] [-w] [-R] path
[zk: 127.0.0.1:2181(CONNECTED) 1] ls /
[zookeeper]
[zk: 127.0.0.1:2181(CONNECTED) 2]

三、集群安装

  对于集群模式,至少需要三台服务器,如果只有两台服务器,则如果其中一台服务器发生故障,则没有足够的机器来形成多数仲裁。则该服务就无法使用,两台服务器本质上不如一台服务器稳定,因为存在两个单点故障。实际上对于集群服务来说,只要大多数节点(除了Observers之外)都启动了,该服务就会可用。所以强烈建议使用奇数台服务器,例如,对于四台机器,ZooKeeper只能处理一台机器的故障;如果两台计算机发生故障,则其余两台计算机不构成多数,所以四台与三台是一样的,但是,使用五台机器,ZooKeeper可以处理两台机器的故障。
  通常,三台服务器对于生产安装来说绰绰有余,但为了在维护期间获得最大的可靠性,一般安装五台服务器。对于三台服务器,如果对其中一台服务器执行维护,则在该维护期间,其他两台服务器之一很容易出现故障。如果你有五个正在运行,你可以把一个拿下来进行维护,并且如果其他四个中的一个突然出现故障,该服务仍然可以正常运行。
  冗余注意事项应包括环境的所有方面。如果您有三台 ZooKeeper 服务器,但它们的网络电缆都插入同一个网络交换机,那么该交换机的故障将使服务整体瘫痪。
环境准备

IP主机名操作系统版本zookeeper节点
192.168.168.128master01CentOS Linux release 7.9.2009 (Core)server.1
192.168.168.127master02CentOS Linux release 7.9.2009 (Core)server.2
192.168.168.126master03CentOS Linux release 7.9.2009 (Core)server.3

在每台机器上执行如下操作

cd $HOME/middle
wget -c https://dlcdn.apache.org/zookeeper/zookeeper-3.6.4/apache-zookeeper-3.6.4-bin.tar.gz
tar -zxvf apache-zookeeper-3.6.4-bin.tar.gz
cd $HOME/middle/apache-zookeeper-3.6.4-bin
cd conf
cat <<EOF >zoo.cfg
tickTime=2000
dataDir=/home/yiifung/middle/apache-zookeeper-3.6.4-bin/data
clientPort=2181
initLimit=5
syncLimit=2
server.1=192.168.168.128:2888:3888
server.2=192.168.168.127:2888:3888
server.3=192.168.168.126:2888:3888
EOF

在server.N对应的服务器上将server.N中的N值输入到myid文件中

echo  1 >/home/yiifung/middle/apache-zookeeper-3.6.4-bin/data/myid

启动

../bin/zkServer.sh  start

连接

../bin/zkCli.sh  -server 192.168.168.128:2181
../bin/zkCli.sh  -server 192.168.168.127:2181
../bin/zkCli.sh  -server 192.168.168.126:2181

集群状态检查

[yiifung@master01 data]$ ../bin/zkServer.sh  status 
/usr/bin/java
ZooKeeper JMX enabled by default
Using config: /home/yiifung/middle/apache-zookeeper-3.6.4-bin/bin/../conf/zoo.cfg
Client port found: 2181. Client address: localhost. Client SSL: false.
Mode: leader
[yiifung@master01 data]$ 

zkServer命令

[yiifung@master02 logs]$ ../bin/zkServer.sh   --help
/usr/bin/java
ZooKeeper JMX enabled by default
Using config: /home/yiifung/middle/apache-zookeeper-3.6.4-bin/bin/../conf/zoo.cfg
Usage: ../bin/zkServer.sh [--config <conf-dir>] {start|start-foreground|stop|version|restart|status|print-cmd}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值