Linux下安装Zookeeper

删除回忆录丶 提交于 2020-03-30 18:51:42

Linux下安装Zookeeper

 

Zookeeper简介

 

  • 中间件,提供协调服务
  • 作用于分布式系统,发挥其优势,可以为大数据服务
  • 支持java,提供了java和c语言的客户端API

 

zookeeper,中文意思就是动物园管理员,通过zookeeper(群)来管理协调各个集群的分布式组件。
官网:https://zookeeper.apache.org/

 

Zookeeper特性

一致性:数据一致性,数据按照顺序分批入库
原子性:事务要么成功要么失败,不会局部化
单一视图:客户端连接集群中的任一zk节点,数据都是一致的
可靠性:每次对zk的操作状态都会保存在服务端
实时性:客户端可以读取到zk服务端的最新数据

 

 

 

安装步骤:

1:  首先确保已经安装好了jdk,因为zookeeper是需要依赖java来进行编译的。

 

下载zookeeper:

进入官网,点击导航菜单Project-->Releases,可以选择指定版本进行下载。

 

 

 也可以使用命令直接下载:

# 直接使用命令下载
wget https://archive.apache.org/dist/zookeeper/zookeeper-3.4.11/zookeeper-3.4.11.tar.gz
# 解压缩
tar -zxvf zookeeper-3.4.11.tar.gz

 

环境变量配置:

编辑环境变量配置文件:vi /etc/profile  i 进入编辑

在文件末尾位置添加如下内容
export ZOOKEEPER_HOME=/usr/local/zookeeper-3.4.11
export PATH=$PATH:$ZOOKEEPER_HOME/bin
Ctrl + c 然后通过vim的 ":wq" 命令进行保存退出
使配置生效:
source /etc/profile


zoo.cfg配置

首先需要进入conf文件夹下将复制zoo_simple.cfg改名为zoo.cfg:cp zoo_sample.cfg zoo.cfg
这样zookeeper就能读取到该配置文件,其主要配置项如下

 

 修改配置:

 

vi zoo.cfg
# 修改配置项
dataDir=/usr/local/zookeeper-3.4.11/dataDir
# 添加配置项
dataLogDir=/usr/local/zookeeper-3.4.11/dataLogDir
# 保存退出后,创建目录
mkdir dataDir
mkdir dataLogDir

 

启动、停止zookeeper

 

启动命令: cd /usr/local/zookeeper-3.4.11/bin 

./zkServer.sh start./zkServer.sh  stop 

 

查看zookeeper状态

命令: cd /usr/local/zookeeper-3.4.11/bin

./zkServer.sh status

 

开放2181端口

因为zookeeper默认的是2181端口号,为了能对外正常访问zookeeper,需要开放2181端口号,或者关闭防火墙;

1对外开放2181端口

命令:

firewall-cmd --zone=public --add-port=2181/tcp --permanent

  • –zone:作用域
  • –add-port=2181/tcp:添加端口,格式为:端口/通讯协议
  • –permanent:永久生效,没有此参数重启后失效

2 重启防火墙

命令: firewall-cmd --reload

3 查看已经开放的端口

命令: firewall-cmd --list-ports

4 停止防火墙

命令: systemctl stop firewalld.service

5 禁止防火墙开机启动,以防虚拟机重启的时候zookeeper被拦截

命令: systemctl disable firewalld.service

 

 配置zookeeper开机启动:

vim /etc/init.d/zookeeper

2:把如下脚本复制进去(根据自己的zookeeper、jdk安装路径修改一下路径):

#!/bin/bash
#chkconfig:2345 20 90
#description:zookeeper
#processname:zookeeper
ZK_PATH=/opt/zookeeper/zookeeper-3.4.11/
export JAVA_HOME=/opt/java/jdk1.8.0_221/
case $1 in
         start) sh  $ZK_PATH/bin/zkServer.sh start;;
         stop)  sh  $ZK_PATH/bin/zkServer.sh stop;;
         status) sh  $ZK_PATH/bin/zkServer.sh status;;
         restart) sh $ZK_PATH/bin/zkServer.sh restart;;
         *)  echo "require start|stop|status|restart"  ;;
esac

然后把脚本注册为Service

chkconfig --add zookeeper

增加权限

chmod +x /etc/init.d/zookeeper

然后启动zookeeper

service zookeeper start

 

 

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!