一、介绍
ZooKeeper 是一个分布式的,开放源码的分布式应用程序协调服务,提供的功能包括:配置维护、名字服务、分布式同步、组服务等,目标就是封装好复杂易出错的关键职务,将简单易用的接口和性能高效、功能稳定的系统提供给用户。Zookeeper是hadoop的一个子项目。二、安装配置1.环境说明操作系统 | 主机名 | IP地址 |
---|---|---|
CentOS-7.2 | zookeeper01 | 172.16.120.180 |
CentOS-7.2 | zookeeper02 | 172.16.120.181 |
CentOS-7.2 | zookeeper03 | 172.16.120.182 |
2.获取安装包
wget http://archive.apache.org/dist/zookeeper/zookeeper-3.4.8/zookeeper-3.4.8.tar.gz3.解压tar fxz zookeeper-3.4.8.tar.gz -C /usr/local4.创建软链接ln -s /usr/local/zookeeper-3.4.8 /usr/local/zookeeper5.生成配置文件cd /usr/local/zookeeper/confcp zoo_sample.cfg zoo.cfg6.修改配置vim /usr/local/zookeeper/conf/zoo.cfgdataDir=/usr/local/zookeeper/data
tickTime=2000
initLimit=10
syncLimit=5
clientPort=2181
server.0=172.16.120.180:2888:3888
server.1=172.16.120.181:2888:3888
server.2=172.16.120.182:2888:3888
注:三台zookeeper服务器的配置一样
配置参数说明tickTime: 客户端与服务器或者服务器与服务器之间维持心跳时间(ms)initLimit: Leader允许Follower在 initLimit 时间内完成这个工作(ticktime数量)syncLimit: 集群中flower服务器(F)跟leader(L)服务器之间的请求和答应最多能容忍的心跳数dataDir: 该属性对应的目录是用来存放myid信息跟一些版本,日志,跟服务器唯一的ID信息等clientPort:客户端连接端口server.A=B:C:D配置项A:这是一个数字,表示这是第几号服务器B:A服务器的IP地址C:通讯端口,即A服务器与集群中Leader 服务器交换信息的端口D:选举通讯端口,表示的是万一集群中的 Leader 服务器挂了,需要一个端口来重新进行选举,选出一个新的 Leader7.创建myid文件server0服务器:touch /usr/local/zookeeper/data/myidecho 0 > /usr/local/zookeeper/data/myidserver1服务器:touch /usr/local/zookeeper/data/myidecho 1 > /usr/local/zookeeper/data/myidserver2服务器:touch /usr/local/zookeeper/data/myidecho 2 > /usr/local/zookeeper/data/myid8.启动服务/usr/local/zookeeper/bin/zkServer.sh start三、日志配置- 修改log4j.properties
zookeeper.root.logger=INFO,ROLLINGFILE log4j.appender.ROLLINGFILE=org.apache.log4j.DailyRollingFileAppender log4j.appender.ROLLINGFILE.MaxFileSize=10MB
- 还需要改${zkhome}/bin/zkEnv.sh
if [ "x${ZOO_LOG_DIR}" = "x" ] then ZOO_LOG_DIR="/usr/local/zookeeper/logs/zookeeper" fi if [ "x${ZOO_LOG4J_PROP}" = "x" ] then ZOO_LOG4J_PROP="INFO,ROLLINGFILE" fi
3.移除zookeeper.out
修改 bin/zkServer.sh_ZOO_DAEMON_OUT="$ZOO_LOG_DIR/zookeeper.log"
精彩评论