环境前提:
首先需要3台bridge模式的vm机器,当然有某云的服务器更好,并且彼此通讯畅通。
需要有JVM的环境,自行配置,这里不做多余解释。
一.集群模式
1.在zookeeper官网推荐的镜像下载zookeeper的tar包,本文下载的是3.4.6版本,下载地址:http://mirrors.cnnic.cn/apache/zookeeper/zookeeper-3.4.6/
2.修改zookeeper的输出文件存放目录,本文是在/var/zookeeper下,cd zookeeper/conf/
3.配置文件备份,cp zoo_sample.cfg zoo.cfg
4.修改配置文件vim zoo.cfg 找到dataDir 修改成上述路径
5.在该文件中配置服务器,配置的信息格式是service.id=host:port:port 这里我的是:service.1=192.168.20.31:2888:3888 service.2=192.168.20.32:2888:3888 service.3=192.168.20.33:2888:3888 保存退出
6.将相同的配置拷贝到别的俩太服务器上,scp -r /zookeeper hadoop@192.168.20.32:/usr/zookeeper/ 这里记得一定要注意好权限,本文用的是hadoop用户,所以拷贝的服务器上都必须有该用户操作目标目录的权限
7.cd /var/zookeeper目录下,添加一个新文件vim myid 里面写上前面缩写的service.id中的id 例如:1 同样别的俩台服务器用同样的操作,当然id要对应自己服务的id
8.cd /usr/zookeeper/的根目录下 cd bin 执行./zkServer.sh start 看是否得到如下命令
出现表示成功启动
9.检验结果,安装telnet工具, yum -y install telnet
10.使用telnet链接zookeeper的客户端, telnet 192.168.20.31 2181 之后当出现Escape character is '^]'.后在命令行输入stat
之后提示This ZooKeeper instance is not currently serving requests Connection closed by foreign host.
这里是因为没有启动别的俩台服务器的zookeeper
11.启动另外俩台服务器的zookeeper ./zkServer.sh start 然后再到一台服务器上重新使用telnet链接zookeeper客户端 (注:这里也可以只启动一台服务器,因为zookeeper中只要有一般的集群机器启动了,那么zookeeper就可以运行)
12.telnet 192.168.20.31 2181 如果出现zookeeper的版本信息以及client信息,mode信息的时候就说明zookeeper到这里就部署完成啦!
二.伪集群模式
只需要修改zoo.cfg这个文件,将ip地址改为同一台服务器,端口设置成不同的端口
三.单机模式
只需要修改zoo.cfg这个文件,只留下一条服务器信息,别的都删除
这篇文章写得也通俗易懂,可参照(http://nileader.blog.51cto.com/1381108/795230)
本系列会持续更新,希望对大家有所帮助,大家的阅读量是我持续更新的动力,希望大家关注我,谢谢阅读。