单节点模式部署
# 环境说明:本人使用的Java版本为jdk1.8.171,zookeeper版本为apache-zookeeper-3.5.5
安装及部署步骤:
创建一个zookeeper的文件存放目录,例如:mkdir /opt/bigdata
解压zookeeper安装包 tar -zxvf apache-zookeeper-3.5.5-bin.tar -C /opt/bigdata (在压缩包所在的目录下执行)
修改主机名 hostnamectl set-hostname standby 执行使用bash命令刷新一下 (主机名可修改也可不修改,看个人兴趣)
关闭防火墙 systemctl stop firewalld 查看一下防火墙状态 systemctl status firewalld 输出结果状态显示为dead即可 最好关闭防火墙开机自启 systemctl disable firewalld
配置环境变量 vim /etc/profile 在底部加入一下内容(JAVA_HOME,ZOOKEEPER_HOME 路径为自己实际路径
export JAVA_HOME=/opt/bigdata/jdk1.8.0_144
export ZOOKEEPER_HOME=/opt/bigdata/zookeeper-3.5.5
export PATH=$PATH:$JAVA_HOME/bin:$ZOOKEEPER_HOME/bin
保存退出后一定要记得source /etc/profile 使环境变量生效
修改配置文件
cd /opt/bigdata/zookeeper3.5.5/conf ls 查看一下当前目录下的文件
该文件为模板文件 cp zoo_sample.cfg zoo.cfg (该图片中已存在zoo.cfg是因为本人已经copy过了)
vim zoo.cfg 将dataDir路径修改为自身zookeeper所在路径并在zookeeper-3.5.5下创建一个zkdata目录 mkdir zkdata
接下来就可以启动zookeeper了
执行 zkServer.sh start 启动zookeeper
再执行zkServer.sh status 查看zookeeper状态
出现mode:为standalone就说明zookeeper单节点模式部署完成了
集群模式部署
首先需要准备三台节点 master slave1 slave2(最低为三台)
常规的 防火墙 主机名就不再过多的赘述
修改域名映射 vim /etc/hosts 添加三台节点的IP地址和主机名(在三个节点下都执行该操作)例如
以下操作只需要在master上执行
配置免密 ssh-keygen,ssh-copy-id master,ssh-copy-id slave1,ssh-copy-id slave2(为了安全考虑只配置master与各节点之间的免密)
在master上执行解压zookeeper安装包操作命令参照单节点模式
解压之后同样是拷贝zookeeper下的zoo_sample.cfg 为zoo.cfg 同时修改dataDir的路径,同单节点一样即可 同时记得在zookeeper-3.5.5下创建一个zkdata目录 mkdir zkdata
同时在zoo.cfg末尾添加以下内容
其中 IP地址以自身实际IP为准 2888端口为个节点之间心跳联系端口,3888为通信端口
将配置文件发送到其他节点
注意 现在slave1,slave2上创建一个存放zookeeper的目录,例如 /opt/bigdata 否则在传输文件过程中会出现文件散架的情况,会给进行之后的操作时带来不便
scp -r /opt/bigdata/zookeeper-3.5.5 slave1:/opt/bigdata
scp -r /opt/bigdata/zookeeper-3.5.5 slave2:/opt/bigdata
scp -r /etc/profille slave1:/etc/
scp -r /etc/profille slave2:/etc/
记得在slave1 slave2 刷新环境变量 source /etc/profile
接下来在三台节点上执行一下操作
Master
echo 1 > /opt/bigdata/zookeeper-3.5.5/zkdata/myid
slave1
echo 2 > /opt/bigdata/zookeeper-3.5.5/zkdata/myid
slave2
echo 3 > /opt/bigdata/zookeeper-3.5.5/zkdata/myid
接下来就可以启动集群模式下的zookeeper了
在三台节点下都执行zkServer.sh start 完成之后再执行zkServer.sh status
出现以下结果就证明zookeeper集群模式部署完成了
# 三台节点必须完成了主备选举,即出现一个leader,两个follower



