zookeeper 单机环境和集群环境的搭建方法-mile米乐体育
这篇文章主要介绍zookeeper 单机环境和集群环境的搭建方法,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
一、单机环境搭建#
1.1 下载#
下载对应版本 zookeeper,这里我下载的版本 3.4.14。官方下载地址:https://archive.apache.org/dist/zookeeper/
#wgethttps://archive.apache.org/dist/zookeeper/zookeeper-3.4.14/zookeeper-3.4.14.tar.gz
1.2 解压#
#tar-zxvfzookeeper-3.4.14.tar.gz
1.3 配置环境变量#
#vim/etc/profile
添加环境变量:
exportzookeeper_home=/usr/app/zookeeper-3.4.14 exportpath=$zookeeper_home/bin:$path
使得配置的环境变量生效:
#source/etc/profile
1.4 修改配置#
进入安装目录的 conf/ 目录下,拷贝配置样本并进行修改:
#cpzoo_sample.cfgzoo.cfg
指定数据存储目录和日志文件目录(目录不用预先创建,程序会自动创建),修改后完整配置如下:
#thenumberofmillisecondsofeachtick ticktime=2000 #thenumberofticksthattheinitial #synchronizationphasecantake initlimit=10 #thenumberofticksthatcanpassbetween #sendingarequestandgettinganacknowledgement synclimit=5 #thedirectorywherethesnapshotisstored. #donotuse/tmpforstorage,/tmphereisjust #examplesakes. datadir=/usr/local/zookeeper/data datalogdir=/usr/local/zookeeper/log #theportatwhichtheclientswillconnect clientport=2181 #themaximumnumberofclientconnections. #increasethisifyouneedtohandlemoreclients #maxclientcnxns=60 # #besuretoreadthemaintenancesectionofthe #administratorguidebeforeturningonautopurge. # #http://zookeeper.apache.org/doc/current/zookeeperadmin.html#sc_maintenance # #thenumberofsnapshotstoretainindatadir #autopurge.snapretaincount=3 #purgetaskintervalinhours #setto"0"todisableautopurgefeature #autopurge.purgeinterval=1
配置参数说明:
•ticktime:用于计算的基础时间单元。比如 session 超时:n*ticktime;•initlimit:用于集群,允许从节点连接并同步到 master 节点的初始化连接时间,以 ticktime 的倍数来表示;•synclimit:用于集群, master 主节点与从节点之间发送消息,请求和应答时间长度(心跳机制);•datadir:数据存储位置;•datalogdir:日志目录;•clientport:用于客户端连接的端口,默认 2181
1.5 启动#
由于已经配置过环境变量,直接使用下面命令启动即可:
zkserver.shstart
1.6 验证#
使用 jps 验证进程是否已经启动,出现 quorumpeermain 则代表启动成功。
[root@hadoop001bin]#jps 3814quorumpeermain
二、集群环境搭建#
为保证集群高可用,zookeeper 集群的节点数最好是奇数,最少有三个节点,所以这里演示搭建一个三个节点的集群。这里我使用三台主机进行搭建,主机名分别为 hadoop001,hadoop002,hadoop003。
2.1 修改配置#
解压一份 zookeeper 安装包,修改其配置文件 zoo.cfg,内容如下。之后使用 scp 命令将安装包分发到三台服务器上:
ticktime=2000 initlimit=10 synclimit=5 datadir=/usr/local/zookeeper-cluster/data/ datalogdir=/usr/local/zookeeper-cluster/log/ clientport=2181 #server.1这个1是服务器的标识,可以是任意有效数字,标识这是第几个服务器节点,这个标识要写到datadir目录下面myid文件里 #指名集群间通讯端口和选举端口 server.1=hadoop001:2287:3387 server.2=hadoop002:2287:3387 server.3=hadoop003:2287:3387
2.2 标识节点#
分别在三台主机的 datadir 目录下新建 myid 文件,并写入对应的节点标识。zookeeper 集群通过 myid 文件识别集群节点,并通过上文配置的节点通信端口和选举端口来进行节点通信,选举出 leader 节点。
创建存储目录:
#三台主机均执行该命令 mkdir-vp/usr/local/zookeeper-cluster/data/
创建并写入节点标识到 myid 文件:
#hadoop001主机 echo"1">/usr/local/zookeeper-cluster/data/myid #hadoop002主机 echo"2">/usr/local/zookeeper-cluster/data/myid #hadoop003主机 echo"3">/usr/local/zookeeper-cluster/data/myid
2.3 启动集群#
分别在三台主机上,执行如下命令启动服务:
/usr/app/zookeeper-cluster/zookeeper/bin/zkserver.shstart
2.4 集群验证#
启动后使用 zkserver.sh status 查看集群各个节点状态。如图所示:三个节点进程均启动成功,并且 hadoop002 为 leader 节点,hadoop001 和 hadoop003 为 follower 节点。
以上是“zookeeper 单机环境和集群环境的搭建方法”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注恰卡编程网行业资讯频道!