Zookeeper
安装三台CentOS7虚拟机:
步骤如下:http://blog.csdn.net/huanghailiang_ws/article/details/78009931
在Linux中
/opt 安装应用软件的目录
/var 存放应用的动态数据目录
安装JDK:
解压:tar zxvf jdk_name.gz
配置环境:
1 vim /etc/profile
2. JAVA_HOME=/usr/local/kencery/javajdk
PATH=$JAVA_HOME/bin:$PATH
CLASSPATH=$JAVA_HOME/jre/lib/ext:$JAVA_HOME/lib/tools.jar
export PATH JAVA_HOME CLASSPATH
3. 写完之后我们按键盘(ESC)按钮退出,然后按(:wq)保存并且关闭Vim。
4.配置完成之后,最重要的一步就是使文件立即生效:命令如下:
source /etc/profile让profile
备注:根据上面的配置信息,我们既可以将环境变量的配置完成,需要注意的是,PATH在配置的时候,一定要把JAVA_HOME/bin放在最前面,不然使用java命令式,系统会找到以前的JAVA,再不往下找了,这样java这个可执行文件运行的目录其实不在$JAVA_HOME/bin下,而在其它目录下,会造成很大的问题。
验证安装是否成功:
a.1 java -version
a.2 echo $JAVA_HOME
在解压的Zookeeper中的zoo.cfg文件中定义文件的路径以及集群
然后需要在/var/zookeeper文件夹中(必须创建此文件夹)配置myid,内容就是serve.?中对应的值。其中的两台服务器也是相同的配置。
最后启动。发现虽然都可以启动但是并没有选择谁是leader或flower。查看bin目录下的zookeeper.out发现报错
java.net.NoRouteToHostException: No route to host
此错误我一开始定位的时候就是防火墙的问题。因此输入
service iptables stop
发现并没有安装防火墙。因此我就这样放过了这个原因。后面继续google,发现他们什么却myid,文件夹没有创建等都不管用。
我就在单机模式下测试,发现可以使用没有问题。那么这铁定就是防火墙的问题。可是又没有安装防火墙。
最后发现我安装的CentOS7,我靠这防火墙是firewell。
停止的命令是如下:
关闭firewall:
systemctl stop firewalld.service #停止firewall
systemctl disable firewalld.service #禁止firewall开机启动
firewall-cmd --state #查看默认防火墙状态(关闭后显示notrunning,开启后显示running)
浪费了我大量的时间,不开心。
最后启动成功,如图