当前位置:   article > 正文

Zookeeper 集群部署_zookeeper部署

zookeeper部署
一、 Zookeeper 简介

ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件。它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步、组服务等。

  1. zookeeper 集群node节点数量 n -1宕机,集群仍然可以正常提供服务,所以一般以奇数的节点组成集群,故集群节点数量通常为 3节点,5节点 …
二、 Zookeeper 集群部署
  • 部署环境
操作系统IP主机名
CentOS Linux release 7.5.1804 (Core)192.168.169.10zk-node1
CentOS Linux release 7.5.1804 (Core)192.168.169.20zk-node2
CentOS Linux release 7.6.1810 (Core)192.168.169.30zk-node3

1、zookeeper 依赖 JDK,检查每个节点是否安装jdk ,如果没有则需安装JDK

[root@zk-node1 zookeeper]# java -version      //执行命令会显示JDK版本信息
openjdk version "1.8.0_161"
OpenJDK Runtime Environment (build 1.8.0_161-b14)
OpenJDK 64-Bit Server VM (build 25.161-b14, mixed mode)
  • 1
  • 2
  • 3
  • 4

2、zookeeper 节点之间需要互相通信,需要关闭防火墙,保证节点之间网络连通正常,在每个节点执行

[root@zk-node1 zookeeper]# setenforce 0
[root@zk-node1 zookeeper]# sed -ri  's/^(SELINUX=).*/\1disable/g'  /etc/selinux/config 
[root@zk-node1 zookeeper]# systemctl stop firewalld
[root@zk-node1 zookeeper]# systemctl disable  firewalld
  • 1
  • 2
  • 3
  • 4

3、zookeeper 官网下载安装包,上传至所有节点服务器,并解压
zookeeper 官网

[root@zk-node1 zookeeper]# ls
apache-zookeeper-3.7.1-bin.tar.gz
[root@zk-node1 zookeeper]# tar xvf apache-zookeeper-3.7.1-bin
  • 1
  • 2
  • 3

4、修改主配置文件

[root@zk-node1 zookeeper]# cd apache-zookeeper-3.7.1-bin/conf/
[root@zk-node1 conf]# cp zoo_sample.cfg   zoo.cfg 
[root@zk-node1 conf]# cat  zoo.cfg
# Follower和Leader之间的心跳检测时间
tickTime=2000
# Follower和Leader的连接超时时间
initLimit=10
# Follower数据同步Leader的超时时间
syncLimit=5
#指定数据存储路径
dataDir=/home/zookeeper/apache-zookeeper-3.7.1-bin/data     
#指定日志路径
dataLogDir=/home/zookeeper/apache-zookeeper-3.7.1-bin/logs 
#zookeeper 监听在本地端口
clientPort=2181  
#组成集群内的所有节点
server.1=192.168.169.10:2188:3288              
server.2=192.168.169.20:2188:3288
server.3=192.168.169.30:2188:3288
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19

示例配置server.1=192.168.169.10:2188:3288 表示如下

server.1                  表示节点序列号
192.168.169.10            集群节点的IP
2188                      节点之间内部通信端口
3288                      节点之间 master 选举端口
  • 1
  • 2
  • 3
  • 4

5、在所有节点创建数据目录和日志目录

[root@zk-node1 ~]# mkdir /home/zookeeper/apache-zookeeper-3.7.1-bin/data/
[root@zk-node1 ~]# mkdir /home/zookeeper/apache-zookeeper-3.7.1-bin/logs/
  • 1
  • 2

6、将这个配置文件拷贝到其他节点相同的路径下

[root@zk-node1 conf]# scp zoo.cfg  root@192.168.169.20:/home/zookeeper/apache-zookeeper-3.7.1-bin/conf/
[root@zk-node1 conf]# scp zoo.cfg  root@192.168.169.30:/home/zookeeper/apache-zookeeper-3.7.1-bin/conf/
  • 1
  • 2

7、分别在所有节点的数据目录下创建 myid 文件并写入序列号,每个节点序列号必须和主配置文件一致

[root@zk-node1 ~]# cd  /home/zookeeper/apache-zookeeper-3.7.1-bin/data/
[root@zk-node1 data]# echo 1 > myid
[root@zk-node2 ~]# cd  /home/zookeeper/apache-zookeeper-3.7.1-bin/data/
[root@zk-node2 data]# echo 2 > myid
[root@zk-node3 ~]# cd  /home/zookeeper/apache-zookeeper-3.7.1-bin/data/
[root@zk-node3 data]# echo 3 > myid
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

8、所有节点启动 zookeeper

[root@zk-node1 ~]# sh /home/zookeeper/apache-zookeeper-3.7.1-bin/bin/zkServer.sh  start
[root@zk-node2 ~]# sh /home/zookeeper/apache-zookeeper-3.7.1-bin/bin/zkServer.sh  start
[root@zk-node3 ~]# sh /home/zookeeper/apache-zookeeper-3.7.1-bin/bin/zkServer.sh  start
  • 1
  • 2
  • 3

9、查看节点的状态 ,leader 为主节点,follower为 从节点

[root@zk-node1 ~]# /home/zookeeper/apache-zookeeper-3.7.1-bin/bin/zkServer.sh status
/usr/bin/java
ZooKeeper JMX enabled by default
Using config: /home/zookeeper/apache-zookeeper-3.7.1-bin/bin/../conf/zoo.cfg
Client port found: 2181. Client address: localhost. Client SSL: false.
Mode: leader

[root@zk-node2 ~]# /home/zookeeper/apache-zookeeper-3.7.1-bin/bin/zkServer.sh  status
ZooKeeper JMX enabled by default
Using config: /home/zookeeper/apache-zookeeper-3.7.1-bin/bin/../conf/zoo.cfg
Client port found: 2181. Client address: localhost. Client SSL: false.
Mode: follower

[root@zk-node3 ~]# /home/zookeeper/apache-zookeeper-3.7.1-bin/bin/zkServer.sh  status
ZooKeeper JMX enabled by default
Using config: /home/zookeeper/apache-zookeeper-3.7.1-bin/bin/../conf/zoo.cfg
Client port found: 2181. Client address: localhost. Client SSL: false.
Mode: follower
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Cpp五条/article/detail/416194
推荐阅读
相关标签
  

闽ICP备14008679号