集群搭建

1. 下载二进制文件

$ wget --no-check-certificate https://mirrors.ustc.edu.cn/apache/zookeeper/zookeeper-3.7.0/apache-zookeeper-3.7.0-bin.tar.gz
$ tar -xzvf apache-zookeeper-3.7.0-bin.tar.gz

2. 创建数据目录

$ cd apache-zookeeper-3.7.0-bin
$ mkdir data
$ mkdir data/zk1 data/zk2 data/zk3

3. 创建 myid 文件,并指定每个服务器标识

$ touch ./data/zk1/myid ./data/zk2/myid ./data/zk3/myid
$ echo 1 > ./data/zk1/myid
$ echo 2 > ./data/zk2/myid
$ echo 3 > ./data/zk3/myid

4. 创建三个配置文件,并添加集群配置

zoo1.cfg

tickTime=2000
initLimit=10
yncLimit=5
dataDir=/Users/zhangpeng/workspace/software/apache-zookeeper-3.7.0-bin/data/zk1
clientPort=2181
# 一般 admin.server 默认的端口号 8080 会被占用,这里改为 8081
admin.server=8081
# 指定集群中服务器
# 端口1:用于数据同步
# 端口2:用于leader选举
server.1=localhost:2880:3880
server.2=localhost:2882:3882
server.3=localhost:2884:3884

zoo2.cfg

tickTime=2000
initLimit=10
yncLimit=5
dataDir=/Users/zhangpeng/workspace/software/apache-zookeeper-3.7.0-bin/data/zk2
clientPort=2182
# 一般 admin.server 默认的端口号 8080 会被占用,这里改为 8081
admin.server=8081
# 指定集群中服务器
# 端口1:用于数据同步
# 端口2:用于leader选举
server.1=localhost:2880:3880
server.2=localhost:2882:3882
server.3=localhost:2884:3884

zoo3.cfg

tickTime=2000
initLimit=10
yncLimit=5
dataDir=/Users/zhangpeng/workspace/software/apache-zookeeper-3.7.0-bin/data/zk3
clientPort=2183
# 一般 admin.server 默认的端口号 8080 会被占用,这里改为 8081
admin.server=8081
# 指定集群中服务器
# 端口1:用于数据同步
# 端口2:用于leader选举
server.1=localhost:2880:3880
server.2=localhost:2882:3882
server.3=localhost:2884:3884

4. 启动

# 启动第一台
$ ./bin/zkServer.sh start ./conf/zoo1.cfg
# 启动第二台
$ ./bin/zkServer.sh start ./conf/zoo2.cfg
# 启动第三台
$ ./bin/zkServer.sh start ./conf/zoo3.cfg

5. 查看各个服务器角色信息

$ ./bin/zkServer.sh status ./conf/zoo1.cfg
$ ./bin/zkServer.sh status ./conf/zoo2.cfg
$ ./bin/zkServer.sh status ./conf/zoo3.cfg

常见问题

你在安装过程中出现的问题,绝对不会只有你一个人碰到过,所以99%的问题都可以在网上找到答案,如果在 stack overflowgoogle上都找不到你想要的答案,并且提问方式没有问题 的话,大胆去问你的同事吧,相信你的同事会称赞你问了一个好问题。

# Q1: 找不到或无法加载主类 org.apache.zookeeper.server.quorum.quorumpeermain
# A1: 需要下载带有二进制的包(apache-zookeeper-3.7.0-bin.tar.gz)而不是源码包(apache-zookeeper-3.7.0.tar.gz) # Q2: 端口号被占用
# A2: admin.server 默认的端口号为 8080,该端口号可能已经被占用,可用 lsof -i:8080 查看是什么进程在占用

