1.zookeeper(基础组件)作用
1.可以为客户端管理少量数据,是键值kv对格式:
/aa "hello"
/aa/bb "scala"
2.可以为客户端监听指定数据节点的状态,并在节点发生变化时通知客户端。
2.解压配置
tar -zxvf zookeeper-3.4.10.tar.gz -C /root/apps
cd /root/apps/zookeeper/conf
cp zoo_sample.cfg zoo.cfg
vi zoo.cfg
dataDir 改为 /root/zkdata
在最后加配置zookeeper在哪和端口号:
server.1=node01:2888:3888
server.2=node02:2888:3888
server.3=node03:2888:3888
3.生成myid文件并拷贝zookeeper
在三台节点上的“/root/zkdata”目录下生成myid文件,内容分别为1,2,3
mkdir /root/zkdata
echo 1 > /root/zkdata/myid
scp -r zookeeper node02:`pwd`
4.启动zookeeper节点
bin/zkServer.sh start
使用jps查看QuorumPeerMain是否出现
这时并没有将zookeeper启动,只是它自己在孤独的投票中
bin/zkServer.sh status
查看状态(Error contacting service 连不上服务)
都start后,再次status出现follower或者leader即正常工作
5.写个脚本用于一键开启
vi zkmanage.sh
#!/bin/bash
for host in node01 node02 node03
do
#echo $host #实验for循环
echo "${host}:${1}ing....."
ssh $host "source /etc/profile;/root/apps/zookeeper/bin/zkServer.sh $1"
done
sleep1 # 休息一秒后再检查状态
for host in node01 node02 node03
do
ssh $host "source /etc/profile;/root/apps/zookeeper/bin/zkServer.sh status"
done
sh zkmanage.sh start(stop)
chmod +x zkmanage.sh 添加可执行权限
./zkmanage.sh start