集群搭建

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. Mbps 与 MBps

    bps 是速率单位,表示比特每秒(bit per second),单位也可以是 bit/s.1K = 103 bit/s:1M = 106 bit/s.Mbps 中的b不是字节 Byte,而是比特 b ...

  2. PHP实现QQ第三方登录代码

    前言: PHP实现QQ快速登录,罗列了三种方法 方法一:面向过程,回调地址和首次触发登录写到了一个方法页面[因为有了if做判断], 方法二,三:面向对象 1.先调用登录方法,向腾讯发送请求,2.腾讯携 ...

  3. mybatis动态标签——sql标签

    mapper接口 Emp getEmpById(@Param("id") Integer id); mapper.xml <!-- sql片段:可以记录一段sql,在需要用的 ...

  4. CF1303F 题解

    题意 传送门 有一个 \(n\times m\) 的矩阵,初始全是 \(0\).我们定义 \(a_{i,j}\) 表示矩阵中第 \(i\) 行第 \(j\) 列的元素. 如果两个格子有相邻边并且格子中 ...

  5. C# DevExpress GridControl下动态创建列的方法

    这里是把在表格中创建控件的方法封装成一个类,然后在创建列的时候实例化"创建控件"的方法 1.在列中使用一些按钮 1 using Common; 2 using DevExpress ...

  6. linux修改ssh默认端口

    1 . 登录服务器,打开sshd_config文件 vim /etc/ssh/sshd_config 2 . 找到#Port 22,默认是注释掉的,先把前面的#号去掉,再插入一行设置成你想要的端口号, ...

  7. 【yum】使用新的centos 6.9系统时,遇到的Yum问题

    1,不识别域名 vi /etc/yum.conf 新增: nameserver 1.1.1.1(根据实际配置) 2,Header V3 RSA/SHA256 Signature, key ID 060 ...

  8. sort使用

    用sort对结构体进行排序步骤如下 1.先写c++头文件 # include<iostream># include<algorithm> //这个是sort的头文件 using ...

  9. reduced form(简化式)和structural form(结构式)

    在复习软件构造的时候,我发现了这样一道练习题 例题要求我们对照给出的RI和AF画出相应的映射图.在这里产生了一个疑问,什么是reduced form?是分子小于分母的意思吗? 但是根据给出的答案,并不 ...

  10. 纷繁复杂的操作系统到底是什么关系从APPLE到Android到Linux等

    各个系统之间的关系 最近接触了很多很多系统,多种多样,纷繁复杂,感觉有点乱想整理以下思路,结果一下笔内容还挺多,不全,就是现在能见到的,梳理一下,站在一个外行的角度写写省的乱,不科学,也不知道是否完全 ...