zookeeper(1)-集群的搭建的更多相关文章

  1. ZooKeeper伪集群环境搭建

    1.从官网下载程序包. 2.解压. [dev@localhost software]$ tar xzvf zookeeper-3.4.6.tar.gz 3.进入zookeeper文件夹后创建data文 ...

  2. Zookeeper服务器集群的搭建与操作

    ZooKeeper 作用:Zookeeper 可以用来保证数据在zk集群之间的数据的事务性一致(原子操作). 介绍:Zookeeper 是 Google 的 Chubby一个开源的实现,是 Hadoo ...

  3. zookeeper伪集群的搭建

    由于公司服务器数量的限制,我们往往没有那么多的服务器用来搭建zookeeper的集群,所以产生了伪集群的搭建,也就是将多个zookeeper搭建在同一台机器上. 准备工作: 1,一台服务器,我们这里用 ...

  4. 【Zookeeper】集群环境搭建

    一.概述 1.1 Zookeeper的角色 1.2 Zookeeper的读写机制 1.3 Zookeeper的保证 1.4 Zookeeper节点数据操作流程 二.Zookeeper 集群环境搭建 2 ...

  5. zookeeper以及集群的搭建

    今天我来写一写zookeeper集群的搭建流程 1.zookeeper的搭建不难,难的是对他的理解以及良好的使用.单机版的zookeeper只需要解压后直接命令 启动即可 解压zookeeper,ta ...

  6. zookeeper 单机. 集群环境搭建

    zookeeper分布式系统中面临的很多问题, 如分布式锁,统一的命名服务,配置中心,集群的管理Leader的选举等 环境准备 分布式系统中各个节点之间通信,Zookeeper保证了这个过程中 数据的 ...

  7. Hadoop+HBase+ZooKeeper分布式集群环境搭建

    一.环境说明 集群环境至少需要3个节点(也就是3台服务器设备):1个Master,2个Slave,节点之间局域网连接,可以相互ping通,下面举例说明,配置节点IP分配如下: Hostname IP ...

  8. ZooKeeper伪集群的搭建(Windows)

    首先下载 zookeeper 地址:https://www.apache.org/dyn/closer.cgi/zookeeper/ 1.下载完成解压后修改文件夹名字为zookeeper1,然后删除c ...

  9. Zookeeper分布式集群搭建

    实验条件:3台安装linux的机子,配置好Java环境. 步骤1:下载并分别解包到每台机子的/home/iHge2k目录下,附上下载地址:http://mirrors.cnnic.cn/apache/ ...

  10. zookeeper集群环境搭建详细图文教程

    zookeeper集群环境搭建详细图文教程 zhoubang @ 2018-01-02 [文档大纲] 友情介绍 软件环境 注意点 环境安装 1. 新建用于存储安装包以及软件安装的目录 2. 下载安装z ...

随机推荐

  1. listview自定义适配器

    class FruitAdapter(activity: Activity ,val id:Int,data:List<Fruit>):ArrayAdapter<Fruit>( ...

  2. 爬小说_BeautifulSoup解析_easy

    title: 爬小说_BeautifulSoup解析_easy author: 杨晓东 permalink: 爬小说_BeautifulSoup解析_easy date: 2021-10-02 11: ...

  3. B站【挽救小白第一季】前端代码记录笔记

    1. 新建工程命令: $ vue init mpvue/mpvue-quickstart my-project 参考mpvue官方快速入门:http://mpvue.com/mpvue/quickst ...

  4. BOOK01:《过目不忘的读书法》

    BOOK01:<过目不忘的读书法> 01 区分"信息"和"知识" 一年之后过时的是"信息",十年也不过时的是"知识&q ...

  5. JavaScrip核心基础(讲师李立超)

    01_入门 01_HelloWorld <!-- JS代码需要编写到script中 --> <script> alert("哈哈哈哈") console.l ...

  6. swagger界面不显示

    从本地网关进入swagger界面不显示,原因 @ApiImplicitParams注解是给get请求用的,我给post用了

  7. UE4笔记索引

    图形 渲染 延迟渲染 三维渲染流程 渲染优化 基本渲染 材质 材质节点组合 节点分类 特别的属性 其他 坐标空间与切线空间 坐标轴 编码 平台相关 UBT编译 命令行 程序到CPU路径 C++与蓝图互 ...

  8. 探索如何在java中执行python脚本

    一个偶然的场景,笔者需要在java代码中执行某个python脚本,并且需要向脚本中传递参数,有可能的话,还要获取该脚本的某些执行结果,回到主程序中继续执行下去. 没有思路之前,狭隘的想法是,java中 ...

  9. app内嵌H5踩坑

    内嵌的H5是用的vue2版本开发的,期间有很多的坑要踩: 1.调用app返回上一个页面不触发页面的onmouted和window.onPageShow app返回上一个页面调用的方法并不会出发vue的 ...

  10. 题解[CF575E]Spectator_Riots

    题意 一个球场,可以看作 \(10^5\times10^5\) 的矩形,每个位置都是一个整点.一个位置 \((x,y)\) 位于球场内当且仅当 \(x\in[0,10^5]\and y\in[0,10 ...