前言
好了现在三台机器上JDK8我们已经安装好了(没装好的移步上一篇文章 三分钟安装JDK),现在让我们愉快地安装Zookeeper。
下载Zookeeper
这里我用的是zookeeper3.4.6
留个链接:https://pan.baidu.com/s/1LGOIO1O16Z0Q0dP8X68WgA 提取码:4anv
把他上传到你的linux机器上去,用xftp就可以
安装
首先解压 tar xf zookeeper-3.4.6.tar.gz
然后把解压出来的文件放到你想放的地方去。我放在了 /opt下面
mv zookeeper-3.4.6 /opt
然后修改配置文件,建议copy一份
cd /opt/zookeeper-3.4.6/conf
cp zoo_sample.cfg zoo.cfg
vi zoo.cfg
修改如下内容:
dataDir=/temp/zookeeper 改为 dataDir=/var/zookeeper
在末尾追加如下内容
server.1=node01:2888:3888
server.2=node02:2888:3888
server.3=node03:2888:3888
... 你有多少server要进集群就写多少 我这里是三台 node01-03是主机名,可以换成ip,否则需要创建主机名到ip的映射
稍微提一下,你需要设置主机名 vi /etc/sysconfig/network 比如说追加:HOSTNAME=node01
然后还需要再hosts文件中添加主机名到各个节点的映射:vi /etc/hosts 添加如下内容:
192.168.27.66 node01
192.168.27.67 node02
192.168.27.68 node03
server后面的数字是server的myid,2888是集群内通信端口,3888是选主端口。想知道详细的细节可以去看各种“Zookeeper 看这一篇就够了”的博文,看我这一篇肯定不够!不过后续可能会更,对我就是骗关注(不要脸)
创建刚才的dataDir目录,mkdir -p /var/zookeeper
创建myid文件,并写入1(因为我在node01上并且我给node01配成了server.1), vi /var/zookeeper/myid 写入一个1 然后保存并退出
至此node01上的zookeeper配置完成了。接下来用同样的手法给其他机器来一遍... 王德发??? 所以我们来拷贝
我现在在opt目录下,执行 scp -r ./zookeeper-3.4.6 node02:`pwd` 同理node03也来一遍
然后在node02和node03上创建myid文件,忘了的话看看node01上怎么创建的,注意要和server.number中的数字对应
为了使用方便我们来配置一下环境变量
vi /etc/profile
添加zookeeper的环境变量: export ZOOKEEPER_HOME=/opt/zookeeper-3.4.6
追加到path中,我的path现在长这样: PATH=$PATH:$JAVA_HOME/bin:$ZOOKEEPER_HOME/bin
然后分发到node02和node03即可,怎么分发? 看上面scp命令!
启动Zookeeper
所有一切都准备好了,尝试使用zkServer.sh start来启动zookeeper吧。当然 配置在集群里的非observer节点需要启动半数以上集群才能正常工作。第一次玩的同学可以使用zkServer.sh start-foreground来进行阻塞式启动,所有日志都会打印在控制台。
如果你发现日志一直在报错,无法正常访问其他节点的话,请关闭linux的防火墙,命令如下:
service iptables stop
禁止开机自启动
chkconfig iptables off
写在最后的话
恭喜你完成了今天的五分钟安装Zookeeper课程!如果觉得太累可以选择更低难度的课程,如果觉得太轻松可以选择进阶难度的Zookeeper机制全解析!完成课程后记得做一组拉伸放松一下喔!手动@keep打钱!!!期待下次课程和你再会!Over