Zookeeper集群环境搭建

栏目: 服务器 · 发布时间: 6年前

内容简介:zookeeper是一个自动管理分布式集群的一个工具,以实现集群的高可用。比如集群中的一个机器挂掉了,没有zookeeper的话就得考虑挂一个机器对剩下集群工作的影响,而有了zookeeper,它就能自动帮你协调这些事儿。正规的解释如下:zookeeper是 一个开源的针对大型分布式系统的可靠协调系统。

zookeeper是一个自动管理分布式集群的一个工具,以实现集群的高可用。比如集群中的一个机器挂掉了,没有zookeeper的话就得考虑挂一个机器对剩下集群工作的影响,而有了zookeeper,它就能自动帮你协调这些事儿。

正规的解释如下:

zookeeper是 一个开源的针对大型分布式系统的可靠协调系统。

设计目标是:将复杂且容易出错的分布式式一致性服务封装起来,构成一个高效可靠的原语集,

并以简单易用的接口提供给用户使用。

提供的功能包括:发布/订阅,分布式协调/通知,配置管理,集群管理,主从协调,分布式锁等。

安装与配置:

这里用三台CentOS 6.9 mini虚拟机演示,主机名分别是h1、h2、h3,ip分别是192.168.227.11、192.168.227.22、192.168.227.33。

三台虚拟机都已创建了Hadoop用户,配了免密码登录。

软件安装路径是/home/hadoop/apps/。

1. 下载解压安装包

解压后,/home/hadoop/apps/zookeeper-3.4.10/下面的文件

Zookeeper集群环境搭建

2. 创建软连接

这一步要用root用户操作,先切换到root用户

语法:ln -s 源路径 软连接路径

ln -s /home/hadoop/apps/zookeeper-3.4.10 /usr/local/zookeeper

修改zookeeper软链接属主为hadoop:

chown -R hadoop:hadoop /usr/local/zookeeper

3. 修改环境变量

用root用户操作

vim /etc/profile

添加以下内容:

export JAVA_HOME=/usr/local/jdk

export ZOOKEEPER_HOME=/usr/local/zookeeper

export PATH=$PATH:${ZOOKEEPER_HOME}/bin:${JAVA_HOME}/bin

添加并保存后,重新编译环境变量:

source /etc/profile

(没有jdk的先下载jdk)

4. 修改配置文件

zookeeper/conf是保存配置文件的文件夹

修改里面的zoo.cfg文件

vi /conf/zoo.cfg

添加以下内容:

dataDir=/usr/local/zookeeper/data    #快照文件存储目录

dataLogDir=/usr/local/zookeeper/log  #事务日志文件目录

#(主机名, 心跳端口、数据端口)

server.1=h1:2888:3888

server.2=h2:2888:3888

server.3=h3:2888:3888

5. 创建运行需要的目录

在zookeeper目录下创建配置文件里写的目录

mkdir /usr/local/zookeeper/data

mkdir /usr/local/zookeeper/log

在data文件夹下新建myid文件,myid的文件内容为该节点的编号

cd data

touch myid

echo 1 >myid

6. 配置其余两个机器

用scp命令将整个zookeeper文件夹复制到其余两个机器上

scp -r /home/hadoop/apps/zookeeper-3.4.10 hadoop@h2:/home/hadoop/apps

scp -r /home/hadoop/apps/zookeeper-3.4.10 hadoop@h3:/home/hadoop/apps

然后按步骤2和步骤3分别对这两个机器创建软连接和修改环境变量。

将h2和h3机器里/hadoop/data/myid 中的数分别改成2和3。

至此就配置完了!

检查一下各个主机的运行

h1、h2、h3 依次执行zkServer.sh start

jps查看进程:

Zookeeper集群环境搭建

三个都开启后,执行zkServer.sh status查看zookeeper状态:

h1

Zookeeper集群环境搭建

h2

Zookeeper集群环境搭建

h3

Zookeeper集群环境搭建

可以看到zookeeper能够正常运行了。

数据存储:

zookeeper以Znode形式存储数据

类似于linux,但Znode可以存放数据

Znode类型:

持久节点、临时节点、顺序节点

组合:持久节点、持久顺序节点

临时节点、临时顺序节点

客户端创建临时节点后,当客户端与服务端断开连接后,临时节点将被删除,临时节点下不允许有子节点

监听机制使用:

即发布订阅功能

客户端注册一个监听时间,当zookeeper上被监听的时间发生变化时,会第一时间通知订阅者

客户端操作:

zkCli.sh 命令进入客户端

create [选项] 路径 值 #创建节点并赋值,不能不赋值

-s 顺序型 -e 临时型

set 路径 值 #改变节点的值

get 路径 #获取节点的值

get 路径 watch #监听节点数据内容变化,只监听一次

ls 路径 watch #监听节点目录变化,只监听一次

delete 路径 #删除一个节点,节点下不能有子节点

rmr 路径 #删除有子节点的目录

cons #输出所有客户端的连接信息

在 CentOS7 上安装 Zookeeper-3.4.9 服务 https://www.linuxidc.com/Linux/2016-09/135052.htm

ZooKeeper官方文档翻译——ZooKeeper Overview 3.4.6  https://www.linuxidc.com/Linux/2016-12/138025.htm

CentOS下ZooKeeper 3.4.8 集群环境搭建 https://www.linuxidc.com/Linux/2016-12/137958.htm

CentOS 7下Zookeeper集群安装 https://www.linuxidc.com/Linux/2017-01/139733.htm

分布式服务Dubbo+Zookeeper安全认证 https://www.linuxidc.com/Linux/2017-12/149605.htm

Linux下安装Zookeeper集群 https://www.linuxidc.com/Linux/2017-01/139545.htm

Linux下Zookeeper集群的安装  https://www.linuxidc.com/Linux/2017-03/141400.htm

CentOS 6.5下ZooKeeper3.4.6集群环境部署及单机部署详解  https://www.linuxidc.com/Linux/2018-03/151439.htm

Linux公社的RSS地址: https://www.linuxidc.com/rssFeed.aspx

本文永久更新链接地址: https://www.linuxidc.com/Linux/2018-08/153596.htm


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

推荐系统

推荐系统

[奥地利] Dietmar Jannach、Markus Zanker、Alexander Felfernig、Gerhard Friedrich / 蒋 凡 / 人民邮电出版社 / 2013-6-25 / 59.00元

编辑推荐: 通过对本书的学习,读者不仅可以全面系统地了解该领域的基础原理,还能试验如何搭建一套真正的推荐系统。 —— 百度主任架构师、百度技术委员会主席 廖若雪 本书比较全面地介绍了推荐系统涉及的相关知识点,很适合对于推荐系统感兴趣的相关人员作为入门教程,目前能够系统全面介绍相关技术的中文书籍还显得匮乏,相信这本译著对于缓解这种情况大有裨益。 ——新浪微博数据挖掘技术专家 ......一起来看看 《推荐系统》 这本书的介绍吧!

CSS 压缩/解压工具
CSS 压缩/解压工具

在线压缩/解压 CSS 代码

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具