Zookeeper 集群的安装与部署

本文涉及的产品
服务治理 MSE Sentinel/OpenSergo,Agent数量 不受限
简介:

 

一:集群环境

模拟三台zookeeper集群环境,IP规划如下:

Server1:     192.168.189.129

Server2:    192.168.189.131

Server3:    192.168.189.132

 

二:安装环境准备

Zookeeper需在java环境下运行,因此在部署zookeeper环境前,需先安装JDK

1
2
3
# tar -zvxf jdk-7u11-linux-x64.gz
# mv jdk1.7.0_11/ /usr/local/java
# cd /usr/local/java/bin

设置java环境变量,在/etc/profile文件中添加以下信息:

1
2
3
4
5
# export JAVA_HOME=/usr/local/java
# export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
# export PATH=$PATH:$JAVA_HOME/bin
使环境变量生效
# source /etc/profile

 

三:部署安装zookeeper(zookeeper-3.4.5版本为例)

  Server1上部署(部署完成后可将zookeeper目录直接拷贝到Server2,Server3)

 下载zookeeper安装包,解压,配置:

1
2
3
4
# tar -zxvf zookeeper-3.4.5.tar.gz
# mv zookeeper-3.4.5.tar.gz /usr/local/zookeeper  
# cd /usr/local/zookeeper/conf
# cp zoo_sample.cfg zoo.cfg

配置zoo.cfg,配置集群选项:

1
2
3
4
5
6
7
8
9
# cat zoo.cfg
tickTime=2000           (服务器与客户端的心跳时间)
initLimit=10
syncLimit=5
dataDir= /zkdata/zookeeper   (保存数据目录,自定义)
clientPort=2181         (客户端连接端口,可更改)
server.1=192.168.189.129:2888:3888  (集群配置)
server.2=192.168.189.131:2888:3888
server.3=192.168.189.132:2888:3888

配置完Server1,把zookeeper目录拷贝到Server2,Server3:

1
2
# scp -rp /usr/local/zookeeper 192.168.189.131:/usr/local/
# scp -rp /usr/local/zookeeper 192.168.189.132:/usr/local/

在各ServerdataDir目录下创建myid文件:

1
2
3
4
5
6
Server1: 
  #echo “1” >/zkdata/zookeeper/myid
Server2: 
  #echo “2” >/zkdata/zookeeper/myid
Server3: 
  #echo “3” >/zkdata/zookeeper/myid


四:启用zookeeper

在各Server上依次开启zookeeper服务:

1
# /usr/local/zookeeper/bin/zkServer.sh start

查看zookeeper状态:

1
2
3
4
# /usr/local/zookeeper/bin/zkServer.sh status
JMX enabled by default
Using config: /home/usr/local/zookeeper-3 .4.5 /bin/ .. /conf/zoo .cfg
Mode: follower(或是leader)

出现以上信息,说明zookeeper服务启用成功,并且选举出了leaderfollower的集群关系。

 

五:测试zookeeper集群

使用客户端软件连接leader服务器(假设选举出的leaderServer1)

1
#/usr/local/zookeeper/bin/zkCli.sh -server  192.168.189.129

leader上创建一个znode,并退出

wKiom1fNOSGjHxVPAABNS4EHXZk713.png  

连接follower服务器,查看是否存在之前创建的znode

1
#/usr/local/zookeeper/bin/zkCli.sh -server  192.168.189.131

wKioL1fNOUawKfTeAAASPB8yAB0639.png

发现follower服务器上已经有了leader服务器上创建的znode,说明集群生效










本文转自 icenycmh 51CTO博客,原文链接:http://blog.51cto.com/icenycmh/1846495,如需转载请自行联系原作者
相关实践学习
基于MSE实现微服务的全链路灰度
通过本场景的实验操作,您将了解并实现在线业务的微服务全链路灰度能力。
目录
相关文章
|
2月前
|
Docker 容器
在docker中安装zookeeper,并且阿里云服务器配置
在docker中安装zookeeper,并且阿里云服务器配置
205 1
|
7天前
|
Linux
ZooKeeper的安装(Linux版)
ZooKeeper的安装(Linux版)
21 1
|
7天前
|
存储 Java 网络安全
ZooKeeper【搭建 03】apache-zookeeper-3.6.0 伪集群版(一台服务器实现三个节点的ZooKeeper集群)
【4月更文挑战第10天】ZooKeeper【搭建 03】apache-zookeeper-3.6.0 伪集群版(一台服务器实现三个节点的ZooKeeper集群)
12 1
|
28天前
|
算法 Java Linux
zookeeper单机伪集群集群部署
zookeeper单机伪集群集群部署
85 0
|
1月前
|
消息中间件 存储 Kafka
Kafka【环境搭建 02】kafka_2.11-2.4.1 基于 zookeeper 搭建高可用伪集群(一台服务器实现三个节点的 Kafka 集群)
【2月更文挑战第19天】Kafka【环境搭建 02】kafka_2.11-2.4.1 基于 zookeeper 搭建高可用伪集群(一台服务器实现三个节点的 Kafka 集群)
140 1
|
2月前
|
网络协议 中间件 数据库
Zookeeper学习系列【三】Zookeeper 集群架构、读写机制以及一致性原理(ZAB协议)
Zookeeper学习系列【三】Zookeeper 集群架构、读写机制以及一致性原理(ZAB协议)
95 0
|
2月前
|
网络协议
Zookeeper学习系列【二】Zookeeper 集群章节之集群搭建
Zookeeper学习系列【二】Zookeeper 集群章节之集群搭建
34 0
|
3月前
|
Java
搭建Zookeeper集群的搭建
搭建Zookeeper集群的搭建
36 1
|
3月前
|
Dubbo Java 应用服务中间件
微服务框架(七)Docker容器部署(Dubbo、Zookeeper、Dubbo-admin)
此系列文章将会描述Java框架**Spring Boot**、服务治理框架**Dubbo**、应用容器引擎**Docker**,及使用Spring Boot集成Dubbo、Mybatis等开源框架,其中穿插着Spring Boot中日志切面等技术的实现,然后通过gitlab-CI以持续集成为Docker镜像。   **本文为Docker容器部署,包括Dubbo微服务、Zookeeper、Dubbo-admin的部署**
微服务框架(七)Docker容器部署(Dubbo、Zookeeper、Dubbo-admin)
|
3月前
|
安全 Java API
Zookeeper(持续更新) VIP-02 Zookeeper客户端使用与集群特性
2,/usr/local/data/zookeeper-3,/usr/local/data/zookeeper-4,在每个目录中创建文件。创建四个文件夹/usr/local/data/zookeeper-1,/usr/local/data/zookeeper-Follower:只能处理读请求,同时作为 Leader的候选节点,即如果Leader宕机,Follower节点。己对外提供服务的起始状态。E: 角色, 默认是 participant,即参与过半机制的角色,选举,事务请求过半提交,还有一个是。