一、如何安装zookeeper
二、搭建zookeeper集群需要注意的地方
1、搭建zookeeper集群用到Linux服务器三台、五台、(2*n+1)台,Zookeeper的容错率需要保证集群能够有半数进行投票,才能正常运作。
服务器是否可以用偶数?没必要,例如:
2台服务器:2的半数为1,半数以上最少为2,所以至少2台正常运行才行,正常运行1台服务器都不允许挂掉,不否和容错率规则。
3台服务器,3的半数为1.5,半数以上最少为2,所以至少2台正常运行才行,正常运行可以允许1台服务器挂掉。
4台服务器,4的半数为2,半数以上最少为3,所以至少3台正常运行才行,也只可以允许1台服务器挂掉,容错率和使用3台服务器一样。
5台服务器,5的半数为2.5,半数以上最少为3,所以至少3台正常运行才行,正常运行可以允许2台服务器挂掉。
2、每台服务器上边都需要安装zookeeper。
3、每台服务器上的zookeeper都要修改/conf/zoo.cfg。如下:
注意:在几台服务器上部署zookeeper,就得在每台服务器的zookeeper配置文件zoo.cfg里边加几个 :server.n=ip:d1:d2
clientPort=2181,这个端口就是客户端连接 Zookeeper 服务器的端口,即对外服务端口,Zookeeper 会监听这个端口,接受客户端的访问请求。一般设置为2181。如果端口被占用可以更改。
server.自定义机器号=每台服务器ip:自定义端口1:自定义端口2 。(各个zookeeper之间建立关系用的,如果只单独设置自己的就是单例模式了)
dataDir=存放数据的绝对路径。(存放位置自定义,一般在zookeeper目录下手动新建个data目录存放数据)
dataLogDir=存放日志的绝对路径。(存放位置自定义,一般在zookeeper目录下手动新建个logs目录存放日志,如果不写则默认在dataDir目录下。)
4、在上边dataDir对应的目录下,添加名称为 myid 的文件,并且文件内容与各自ip对应的机器号相同。比如server.1=xxx,则myid的内容就是1。
5、启动zookeeper在bin/目录下输入 ./zkServer.sh start ,等每台服务器都启动完毕,输入./zkServer.sh status 查看是否启动成功。如果没有全部启动成功直接查看启动状态,可能会报错:Error contacting service. It is probably not running。关闭zookeeper输入 ./zkServer.sh stop
6、输入./zkServer.sh status 显示一个leader和俩个follower就说明zookeeper集群启动成功了
7、如果不想每次到zookeeper/bin/下启动,可以设置环境变量。
在用户家目录:~ .bash_profile ,这里边设置环境变量只对当前用户永久有效。/etc/profile 该文件里边配置环境变量对所有用户永久有效。
注意:配置完环境变量必须执行 source .bash_profile 或者 source /etc/profile 才能使配置生效。如果重启的话也不反对。
详细了解推荐:
2、集群搭建及介绍
~~~功法精奇玄妙,贫道略感深奥。~~~~
~~~道友若是知道,烦请不吝赐教。~~~~