Linux下ZooKeeper分布式集群安装教程
ZooKeeper就是动物园管理员的意思,它是用来管理Hadoop(大象)、Hive(蜜蜂)、pig(小猪)的管理员,ApacheHbase、ApacheSolr、Dubbo都用到了ZooKeeper,其实就是一个集群管理工具,是集群的入口。ZooKeeper是一个分布式的、开源的程序协调服务,是Hadoop项目下的一个子项目。ZooKeeper主要应用场景包括集群管理(主从管理、负载均衡、高可用的管理)、配置文件的集中管理、分布式锁、注册中心等。实际项目中,为了保证高可用,ZooKeeper都是以分布式集群的方式进行安装的,至少需要三个节点,下面具体来看下。
这里Linux选择CentOS7.2。
#wget-P/usr/localhttp://mirror.bit.edu.cn/apache/zookeeper/zookeeper-3.4.10/zookeeper-3.4.10.tar.gz #cd/usr/local #tar-zxvfzookeeper-3.4.10.tar.gz #cdzookeeper-3.4.10 #mkdirdata #mkdirlogs #vim/etc/rc.d/rc.local//配置开启自启动
追加如下配置即可:
exportJAVA_HOME=/usr/java/jdk /usr/local/zookeeper-3.4.10/bin/zkServer.shstart
我们在三台不同的服务器上各部署一个ZooKeeper进程,以构成一个ZooKeeper集群。三个ZooKeeper进程均使用相同的zoo.cfg配置:
#cd/usr/local/zookeeper-3.4.10/conf #cpzoo_sample.cfgzoo.cfg//拷贝配置文件 #vimzoo.cfg
修改配置如下:
#配置存储快照文件的目录 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集群启动了起来。如下:
#cd/usr/local/zookeeper-3.4.10/data #echo1>>myid//创建myid文件并写入1 #/usr/local/zookeeper-3.4.10/bin/zkServer.shstart//后台启动ZooKeeper
还有一些其他命令如下:
#/usr/local/zookeeper-3.4.10/bin/zkServer.shstop//关闭ZooKeeper #/usr/local/zookeeper-3.4.10/bin/zkServer.shstatus//查看服务状态 #/usr/local/zookeeper-3.4.10/bin/zkServer.shstart-foreground//前台启动
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。