ZooKeeper 就是动物园管理员的意思,它是用来管理 Hadoop(大象)、Hive(蜜蜂)、pig(小猪)的管理员,Apache Hbase、Apache Solr、Dubbo 都用到了 ZooKeeper,其实就是一个集群管理工具,是集群的入口。ZooKeeper 是一个分布式的、开源的程序协调服务,是 Hadoop 项目下的一个子项目。ZooKeeper 主要应用场景包括集群管理(主从管理、负载均衡、高可用的管理)、配置文件的集中管理、分布式锁、注册中心等。实际项目中,为了保证高可用,ZooKeeper 都是以分布式集群的方式进行安装的,至少需要三个节点,下面具体来看下。
这里 Linux 选择 CentOS 7.2。
?
1
2
3
4
5
6
7
# wget -P /usr/local http://mirror.bit.edu.cn/apache/
zookeeper/
zookeeper-3.4.10/zookeeper-3.4.10.tar.gz
# cd /usr/local
# tar -zxvf zookeeper-3.4.10.tar.gz
# cd zookeeper-3.4.10
# mkdir data
# mkdir logs
# vim /etc/rc.d/rc.local //配置开启自启动
追加如下配置即可:
?
1
2
export JAVA_HOME=/usr/java/jdk
/usr/local/zookeeper-3.4.10/bin/zkServer.sh start
我们在三台不同的服务器上各部署一个 ZooKeeper 进程,以构成一个 ZooKeeper 集群。三个 ZooKeeper 进程均使用相同的 zoo.cfg 配置:
?
1
2
3
# cd /usr/local/zookeeper-3.4.10/conf
# cp zoo_sample.cfg zoo.cfg //拷贝配置文件
# vim zoo.cfg
修改配置如下:
?
1
2
3
4
5
6
7
8
9
10
# 配置存储快照文件的目录
dataDir=/usr/local/zookeeper-3.4.10/data
dataLogDir=/usr/local/zookeeper-3.4.10/logs
# zk服务进程监听的TCP端口
clientPort=2181
# 2888:ZooKeeper服务之间通信的端口,3888:ZooKeeper与其他应用程序通信的端口
# server.1:表示这是第几号服务器
server.1=192.168.20.11:2888:3888
server.2=192.168.20.12:2888:3888
server.3=192.168.20.13:2888:3888
然后在三台服务器 dataDir 目录下,分别创建一个 myid 文件,其内容分别为1,2,3。然后分别在这三台机器上启动 ZooKeeper 进程,这样我们便将 ZooKeeper 集群启动了起来。如下:
?
1
2
3
# cd /usr/local/zookeeper-3.4.10/data
# echo 1 >>myid //创建myid文件并写入1
# /usr/local/zookeeper-3.4.10/bin/zkServer.sh start //后台启动ZooKeeper
还有一些其他命令如下:
?
1
2
3
# /usr/local/zookeeper-3.4.10/bin/zkServer.sh stop //关闭ZooKeeper
# /usr/local/zookeeper-3.4.10/bin/zkServer.sh status //查看服务状态
# /usr/local/zookeeper-3.4.10/bin/zkServer.sh start-foreground //前台启动
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。
原文链接:http://blog.csdn.net/smartbetter/article/details/53083816
声明: 猿站网有关资源均来自网络搜集与网友提供,任何涉及商业盈利目的的均不得使用,否则产生的一切后果将由您自己承担! 本平台资源仅供个人学习交流、测试使用 所有内容请在下载后24小时内删除,制止非法恶意传播,不对任何下载或转载者造成的危害负任何法律责任!也请大家支持、购置正版! 。本站一律禁止以任何方式发布或转载任何违法的相关信息访客发现请向站长举报,会员发帖仅代表会员个人观点,并不代表本站赞同其观点和对其真实性负责。本网站的资源部分来源于网络,如有侵权烦请发送邮件至:2697268773@qq.com进行处理。