zookeeper 分布式集群模式安装
来源:互联网 发布:淘宝无法投诉卖家 编辑:程序博客网 时间:2024/05/23 19:52
zookeeper 集群模式安装时需要注意:
1、至少需要3台机器才能搭建集群
2、每台机器的系统时间必须一致
3、zookeeper 允许最大宕机数为n,所需要的服务器台数为:2n+1(n>=2)。当n=1时,只要其中一台机器宕机,zookeeper就无法选举出leader导致集群死掉。
本次搭建集群中有4台机器,系统为centos6.4(32bit),hosts为:
192.168.246.130caixen
192.168.246.131caixen1
192.168.246.132caixen2
192.168.246.133caixen3
安装步骤:
1、官网下载zookeeper:http://zookeeper.apache.org/releases.html#download
本次使用的版本是:zookeeper-3.4.6.tar.gz
2、将下载的zookeeper-3.4.6.tar.gz文件,上传到caixen中。并解压,从新命名为zk
路径是:/home/zk
3、一切都准备好了,那么接下来就是修改配置文件了。这里主要配置/etc/profile 和 zk/conf/zoo.cfg文件,以及添加myid文件。
3.1、添加环境变量:
命令:vi /etc/profile
## personal config
export JAVA_HOME=/home/jdk
export HADOOP_HOME=/home/hadoop
exportZOOKEEPER_HOME=/home/zk
#export CLASSPATH=".:$JAVA_HOME/lib:$CLASSPATH"
exportPATH=.:$JAVA_HOME/bin:$HADOOP_HOME/bin:$ZOOKEEPER_HOME/bin:$PATH
保存退出后,命令:source /etc/profile 生效设置
3.2、修改zoo.cfg
3.2.1、命令进入conf文件夹:cd /home/zk/conf
[root@caixen ~]# cd /home/zk/conf/
[root@caixen conf]# ls
configuration.xsl log4j.properties zoo_sample.cfg
3.2.2、修改zoo_sample.cfg 配置文件名称为 zoo.cfg
[root@caixen conf]#mv zoo_sample.cfg zoo.cfg
3.2.3、配置 zoo.cfg
[root@caixen conf]# vi zoo.cfg
# The number of milliseconds of each tick
tickTime=2000
# The number of ticks that the initial
# synchronization phase can take
initLimit=10
# The number of ticks that can pass between
# sending a request and getting an acknowledgement
syncLimit=5
# the directory where the snapshot is stored.
# do not use /tmp for storage, /tmp here is just
# example sakes.
dataDir=/home/caixen/zk/data
dataLogDir=/home/caixen/zk/log
# the port at which the clients will connect
clientPort=2181
# the maximum number of client connections.
# increase this if you need to handle more clients
#maxClientCnxns=60
#
# Be sure to read the maintenance section of the
# administrator guide before turning on autopurge.
#
# http://zookeeper.apache.org/doc/current/zookeeperAdmin.html#sc_maintenance
#
# The number of snapshots to retain in dataDir
#autopurge.snapRetainCount=3
# Purge task interval in hours
# Set to "0" to disable auto purge feature
#autopurge.purgeInterval=1
server.0=192.168.246.130:2888:3888
server.1=192.168.246.131:2888:3888
server.2=192.168.246.132:2888:3888
server.3=192.168.246.133:2888:3888
保存并退出。
3.3、创建dataDir与dataLogDir文件夹,并在dataDir文件中创建myid文件
3.3.1、创建目录:mkdir /home/caixen/zk/data
mkdir /home/caixen/zk/log
3.3.2、添加myid文件到data文件夹中:echo 0>>/home/caixen/zk/data/myid(0是caixen的id,在caixen1中为1,caixen2中为2,caixen3中为3)
3.4、将/home/zk、/home/caixen/zk、/etc/profile文件 scp到caixen1、caixen2、caixen3中。以caixen1为例:
[root@caixen conf]# scp -r /home/zk/ caixen1:/home/
[root@caixen conf]# scp -r /home/caixen/zk/ caixen1:/home/caixen/
[root@caixen conf]# scp /etc/profile caixen1:/etc/profile
同样的方式,拷贝到caixen2,caixen3中。
3.5、分别登录到到 caixen1,caixen2,caixen3中,执行命令:source /etc/profile 使设置生效。
3.6、启动zookeeper集群。
在caixen中,输入命令:
[root@caixen conf]# zkServer.sh start
JMX enabled by default
Using config: /home/zk/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED
显示已经启动zookeeper。
查看zookeeper启动进程:
[root@caixen conf]# jps
1278 QuorumPeerMain
1334 Jps
然后在caixen1、caixen2、caixen3中执行同样的操作。
3.7、查看启动状态,leader与follower
caixne中:
[root@caixen conf]# zkServer.sh status
JMX enabled by default
Using config: /home/zk/bin/../conf/zoo.cfg
Mode: follower
caixen1中 :
[root@caixen1 ~]# zkServer.sh status
JMX enabled by default
Using config: /home/zk/bin/../conf/zoo.cfg
Mode: leader
caixen2中:
[root@caixen2 ~]# zkServer.sh status
JMX enabled by default
Using config: /home/zk/bin/../conf/zoo.cfg
Mode: follower
caixen3中:
[root@caixen3 ~]# zkServer.sh status
JMX enabled by default
Using config: /home/zk/bin/../conf/zoo.cfg
Mode: follower
3.8、杀死caixen1中的leader,看是否会选举新的leader
在caixen1中:
[root@caixen1 ~]# jps
1373 Jps
1284 QuorumPeerMain
[root@caixen1 ~]# kill -9 1284
在caixen中:
[root@caixen conf]# zkServer.sh status
JMX enabled by default
Using config: /home/zk/bin/../conf/zoo.cfg
Mode: follower
在caixen2中:
[root@caixen2 ~]# zkServer.sh status
JMX enabled by default
Using config: /home/zk/bin/../conf/zoo.cfg
Mode: follower
在caixen3中:
[root@caixen3 ~]# zkServer.sh status
JMX enabled by default
Using config: /home/zk/bin/../conf/zoo.cfg
Mode: leader
caixen3 变成了leader。说明重新选举成功!!! 如果继续杀死caixen3的话,集群就无法完成选举指定leader,导致集群失效。
至此,zookeeper分布式集群已经搭建完成。
- zookeeper 分布式集群模式安装
- zookeeper 分布式集群安装
- zookeeper分布式集群安装
- zookeeper伪分布式集群安装
- ZooKeeper伪分布式集群安装
- Zookeeper分布式集群安装教程
- zookeeper伪分布式集群安装
- ZooKeeper伪分布式集群安装
- ZooKeeper伪分布式集群安装
- zookeeper 集群模式安装
- Zookeeper集群模式安装
- solrcloud分布式集群部署&zookeeper集群安装
- Hadoop完全分布式集群安装zookeeper集群
- zookeeper安装和伪分布式集群安装
- zookeeper 伪集群模式安装
- ZooKeeper伪分布式集群安装及使用
- ZooKeeper伪分布式集群安装及使用
- ZooKeeper伪分布式集群安装及使用
- C#解析JSON实例
- “error C3867: “XXX”: 函数调用缺少参数列表;请使用“&XXX”创建指向成员的指针”的错误
- 什么是死锁?其条件是什么?怎样避免死锁?
- 【解决】hive动态增加partitions不能超过100的问题
- 安装Centos图形界面(15-8-17 上午7:54 )
- zookeeper 分布式集群模式安装
- 实现Ping功能
- Java五颗星之剪刀石头布
- Unity之对象池(单例对象池和泛型对象池)
- centOS7重启网卡失败
- ASP.NET MVC下的异步Action的定义和执行原理
- 查看yarn当前运行任务列表
- c#实现断点续传功能示例分享
- 读《The Pragmatic Programmer:From Journeyman to Master》- 1