目录
一、搭建zookeeper集群的搭建步骤
1.1)集群规划
在 hadoop102、hadoop103 和 hadoop104 三个节点机器上部署 Zookeeper。zookeeper官网下载地址
1.2)解压安装
(1)解压 Zookeeper 安装包到/opt/module/目录下
[atguigu@hadoop102 software]$ tar -zxvf zookeeper-3.5.7.tar.gz -C
/opt/module/
(2)同步/opt/module/zookeeper-3.5.7 目录内容到 hadoop103、hadoop104
1.3)配置服务器编号
(1)在/opt/module/zookeeper-3.5.7/这个目录下创建 zkData
[atguigu@hadoop102 zookeeper-3.5.7]$ mkdir -p zkData
(2)在/opt/module/zookeeper-3.5.7/zkData 目录下创建一个 myid 的文件
[atguigu@hadoop102 zkData]$ touch myid
添加 myid 文件,注意一定要在 linux 里面创建,在 notepad++里面很可能乱码
(3)编辑 myid 文件(每个机器单独的编号,对应下面zoo.cfg中配置的集群server内容后面的数字)
[atguigu@hadoop102 zkData]$ vi myid
在文件中添加与 server 对应的编号:
2
(4)拷贝配置好的 zookeeper 到其他机器上
[atguigu@hadoop102 zkData]$ xsync myid
并分别在 hadoop103、hadoop104 上修改 myid 文件中内容为 3、4
1.4)配置zoo.cfg文件
(1)重命名/opt/module/zookeeper-3.5.7/conf 这个目录下的 zoo_sample.cfg 为 zoo.cfg
[atguigu@hadoop102 conf]$ mv zoo_sample.cfg zoo.cfg
(2)打开 zoo.cfg 文件
[atguigu@hadoop102 conf]$ vim zoo.cfg
修改数据存储路径配置
dataDir=/opt/module/zookeeper-3.5.7/zkData
zoo.cfg中 增加如下配置
#######################cluster##########################
server.2=hadoop102:2888:3888
server.3=hadoop103:2888:3888
server.4=hadoop104:2888:3888 hadoop102这些表示对应机器的域名,需提前配置hosts映射,后面表示启动后占用的2个端口
上述配置完成后启动即可(本人启动后遇到下述启动失败的问题)
二、报错场景处理:
2.1、概述
在搭建hbase集群前需要部署启动zookeeper,启动zookeeper集群的时候发现每台机器启动出现如下报错:
:./zkServer.sh start
JMX enabled by default
Using config: /usr/local/zookeeper-3.4.6/bin/../conf/zoo.cfg
Error contacting service. It is probably not running.
2.2、原因分析(存在以下几种原因):
1)、集群各机器没有配置对应的hostname并且没有配置各机器hosts
查看:vim /etc/hosts ,应该余zoo.cfg中集群配置的域名映射对应
2)、没有配置java的环境变量
zookeeper安装前需提前配置java环境变量vim /etc/profile 加入以下内容
export JAVA_HOME=/usr/java/jdk1.8.0_281-amd64
export PATH=$JAVA_HOME/bin:$PATH
3)、没有关闭防火墙和selinux
三、本人解决步骤:
3.1、先查看zookeeper的运行日志
日志在安装目录的logs目录中,查看报以下错误
试了单机启动依然报错,用telnet 单机zookeeper 的2181端口还是不通 ,可能是防火墙或者selinux导致的
3.2、上述安装步骤没问题,映射也配置了,查看防火墙和selinux
命令:
systemctl status firewalld.service ##发现防火墙未启动
/usr/sbin/sestatus -v ##如果SELinux status参数为enabled即为开启状态
发现自己的selinux是开启状态,开始关闭selinux
1)修改配置文件需要重启机器: vim /etc/selinux/config 文件
2)将SELINUX=enforcing改为SELINUX=disabled
3)重启机器
再次启动集群(注意使用./zkService.sh start 命令)没有报错信息,查看状态./zkService.sh status 发现选举成功出现leader ,follow信息。