一、官网

https://zookeeper.apache.org/

二、下载安装

(1)下载

复制链接地址  http://mirror.bit.edu.cn/apache/zookeeper/zookeeper-3.4.14/zookeeper-3.4.14.tar.gz

linux中执行

wget http://mirror.bit.edu.cn/apache/zookeeper/zookeeper-3.4.14/zookeeper-3.4.14.tar.gz

(2)安装与解压

tar -zxvf zookeeper-3.4.14.tar.gz  -C /opt/apps/

结果如下

(3)复制实例

防止出问题,我们复制一份

cp ./zookeeper-3.4.14/ zookeeper1 -r

(4)复制配置文件

复制Zookeeper安装目录下的conf目录中的zoo_sample.cfg文件,并命名为zoo.cfg

cp ./zookeeper/conf/zoo_sample.cfg  zoo.cfg

(5)修改配置文件

说明:

  • 等号左边的“server.数字”,表示要设置第几个zkServer节点。数字一般从1开始计数,依次加1。
  • 等号右边的第一段,表示该zkServer节点的主机,可以是主机名,也可以是主机IP
  • 等号右边的第二段,表示连接端口号。即其它zkServer与当前主机连接的端口号。每台主机的连接端口号可以任意设置,且可不一样。
  • 等号右边的第三段,表示选举端口号。若当前的Leader宕机,各个Follower需要选举新的Leader,这些Follower之间为了选举而相互联系,就使用该端口号。每台主机的选举端口号可以任意设置,且可不一样。
  • 在第四台Server后添加了observer,用于指定其在集群中将以Observer的身份出现

(6)创建myid文件

myid的值与zoo.cfg中指定的主机编号相同。

先创建目录

mkdir -p /usr/data/zookeeper/zk1/


  1. [root@iz2zebb7s8ui8b5mmag51xz ~]# echo 1 > /usr/data/zookeeper/zk1/myid
  2. [root@iz2zebb7s8ui8b5mmag51xz ~]# echo 2 > /usr/data/zookeeper/zk2/myid
  3. [root@iz2zebb7s8ui8b5mmag51xz ~]# echo 3 > /usr/data/zookeeper/zk3/myid
  4. [root@iz2zebb7s8ui8b5mmag51xz ~]# echo 4 > /usr/data/zookeeper/zk4/myid

(7)第四台主机配置额外配置

第四台主机即为要作Observer的主机,除了要完成以上配置,修改myid为4外,还需要修改zoo.conf文件:添加peerType=observer。用于指定当前Server即为Observer。

三、操作Zookeeper

(1)启动

进入用户当前目录

依次启动服务器

./zookeeper1/bin/zkServer.sh start ./zookeeper1/conf/zoo.cfg

./zookeeper2/bin/zkServer.sh start ./zookeeper2/conf/zoo.cfg

./zookeeper3/bin/zkServer.sh start ./zookeeper3/conf/zoo.cfg

./zookeeper4/bin/zkServer.sh start ./zookeeper4/conf/zoo.cfg

(2)查看状态

./zookeeper1/bin/zkServer.sh status ./zookeeper1/conf/zoo.cfg

./zookeeper2/bin/zkServer.sh status  ./zookeeper2/conf/zoo.cfg

./zookeeper3/bin/zkServer.sh status  ./zookeeper3/conf/zoo.cfg

./zookeeper4/bin/zkServer.sh status ./zookeeper4/conf/zoo.cfg

(3)停止

./zookeeper1/bin/zkServer.sh stop ./zookeeper1/conf/zoo.cfg

./zookeeper2/bin/zkServer.sh stop  ./zookeeper2/conf/zoo.cfg

./zookeeper3/bin/zkServer.sh stop  ./zookeeper3/conf/zoo.cfg

./zookeeper4/bin/zkServer.sh stop ./zookeeper4/conf/zoo.cfg

四、安装出现的问题

问题1

因本人在阿里云服务器上操作,服务启动查看不了状态,提示连接不上。

原因:在阿里云服务器安全组需要设置入方向的端口设置

问题2

zoo.conf 中的IP进行配置时候,不要配置成公网Ip,专有网络这样是没办法链接的!

必须在不同的服务器上把对应本地的那个公网Ip改成0.0.0.0

