Zookeeper分布式集群搭建

本文详细介绍如何在三台虚拟机上搭建Zookeeper集群,包括环境准备、IP映射配置、Zookeeper安装与配置、数据目录创建及环境变量设置等关键步骤。

1.初始准备:

  • 准备3台虚拟机,其IP分别为:
192.168.42.128
192.168.42.129
192.168.42.130
  • 需要安装好JDK,环境生效即可

2.配置IP映射

编辑/etc/hosts配置文件:

vim /etc/hosts  # 三台机器都需要操作

# 添加以下内容
192.168.42.128 Master
192.168.42.129 Slave1
192.168.42.130 Slave2

# 重启
reboot

三台机器都进行Zookeeper的设置。

3.安装配置Zookeeper

http://mirror.bit.edu.cn/apache/可以下载Apache有关的软件。

此处我们下载3.4.14版本:

cd /usr/local
wget http://mirror.bit.edu.cn/apache/zookeeper/zookeeper-3.4.14/zookeeper-3.4.14.tar.gz
tar -zxvf zookeeper-3.4.14.tar.gz
rm zookeeper-3.4.14.tar.gz

设置配置文件zoo.cfg,将zoo_sanple.cfg改为zoo.cfg

cd zookeeper-3.4.14
mv zoo_sample.cfg zoo.cfg
vim zoo.cfg

修改为以下信息:

tickTime=2000
initLimit=10
syncLimit=5
dataDir=/var/zookeeper
clientPort=2181

server.1=Master:2888:3888
server.2=Slave1:2888:3888 
server.3=Slave2:2888:3888

在三个机器都创建数据目录:

mkdir -r /var/zookeeper

/var/zookeeper中创建文件myid

vim /var/zookeeper/myid
# 添加以下内容,此数字与zoo.cfg严格对应
# 在本例中,Master机器该文件中数字为1,Slave1机器中该文件数字为2,Slave2机器中该文件数字为3
1

在三个机器中将Zookeeper安装目录配置到环境变量中,方便后续使用:

vim ~/.bash_profile
# 改为以下内容
export HADOOP_HOME=/usr/local/hadoop-2.7.7/
export ZOOKEEPER_HOME=/usr/local/zookeeper-3.4.14/
export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$ZOOKEEPER_HOME/bin:$PATH

将Zookeeper文件传输到其余两台机器:

rsync -av /usr/local/zookeeper-3.4.14/ Slave1:/usr/local/zookeeper-3.4.14/
rsync -av /usr/local/zookeeper-3.4.14/ Slave2:/usr/local/zookeeper-3.4.14/

在每台机器中运行启动Zookeeper命令:

zkServer.sh start

启动后使用jsp会看到QuorumPeerMain进程,但并不代表一定启动成功。

jsp

查看Zookeeper状态:

zkServer.sh status
# 若成功会显示以下内容(分别有一个Leader与两个Follower) :
ZooKeeper JMX enabled by default
Using config: /usr/local/zookeeper-3.4.14/bin/../conf/zoo.cfg
Mode: follower

如果出现问题,可以先关闭zookeeper,再使用foreground启动zookeeper进行调试,指令如下:

zkServer.sh start-foreground
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值