参考链接:http://zookeeper.apache.org/

https://www.cnblogs.com/lyhc/p/6560993.html

系统:

乌班图16.04

虚拟机(zk一般要求奇数台节点):

192.168.0.15     ubuntu15

192.168.0.16     ubuntu16

192.168.0.17     ubuntu17

1、standalone安装:

1、下载:

wget http://apache.osuosl.org/zookeeper/zookeeper-3.4.10/zookeeper-3.4.10.tar.gz

2、解压:

tar -xzvf zookeeper-3.4.6.tar.gz -C   /usr/local

3、复制配置文件:

cd conf
cp zoo_sample.cfg zoo.cfg

4、standalone无需配置zoo.cfg,集群注意这里需要配置

5、启动:

sh zkServer.sh start //启动

这里报错:

zkServer.sh: 81: /usr/local/zookeeper-3.4.10/bin/zkEnv.sh: Syntax error: "(" unexpected (expecting "fi")

根据https://blog.csdn.net/u011404265/article/details/72869920提供的解决方案已解决

root@127.0.0.1:~# cd /bin/
root@127.0.0.1:/bin# ls -l /bin/sh
lrwxrwxrwx 1 root root 4 Dec 23 22:30 /bin/sh -> dash(默认)
root@127.0.0.1:/bin# ln -sf bash /bin/sh
root@127.0.0.1:/bin# ls -l /bin/sh
lrwxrwxrwx 1 root root 4 Dec 23 22:37 /bin/sh -> bash

查看