Linux上Zookeeper集群搭建的更多相关文章

  1. Linux下zookeeper集群搭建

    Linux下zookeeper集群搭建 部署前准备 下载zookeeper的安装包 http://zookeeper.apache.org/releases.html 我下载的版本是zookeeper ...

  2. Linux centos7 zookeeper集群搭建

    Zookeeper集群搭建 描述:本章节主要单服务器搭建集群,在一个服务器上启动多个不同端口的zookeeper服务,非真实环境. 真实环境下zookeeper集群会搭建在多个物理服务器上,并非单一的 ...

  3. 分布式协调服务Zookeeper集群搭建

    分布式协调服务Zookeeper集群搭建 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.安装jdk环境 1>.操作环境 [root@node101.yinzhengjie ...

  4. Kafka学习之(五)搭建kafka集群之Zookeeper集群搭建

    Zookeeper是一种在分布式系统中被广泛用来作为:分布式状态管理.分布式协调管理.分布式配置管理.和分布式锁服务的集群.kafka增加和减少服务器都会在Zookeeper节点上触发相应的事件kaf ...

  5. zookeeper集群搭建及常用场景实现

    本文完整源码地址 基于zookeeper的常用用法.分布式锁.分布式队列及leader选举实现 https://github.com/killianxu/zookeeper_example zooke ...

  6. java 学习笔记(三)ZooKeeper集群搭建实例,以及集成dubbo时的配置 (转)

    ZooKeeper集群搭建实例,以及集成dubbo时的配置 zookeeper是什么: Zookeeper,一种分布式应用的协作服务,是Google的Chubby一个开源的实现,是Hadoop的分布式 ...

  7. Zookeeper集群搭建及原理

    1 概述 1.1 简介 ZooKeeper 是 Apache 的一个顶级项目,为分布式应用提供高效.高可用的分布式协调服务,提供了诸如数据发布/订阅.负载均衡.命名服务.分布式协调/通知和分布式锁等分 ...

  8. 分布式架构中一致性解决方案——Zookeeper集群搭建

    当我们的项目在不知不觉中做大了之后,各种问题就出来了,真jb头疼,比如性能,业务系统的并行计算的一致性协调问题,比如分布式架构的事务问题, 我们需要多台机器共同commit事务,经典的案例当然是银行转 ...

  9. kafka学习(二)-zookeeper集群搭建

    zookeeper概念 ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,它包含一个简单的原语集,分布式应用程序可以基于它实现同步服务,配置维护和命名 服务等.Zookeeper是h ...

随机推荐

  1. centos yum更换阿里镜像

    #1.如果没有wget命令,则需要执行下面命令进行安装.为保险期间,先执行下面命令. yum install wget #2.备份原镜像源,以免出错后可以恢复. mv /etc/yum.repos.d ...

  2. MySQL高级篇 | 索引介绍

    前言 性能下降SQL慢的原因 查询语句写的烂 索引失效 单值索引 复合索引 关联查询太多join(设计缺陷或不得已的需求) 服务器调优及各个参数设置(缓冲.线程数等) 索引是什么 MySQL官方对索引 ...

  3. PTA 7-1 邻接矩阵表示法创建无向图 (20分)

    PTA 7-1 邻接矩阵表示法创建无向图 (20分) 采用邻接矩阵表示法创建无向图G ,依次输出各顶点的度. 输入格式: 输入第一行中给出2个整数i(0<i≤10),j(j≥0),分别为图G的顶 ...

  4. storm调用kafka重复消费的问题

    1. 实现IBolt接口的bolt需要显式调用collector.ack(); 2. 继承自BaseBasicBlot的bolt, 会帮你自动调用ack的

  5. jenkins内置变量的使用

    参考链接:  https://www.cnblogs.com/puresoul/p/4828913.html 一.查看Jenkins有哪些环境变量 1.新建任意一个job 2.增加构建步骤:Execu ...

  6. 微信小程序(四)开发框架

    wxss: 一套样式语言,用于描述wxml 的组件样式 基于css 的删除和修改 尺寸单位:rpx 样式导入 @import 内联样式 style 选择器 .class .intro 选择所有拥有 c ...

  7. 14-1-Unsupervised Learning ---dimension reduction

    无监督学习(Unsupervised Learning)可以分为两种: 化繁为简 聚类(Clustering) 降维(Dimension Reduction) 无中生有(Generation) 所谓的 ...

  8. CreateProcess error=206, 文件名或扩展名太长。

    改:

  9. 多线程03.实现Runnable接口

    package chapter2; public class TicketWindowRun implements Runnable { private static final int MAX =5 ...

  10. 【2020五校联考NOIP #3】序列

    题面传送门 原题题号:Codeforces Gym 101821B 题意: 给出一个排列 \(p\),要你找出一个最长上升子序列(LIS)和一个最长下降子序列(LDS),满足它们没有公共元素.或告知无 ...