centos7下安装zookeeper&zookeeper集群的搭建
一、centos7下安装zookeeper
1.zookeeper 下载地址
https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/
2.安装步骤
前提:安装 jdk 和 JAVA_HOME
第一步:解压缩 zookeeper 安装包
[root@VM_0_11_centos ~]# mkdir zookeeper
[root@VM_0_11_centos ~]# tar -zxvf apache-zookeeper-3.5.-bin.tar.gz -C zookeeper/
第二步:进入 zookeeper/apache-zookeeper-3.5.5-bin/conf 目录,修改配置文件把zoo_sample.cfg改名为zoo.cfg
[root@VM_0_11_centos conf]# cp zoo_sample.cfg zoo.cfg
第三步:创建数据文件目录
[root@VM_0_11_centos zookeeper]# mkdir datadir
[root@VM_0_11_centos zookeeper]# ls
apache-zookeeper-3.5.-bin datadir
[root@VM_0_11_centos zookeeper]# cd datadir/
[root@VM_0_11_centos datadir]# pwd
/root/zookeeper/datadir
第四步:修改 zoo.cfg 文件
tickTime=
initLimit=
syncLimit=
dataDir=/root/zookeeper/datadir
clientPort=
保存退出
3.启动
[root@VM_0_11_centos apache-zookeeper-3.5.-bin]# ls
bin docs LICENSE.txt README.md
conf lib NOTICE.txt README_packaging.txt
[root@VM_0_11_centos apache-zookeeper-3.5.-bin]# bin/zkServer.sh start
ZooKeeper JMX enabled by default
Using config: /root/zookeeper/apache-zookeeper-3.5.-bin/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED
[root@VM_0_11_centos apache-zookeeper-3.5.-bin]#
在运行完第一条指令之后,会出现一些错误异常,产生异常信息的原因是由于Zookeeper 服务的每个实例都拥有全局配置信息,他们在启动的时候会随时随地的进行Leader选举操作。此时,第一个启动的Zookeeper需要和另外两个 Zookeeper实例进行通信。但是,另外两个Zookeeper实例还没有启动起来,因此就产生了这的异样信息。我们直接将其忽略即可,待把图中“2 号”和“3号”Zookeeper实例启动起来之后,相应的异常信息自然会消失。
[root@VM_0_11_centos apache-zookeeper-3.5.-bin]# bin/zkServer.sh status conf/zoo.cfg
ZooKeeper JMX enabled by default
Using config: conf/zoo.cfg
Client port found: . Client address: localhost.
Error contacting service. It is probably not running.
4.查看进程状态
[root@VM_0_11_centos apache-zookeeper-3.5.-bin]# jps
Jps
QuorumPeerMain
[root@VM_0_11_centos apache-zookeeper-3.5.-bin]#
5.启动客户端
[root@VM_0_11_centos apache-zookeeper-3.5.-bin]# bin/zkCli.sh
二、zookeeper 集群的搭建
前言:本次集群是在一台服务器上搭建的在,一台机器上部署了3个 server,需要注意的是在集群为分布式模式下我们使用的每个配置文档模拟一台机器,也就是说单台机器及上运行多个 Zookeeper 实例。但是,必须保证每个配置文档的各个端口号不能冲突,除了 clientPort 不同之外,dataDir 也不同。另外,还要在 dataDir 所对应的目录中创建 myid 文件来指定对应的 Zookeeper 服务器实例。
1.创建必要目录与文件
Zookeeper集群中,每一个节点都需创建data目录、dataLog目录以及myid文件。
1).先创建节点文件
[root@VM_0_11_centos zookeeper]# mkdir server1
[root@VM_0_11_centos zookeeper]# mkdir server2
[root@VM_0_11_centos zookeeper]# mkdir server3
2).创建每个节点所必须的data目录、dataLog目录以及myid文件
[root@VM_0_11_centos zookeeper]# cd server1
[root@VM_0_11_centos server1]# mkdir data
[root@VM_0_11_centos server1]# pwd
/root/zookeeper/server1
[root@VM_0_11_centos server1]# mkdir dataLog
[root@VM_0_11_centos server1]# pwd
/root/zookeeper/server1
[root@VM_0_11_centos server1]# cd data
[root@VM_0_11_centos data]# echo > myid
[root@VM_0_11_centos data]# ls
myid
[root@VM_0_11_centos data]#
其他的节点文件和这个类似,只是 server1 的 myid 文件里面是1 ,而 server2 的 myid 文件里面是2,而 server3 的 myid 文件里面是3。其值为后续zoo.cfg中配置的第几号服务器。
2.修改 zoo.cfg 文件
tickTime=
initLimit=
syncLimit=
dataDir=/root/zookeeper/server1/data
dataLogDir=/root/zookeeper/server1/dataLog
clientPort=
server.=127.0.0.1::
server.=127.0.0.1::
server.=127.0.0.1::
3.创建 zoo2.cfg 和 zoo3.cfg 文件
[root@VM_0_11_centos conf]# ls
configuration.xsl zoo.cfg
log4j.properties zoo_sample.cfg
[root@VM_0_11_centos conf]# cp zoo.cfg zoo2.cfg
[root@VM_0_11_centos conf]# cp zoo.cfg zoo3.cfg
[root@VM_0_11_centos conf]# ls
configuration.xsl zoo2.cfg zoo.cfg
log4j.properties zoo3.cfg zoo_sample.cfg
[root@VM_0_11_centos conf]#
4.根据第三步修改 zoo2.cfg 和 zoo3.cfg 配置文件
clientPort=2182
dataDir=/root/zookeeper/server2/data
dataLogDir=/root/zookeeper/server2/dataLog
clientPort=2183
dataDir=/root/zookeeper/server3/data
dataLogDir=/root/zookeeper/server3/dataLog
5.启动服务
[root@VM_0_11_centos apache-zookeeper-3.5.-bin]# bin/zkServer.sh start conf/zoo.cfg
ZooKeeper JMX enabled by default
Using config: conf/zoo.cfg
Starting zookeeper ... FAILED TO START
[root@VM_0_11_centos apache-zookeeper-3.5.-bin]# bin/zkServer.sh start conf/zoo2.cfg
ZooKeeper JMX enabled by default
Using config: conf/zoo2.cfg
Starting zookeeper ... FAILED TO START
[root@VM_0_11_centos apache-zookeeper-3.5.-bin]# bin/zkServer.sh start conf/zoo3.cfg
ZooKeeper JMX enabled by default
Using config: conf/zoo3.cfg
Starting zookeeper ... FAILED TO START
[root@VM_0_11_centos apache-zookeeper-3.5.-bin]#
6.查看服务的状态
[root@VM_0_11_centos apache-zookeeper-3.5.-bin]# bin/zkServer.sh status conf/zoo3.cfg
ZooKeeper JMX enabled by default
Using config: conf/zoo3.cfg
Client port found: . Client address: localhost.
Mode: follower
[root@VM_0_11_centos apache-zookeeper-3.5.-bin]# bin/zkServer.sh status conf/zoo.cfg
ZooKeeper JMX enabled by default
Using config: conf/zoo.cfg
Client port found: . Client address: localhost.
Mode: follower
[root@VM_0_11_centos apache-zookeeper-3.5.-bin]# bin/zkServer.sh status conf/zoo2.cfg
ZooKeeper JMX enabled by default
Using config: conf/zoo2.cfg
Client port found: . Client address: localhost.
Mode: leader //2号节点是 leader 节点
[root@VM_0_11_centos apache-zookeeper-3.5.-bin]#
centos7下安装zookeeper&zookeeper集群的搭建的更多相关文章
- centos7下安装部署mongodb集群(副本集模式)
环境需求:Mongodb集群有三种模式: Replica Set, Sharding,Master-Slaver. 这里部署的是Replica Set模式. 测试环境: 这里副本集(Replica ...
- Linux(Centos7)下redis5缓存服务集群分布式搭建
注意:可以查看Redis官网查看集群搭建方式,连接如下 https://redis.io/topics/cluster-tutorial 集群中应该至少有三个节点,每个节点有一备份节点.需要6台服务器 ...
- ZooKeeper伪集群环境搭建
1.从官网下载程序包. 2.解压. [dev@localhost software]$ tar xzvf zookeeper-3.4.6.tar.gz 3.进入zookeeper文件夹后创建data文 ...
- centos7.8 安装部署 k8s 集群
centos7.8 安装部署 k8s 集群 目录 centos7.8 安装部署 k8s 集群 环境说明 Docker 安装 k8s 安装准备工作 Master 节点安装 k8s 版本查看 安装 kub ...
- zookeeper伪集群的搭建
由于公司服务器数量的限制,我们往往没有那么多的服务器用来搭建zookeeper的集群,所以产生了伪集群的搭建,也就是将多个zookeeper搭建在同一台机器上. 准备工作: 1,一台服务器,我们这里用 ...
- Hadoop+HBase+ZooKeeper分布式集群环境搭建
一.环境说明 集群环境至少需要3个节点(也就是3台服务器设备):1个Master,2个Slave,节点之间局域网连接,可以相互ping通,下面举例说明,配置节点IP分配如下: Hostname IP ...
- Zookeeper服务器集群的搭建与操作
ZooKeeper 作用:Zookeeper 可以用来保证数据在zk集群之间的数据的事务性一致(原子操作). 介绍:Zookeeper 是 Google 的 Chubby一个开源的实现,是 Hadoo ...
- 【Zookeeper】集群环境搭建
一.概述 1.1 Zookeeper的角色 1.2 Zookeeper的读写机制 1.3 Zookeeper的保证 1.4 Zookeeper节点数据操作流程 二.Zookeeper 集群环境搭建 2 ...
- zookeeper以及集群的搭建
今天我来写一写zookeeper集群的搭建流程 1.zookeeper的搭建不难,难的是对他的理解以及良好的使用.单机版的zookeeper只需要解压后直接命令 启动即可 解压zookeeper,ta ...
- redis安装、测试&集群的搭建&踩过的坑
1 redis的安装 1.1 安装redis 版本说明 本教程使用redis3.0版本.3.0版本主要增加了redis集群功能. 安装的前提条件: 需要安装gcc:yum install gcc- ...
随机推荐
- iOS——使用FMDB进行数据库操作(转载)
iOS 使用FMDB进行数据库操作 https://github.com/ccgus/fmdb [摘要]本文介绍iOS 使用FMDB进行数据库操作,并提供详细的示例代码供参考. FMDB 使用方法 A ...
- Jenkins增加日志查看内容. 如何查看Jenkins插件的日志?
进入Jenkins日志项 添加新的日志记录 把插件的GroupID信息填入 对应的源代码 日志生成代码 执行插件,即可查看插件里的日志输出
- C#数字除法
C#中计算double a=1/1000:应该结果是0.001,但为什么会变成0呢? C# 中 如果相除的两个数都是整数(int 型) 那么除的结果就是只取整数部分 所以你才会取到0 如果你要取精确的 ...
- Vue项目过程中遇到的小问题
1.给router-link添加点击事件 <router-link to="" @click.native=""></router-link& ...
- 哈夫曼编解码压缩解压文件—C++实现
前言 哈夫曼编码是一种贪心算法和二叉树结合的字符编码方式,具有广泛的应用背景,最直观的是文件压缩.本文主要讲述如何用哈夫曼编解码实现文件的压缩和解压,并给出代码实现. 哈夫曼编码的概念 哈夫曼树又称作 ...
- 岩哥带你飞——Spring 学习1&重要组件
------------------------------------------------------------------------------ 准备工作:1.创建一个web 项目 2.创 ...
- Java的设计模式(2)--单例模式
保证一个类仅有一个实例,并提供一个访问它的全局访问点. 好处: (1)频繁使用的对象,可以省略new操作花费的时间,这对于那些重量级对象而言,是非常客观的一笔开销. (2)由于new的次数 ...
- MongoDB 范围查询
查询价格在200-9000 $gt 大于 $lt 小于 //查询价格200-9000范围的数据 db.prodgory.find({"}}) 查询给定范围数据 $ ...
- I2C读写EEPROM—EEPROM简介
EEPROM 是一种掉电后数据不丢失的存储器,常用来存储一些配置信息,以便系统重新上电的时候加载之.EEPOM 芯片最常用的通讯方式就是 I 2C 协议,本小节以 EEPROM 的读写实验为大家讲解如 ...
- 创客课堂——Scratch的操作界面
大家好,这里是蓝精灵创客公益课堂,我是蓝老师 上期我们了解了scratch软件进行了简单的了解,很多朋友都已经按照上期方法下载安装好了软件. 那么今天蓝老师就和大家一起认识下Scratch的操作界面及 ...