root@ubuntu:/usr/local/zookeeper-3.4.10/bin# ps -ef | grep 'zookeeper'
root 1215 1 0 23:39 pts/0 00:00:02 java -Dzookeeper.log.dir=. -Dzookeeper.root.logger=INFO,CONSOLE -cp /usr/local/zookeeper-3.4.10/bin/../build/classes:/usr/local/zookeeper-3.4.10/bin/../build/lib/*.jar:/usr/local/zookeeper-3.4.10/bin/../lib/slf4j-log4j12-1.6.1.jar:/usr/local/zookeeper-3.4.10/bin/../lib/slf4j-api-1.6.1.jar:/usr/local/zookeeper-3.4.10/bin/../lib/netty-3.10.5.Final.jar:/usr/local/zookeeper-3.4.10/bin/../lib/log4j-1.2.16.jar:/usr/local/zookeeper-3.4.10/bin/../lib/jline-0.9.94.jar:/usr/local/zookeeper-3.4.10/bin/../zookeeper-3.4.10.jar:/usr/local/zookeeper-3.4.10/bin/../src/java/lib/*.jar:/usr/local/zookeeper-3.4.10/bin/../conf: -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.local.only=false org.apache.zookeeper.server.quorum.QuorumPeerMain /usr/local/zookeeper-3.4.10/bin/../conf/zoo.cfg
root 1444 1177 0 23:53 pts/0 00:00:00 grep --color=auto zookeeper

使用:

zkClient:

root@ubuntu:/usr/local/zookeeper-3.4.10/bin# ./zkCli.sh -timeout 5000 -server 192.168.0.17:2181

 

2、集群安装(3个节点)

因为leader是选举产生,算法原因一般配置奇数个节点

1、安装:分别在三台机器安装zk,博主直接装了一台然后克隆了三台虚拟机。

2、配置zoo.cfg:安装standalone版的时候复制了 conf/zoo.cfg 文件,但是没有进行配置,如果需要搭建集群,则需要对此文件进行配置!这里随便找一台(ubuntu15)对zoo.cfg进行配置:

vim zoo.cfg

dataDir=/usr/local/zk/data
dataLogDir=/usr/local/zk/logs
server.1=0.0.0.0:2881:3881
server.2=ubuntu16:2882:3882
server.3=ubuntu17:2883:3883
autopurge.snapRetainCount=3

3、根据配置的dataDir 和 dataLogDir 创建目录:

root@ubuntu15:/usr/local/zookeeper-3.4.10/bin# mkdir -p  /usr/local/zk/data
root@ubuntu15:/usr/local/zookeeper-3.4.10/bin# mkdir -p /usr/local/zk/logs

4、myid设置,因为这是集群中的第一台,这里给它id设置为1

root@ubuntu15:/usr/local/zk/data# touch /usr/local/zk/data/myid
root@ubuntu15:/usr/local/zk/data# echo > /usr/local/zk/data/myid

5、这样第一台配置完成,我直接复制第一台的配置文件到其它两台,略作修改后,创建data目录修改节点id

scp -r  admin1@192.168.0.15:/usr/local/zookeeper-3.4.10/conf/zoo.cfg ./

a、zoo.cfg 中本机ip需要设为0.0.0.0

b、第二台myid需要设置为2,第三台设置为3.。。。。

6、依次启动三个节点

ubuntu15

root@ubuntu15:/usr/local/zookeeper-3.4.10/bin# sh zkServer.sh start
ZooKeeper JMX enabled by default
Using config: /usr/local/zookeeper-3.4.10/bin/../conf/zoo.cfg
Starting zookeeper ... >>>>>>>>>>>>>>>>>>>>
STARTED
root@ubuntu15:/usr/local/zookeeper-3.4.10/bin# sh zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /usr/local/zookeeper-3.4.10/bin/../conf/zoo.cfg
Error contacting service. It is probably not running.
root@ubuntu15:/usr/local/zookeeper-3.4.10/bin# sh zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /usr/local/zookeeper-3.4.10/bin/../conf/zoo.cfg
Mode: follower

ubuntu16

root@ubuntu16:/usr/local/zookeeper-3.4.10/bin# sh zkServer.sh start
ZooKeeper JMX enabled by default
Using config: /usr/local/zookeeper-3.4.10/bin/../conf/zoo.cfg
Starting zookeeper ... >>>>>>>>>>>>>>>>>>>>
STARTED
root@ubuntu16:/usr/local/zookeeper-3.4.10/bin# sh zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /usr/local/zookeeper-3.4.10/bin/../conf/zoo.cfg
Mode: leader

ubuntu17

root@ubuntu17:/usr/local/zookeeper-3.4.10/bin# sh zkServer.sh start
ZooKeeper JMX enabled by default
Using config: /usr/local/zookeeper-3.4.10/bin/../conf/zoo.cfg
Starting zookeeper ... >>>>>>>>>>>>>>>>>>>>
STARTED
root@ubuntu17:/usr/local/zookeeper-3.4.10/bin# sh zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /usr/local/zookeeper-3.4.10/bin/../conf/zoo.cfg
Mode: follower

【Zookeeper01】ubuntu下安装zookeeper单例以及集群的更多相关文章

  1. centos7 docker 安装 zookeeper 3.4.13 集群

    假设三台主机的ip分别为: 主机一:192.168.0.168 主机二:192.168.0.169 主机三:192.168.0.170 三台主机的安装步骤相似,以主机一为例: 1. 查找zookeep ...

  2. 1.如何在虚拟机ubuntu上安装hadoop多节点分布式集群

    要想深入的学习hadoop数据分析技术,首要的任务是必须要将hadoop集群环境搭建起来,可以将hadoop简化地想象成一个小软件,通过在各个物理节点上安装这个小软件,然后将其运行起来,就是一个had ...

  3. centos7下安装docker(21docker swarm集群创建)

    创建swarm集群: 实验环境:盗图 swarm-manager是manager node,swarm-worker1和swarm-worker2是worker node. 所有节点的docker版本 ...

  4. Centos7下安装redis实战(单机版以及集群)

    一.背景 因项目需要,要引入redis做缓存,就在centos7下亲自安装了一遍redis,刚好趁着这个机会就来把redis的概念以及单机版和集群版redis安装步骤记录下来,在此和大家一起分享. 二 ...

  5. zookeeper系列 (第一章 :ubuntu 下安装zookeeper)

    1.zookeeper是分布式一致性管理服务.解决了分布式中死锁,不一致,原子性操作等问题. 2.环境:系统ubuntu,zookeeper 下载地址:http://archive.apache.or ...

  6. 在ubuntu下安装zookeeper

    安装java环境,并配置好java相关的环境变量$JAVA_HOME. 1.下载并解压最新稳定的zookeeper文件 wget http://mirrors.cnnic.cn/apache/zook ...

  7. Ubuntu下安装zookeeper

    1:下载安装文件 zookeeper-3.4.9.tar.gz 2:解压到以下目录 /usr/local/services/zookeeper/zookeeper-3.4.9 3:进入conf目录,复 ...

  8. 如何正确的使用Ubuntu以及安装常用的渗透工具集.

    文章来源i春秋 入坑Ubuntu半年多了  记得一开始学的时候基本一星期重装三四次=-= 尴尬了 觉得自己差不多可以的时候 就吧Windows10干掉了 c盘装Ubuntu 专心学习.   这里主要来 ...

  9. zookeeper作为soa服务器集群的协调调度服务器

    zookeeper作为soa服务器集群的协调调度服务器,当然自身也支持集群. ZooKeeper搭建系列集 ZooKeeper系列之一:ZooKeeper简介 ZooKeeper系列之二:ZooKee ...

随机推荐

  1. 阐述php(五岁以下儿童) 注意事项和使用功能

    1.函数声明 <?php /** * function 函数名(參数1, 參数2.... ){ * 函数体; * 返回值; * } */ $sum = sum(3, 4); echo $sum; ...

  2. Uniform synchronization between multiple kernels running on single computer systems

    The present invention allocates resources in a multi-operating system computing system, thereby avoi ...

  3. 将指定路径下的所有SVG文件导出成PNG等格式的图片(缩略图或原图大小)

    原文:将指定路径下的所有SVG文件导出成PNG等格式的图片(缩略图或原图大小) WPF的XAML文档(Main.xaml): <Window x:Class="SVG2Image.Ma ...

  4. 局部QEventLoop帮助QWidget不消失(也就是有一个局部事件循环始终在运行,导致程序被卡住那里,但仍可以接受事件。说白了就是有一个while语句死活不肯退出,直到收到退出信号)

    熟悉的陌生人 Qt 是事件驱动的,所以当你用Qt的时候,几乎时时刻刻和 QEventLoop 打交道.,只是你可能没有意识到: QCoreApplicaton::exec() QApplication ...

  5. phpstorm 删除空行

    思路: 用正则把所有空行找到,然后一键全部替换. 步骤:首先把 Regex 打上勾ctrl+f 搜索框就填写正则规则:^\nctrl+r 匹配到所有空行之后,点击[Replace all]即可

  6. WPF特效-实现弧形旋转轮播图

    原文:WPF特效-实现弧形旋转轮播图 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/u013224722/article/details/77004 ...

  7. Go语言的网络功能太强了,这么多项目。。。

    Centrifugo 是一个用 Golang 实现的基于 Websocket 或者 SockJS 的实时通信平台.https://www.oschina.net/p/centrifugalrpcx是一 ...

  8. latex 矩阵分块(block matrix)

    Lesson 12: Making Block Matrices in LATEX 按列分块: [AAb⋯An−1b] $$ \left[ \begin{array}{c|c|c|c} A & ...

  9. EPPlus简单使用

    在使用之前需要在项目中添加对EEPULS.dll的引用 1,创建excel 2,创建sheet 3,添加内容 4,修改 5,保存 FileInfo newFile = new FileInfo(fil ...

  10. iOS-swift-如何实现崩溃树级别文件夹和扩大

    如何实现崩溃树级别文件夹和扩大 1 介绍     最近,它一直在使用swift写项目,现在,他已经完成了不到一半,大概11可在一月中旬完成,什么时候会出一系列视频,源代码放出来.我是iOS 零基础学习 ...