本篇文章目的:以最小成本学习zookeeper的集群安装。

zookeeper的三要素:

1、一致,能够保证数据的一致性

2、有头,始终有一个leader,node/2+1个节点有效,就能正常工作

3、数据树,树状结构且每个树必须有数据

环境准备

操作系统:CentOS Linux release 7.2.1511 (Core)

JDK版本:1.8.0_121

三台服务器:192.168.1.91; 192.168.1.92; 192.168.1.93;

下载zookeeper

下载地址:https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/

选择zookeeper-3.4.9版本

下载即可

拷贝zookeeper

先创建/soft目录,然后利用WinSCP拷贝到该目录下

[root@localhost /]# mkdir /soft

解压zookeeper

[root@localhost /]# cd /soft/

[root@localhost soft]# tar zxvf zookeeper-3.4.9.tar.gz

移动到/usr/local目录下

[root@localhost soft]# mv zookeeper-3.4.9 /usr/local/zookeeper

配置zookeeper

1、  创建数据目录

下面zoo.cfg配置文件的dataDir将会修改为这个目录

[root@localhost zookeeper]# cd /usr/local/zookeeper

[root@localhost zookeeper]# mkdir data

2、配置zoo.cfg

[root@localhost zookeeper]# cd conf

[root@localhost conf]# cp zoo_sample.cfg zoo.cfg

[root@localhost conf]# vi zoo.cfg

先把dataDir=/tmp/zookeeper注释,然后将下面四行代码添加到文件末尾

dataDir=/usr/local/zookeeper/data

server.1=192.168.1.91:2888:3888

server.2=192.168.1.92:2888:3888

server.3=192.168.1.93:2888:3888

3、创建myid文件

[root@localhost conf]# cd ../data

[root@localhost data]# touch myid

[root@localhost data]# echo "1">>myid

拷贝zookeeper

拷贝zookeeper到另外两台机器

[root@localhost data]# scp -r /usr/local/zookeeper root@192.168.1.92:/usr/local/

[root@localhost data]# scp -r /usr/local/zookeeper root@192.168.1.93:/usr/local/

中间会要求输入密码,分别输入你另外两台机器的密码就行了

修改myid文件

192.168.1.92的myid内容改为2

[root@localhost zookeeper]# cd /usr/local/zookeeper/data

[root@localhost data]# echo "2">myid

192.168.1.93的myid内容改为3

[root@localhost zookeeper]# cd /usr/local/zookeeper/data

[root@localhost data]# echo "3">myid

开启zookeeper端口

开启2888、3888、2181端口

[root@localhost data]# firewall-cmd --zone=public --add-port=2888/tcp --permanent

[root@localhost data]# firewall-cmd --zone=public --add-port=3888/tcp --permanent

[root@localhost data]# firewall-cmd --zone=public --add-port=2181/tcp --permanent

重启防火墙

[root@localhost data]# firewall-cmd --reload

启动zookeeper

1、启动(每台机器都要启动)

[root@localhost bin]# /usr/local/zookeeper/bin/zkServer.sh start

如果输出以下内容,表示启动成功

ZooKeeper JMX enabled by default
Using config: /usr/local/zookeeper/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED 

2、  查看状态

[root@localhost data]# /usr/local/zookeeper/bin/zkServer.sh status

192.168.1.91

ZooKeeper JMX enabled by default
Using config: /usr/local/zookeeper/bin/../conf/zoo.cfg
Mode: follower

192.168.1.92

ZooKeeper JMX enabled by default
Using config: /usr/local/zookeeper/bin/../conf/zoo.cfg
Mode: leader

192.168.1.93

ZooKeeper JMX enabled by default
Using config: /usr/local/zookeeper/bin/../conf/zoo.cfg
Mode: follower

由此我们看出192.168.1.92这台机器被自动选举为leader了

客户端连接

[root@localhost zookeeper]# /usr/local/zookeeper/bin/zkCli.sh -server 192.168.1.92:2181

最终如下图,表示连接成功:

好了,集群配置完成。

参考网址

http://www.linuxidc.com/Linux/2016-12/137958.htm

http://www.cnblogs.com/luotianshuai/p/5206662.html  这篇文章讲的很详细,可以仔细看看,尤其是里面的配置文件的解释,有对性能的说明

