码迷,mamicode.com
首页 > 其他好文 > 详细

在CentOS7中搭建Zookeeper集群

时间:2018-05-18 00:31:14      阅读:220      评论:0      收藏:0      [点我收藏+]

标签:not   soc   touch   span   read   端口被占用   slave   环境   temp   

前几天装了CentOS7、并安装了一些基本的工具,现在我手上有三台机器:分别是master,slave1,slave2。

今天我将搭建zookeeper,使用的版本是zookeeper-3.4.11.tar.gz。zk安装非常简单他有两种搭建方式:一种是单机模式,一种是集群模式。我这演示的是集群模式...

一、下载zk安装包:

  http://zookeeper.apache.org/releases.html

 

二、安装

1. 将zookeeper-3.4.11.tar.gz上传到安装目录

#在/usr/local/下创建一个zk包
cd /usr/local
mdkir zookeeper

#通过rz命令,上传zk,并解压
tar -zxvf zookeeper-3.4.11

2.修改配置文件

# 进入conf目录
cd /usr/local/zookeeper/zookeeper-3.4.11/conf

# 复制一份zoo_sample.cfg命名为zoo.cfg cp zoo_sample.cfg zoo.cfg # 修改zoo.cfg vim zoo.cfg

这里主要修改三个内容:数据文件夹dataDir、日志文件夹dataLogDir、客户端访问 zookeeper 的端口号clientPort

在文件的末端添加集群机器:server.1、server.2、server.3

注意:dataDir、dataLogDir 的目录必须存在,不然会报错。server.*的配置可以是hostname:2888:3888

技术分享图片

3. 在dataDir目录下创建myid文件,然后分别在myid文件中按照zoo.cfg文件的server.A中A的数值,在不同机器上的该文件中填写相应的值。例如server.1 在当前机器的myid中就只写上1就可以了。

#进入dataDir目录
cd 

#创建myid文件(也可以touch myid,创建一个空的myid文件)
cat > myid

#然后把接下来的键盘输入写入文件,直到按Ctrl+D为止

4. 配置环境变量

#修改环境变量
vim /etc/profile

#在文件的结尾处添加
export ZOOKEEPER_HOME=/usr/local/zookeeper/zookeeper-3.4.11
export PATH=$PATH:$ZOOKEEPER_HOME/bin

# 让文件立即生效
source /etc/profile

5. 将zk目录,复制到其它几台机器,修改相应的配置项

6. 分别启动三台机器的zk

#进入bin目录
cd /usr/local/zookeeper/zookeeper-3.4.11/bin/

#启动
zkServer.sh start

#查看启动状态(会有一个主节点,两个子节点)
zkServer.sh status

技术分享图片

技术分享图片

 

 

三、启动过程中遇到的错误和解决方法

1. 防火墙没有关;(具体操作见我环境部署中的上一篇文章)

2. SELinux没有关;(具体操作见我环境部署中的上一篇文章)

3. zookeeper.out中报错:dataDir 找不到; 检查一下dataDir 目录是否正确;

4. zookeeper.out中报错:“zookeeper address already in use”;端口被占用,检查一下是其他进程占用了配置的端口,还是配置的clientPort和server中的端口有重复;
5. zookeeper.out中报错:Cannot open channel to 2 at election address /192.168.10.120:3888;这应该只是组成集群的120节点未启动,到120启动起来zk即会正常;

6. 应用连接zookeepr报错:Session 0x0 for server 192.168.10.120/192.168.10.120:2181,unexpected error,closing socket connection and attempting reconnect;

                                        先看端口能否telnet通,如果通则使用./zkServer.sh status查看zk是否确实已启动,没启查看zookeeper.out中的报错;
 
ok, zookeeper的集群模式就搭建好了...

 

在CentOS7中搭建Zookeeper集群

标签:not   soc   touch   span   read   端口被占用   slave   环境   temp   

原文地址:https://www.cnblogs.com/jiangyaxiong1990/p/9053563.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!