centos7安装zookeeper3.4.9集群的更多相关文章

  1. centos7安装zookeeper3.4.12集群

    zookeeper的三要素: 1.一致,能够保证数据的一致性 2.有头,始终有一个leader,node/2+1个节点有效,就能正常工作 3.数据树,树状结构且每个树必须有数据 1. 环境准备 操作系 ...

  2. centos7 安装zookeeper3.4.8集群

    1.下载上传文件到centos中 2.解压文件夹 3.cd conf 文件下,cp  zoo_sample.cfg  zoo.cfg 4.vim zoo.cfg # The number of mil ...

  3. centos7安装redis-4.0.1集群

    试验机操作系统:CentOS Linux release 7.2.1511 (Core) 本文的目的是教会大家快速搭建redis集群,完了再深入学习. 试问如果不上手试验,看的资料再多有个毛用? 下载 ...

  4. centos7安装elasticsearch6.3.x集群并破解安装x-pack

    一.环境信息及安装前准备 主机角色(内存不要小于1G): 软件及版本(百度网盘链接地址和密码:链接: https://pan.baidu.com/s/17bYc8MRw54GWCQCXR6pKjg 提 ...

  5. CentOS7 安装kylin2.6.0集群

    1. 环境准备 zookeeper3.4.12 mysql5.7 hive2.3.4 hadoop2.7.3 JDK1.8 hbase1.3.3 2. 集群规划 ip地址 机器名 角色 192.168 ...

  6. centos7安装redis3.2.5集群

    安装参照     https://blog.csdn.net/mingliangniwo/article/details/54600640  https://blog.csdn.net/u013820 ...

  7. Centos7安装升级Ruby和集群搭建参考

    安装升级Ruby参考:https://blog.csdn.net/qq_26440803/article/details/82717244 集群搭建参考:https://www.cnblogs.com ...

  8. Centos7 安装部署Kubernetes(k8s)集群

    目录 一.系统环境 二.前言 三.Kubernetes 3.1 概述 3.2 Kubernetes 组件 3.2.1 控制平面组件 3.2.2 Node组件 四.安装部署Kubernetes集群 4. ...

  9. centos7安装hadoop完全分布式集群

    groupadd test             //新建test工作组 useradd -g test phpq        //新建phpq用户并增加到test工作组 userdel 选项 用 ...

随机推荐

  1. 微信web开发者工具无法打开的解决方法

    参考网址:https://blog.csdn.net/gz506840597/article/details/77915488 我试了上面兄弟说的方法还是无效 下面说说我的方法: 我打开文件所在位置, ...

  2. C#利用System.Net发送邮件

    啥也不说了,直接上干货 using System.Net.Mail;using System.Net; //使用发送邮件的邮箱 var emailAcount = "826217795@qq ...

  3. 大数据系列之数据仓库Hive原理

    Hive系列博文,持续更新~~~ 大数据系列之数据仓库Hive原理 大数据系列之数据仓库Hive安装 大数据系列之数据仓库Hive中分区Partition如何使用 大数据系列之数据仓库Hive命令使用 ...

  4. idea中JDK失效

    [问题] 在没有改变任何东西的情况下,突然间IDEA里面所有的代码都标红,无法找到JDK [解决方法] [File]->[Invalidate Caches],然后就好了

  5. Struts – MappingDispatchAction Example

    Struts MappingDispatchAction class is used to group similar functionality into a single action class ...

  6. java算法小例子

    作为一个程序员,有时候我觉得自己都不适合,因为自己数学不好,算法不好,脑子不够灵活.而对于算法,感觉就像是数学题,总觉得很难.以前上学,在班里总有几个什么都不好,但唯独数学很厉害,真气人!面对难题时, ...

  7. Java第三阶段学习(一、IO流------File类)

    一.IO概述: 把内存中的数据存入到硬盘(持久化设备)中叫做:输出(写)Output操作.JAVA软件往电脑硬盘上走叫输出. 把硬盘中的数据读取到到内存里叫做:输入(读)Input操作.电脑硬盘上往J ...

  8. Android Studio奇技淫巧

    No1: Ctrl+E:显示最近浏览过的文件 Ctrl+Shift+E:显示最近编辑过的文件 Ctrl+Tab:切换最近编辑过的文件 No2: 条件断点:断点右键 No3: 全局断点 这样只要碰到空指 ...

  9. PHP验证时有用的几段代码

    1.htmlspecialchars() htmlspecialchars() 函数把一些预定义的字符转换为 HTML 实体.预定义的字符是: & (和号) 成为 & " ( ...

  10. Extjs设置或获取cookie

    设置cookie var myCookie = Ext.util.Cookie.set(‘YourCookieName’,'YourValue’); 读取cookie Ext.util.Cookie. ...