Linux下安装zookeeper、配置zookeeper开机自启动

本文主要介绍如何在Centos7下安装zookeeper以及如何使用。

  • 安装JDK
  • 下载安装zookeeper
  • 启动zookeeper
  • 设置zookeeper开机自动启动

一、安装JDK

使用zookeeper前,必须先安装JDK,如何安装JDK,可以查看:Linux 安装JDK 教程

二、下载安装zookeeper

2.1 通过官网下载:Apache Download Mirrors。本文中使用3.7.0版本。

// 进入下载目录并下载
cd /usr/local/

mkdir zookeeper

cd zookeeper

wget https://mirrors.bfsu.edu.cn/apache/zookeeper/zookeeper-3.7.0/apache-zookeeper-3.7.0-bin.tar.gz

注意:没有bin的是zk的源码包,可以看到也是maven项目,是需要编译打包才能使用

如果下载的不是bin包,执行启动命令 zkServer.sh start
zkServer启动失败,查看zk的日志文件,报如下错误:
Error:Could not find or Load main class org.apache.zookeeper.server.quorum.QuorumPeerMain
因此,需要下载bin包方可启动成功。

2.2 解压

// 解压
tar -zxvf apache-zookeeper-3.7.0-bin.tar.gz

2.3 修改配置文件

// 1.进入配置文件目录
cd apache-zookeeper-3.7.0-bin/conf

// 2.将zoo_sample.cfg这个文件复制为zoo.cfg (注意:文件名一定要是zoo.cfg) 
cp zoo_sample.cfg zoo.cfg

// 3.修改配置文件
vim zoo.cfg

修改zoo.cfg,修改前:

 修改后:

  注意:数据存放目录data由自己决定,但是启动服务前一定要确保对应的目录存在,不然启动会失败

 2.4 创建data文件夹

// 创建data目录
[root@localhost conf]# cd ../
[root@localhost apache-zookeeper-3.7.0-bin]# pwd
/usr/local/zookeeper/apache-zookeeper-3.7.0-bin
[root@localhost apache-zookeeper-3.7.0-bin]# mkdir data
[root@localhost apache-zookeeper-3.7.0-bin]# ll
总用量 44
drwxr-xr-x. 2 1000 1000  4096 3月  17 2021 bin
drwxr-xr-x. 2 1000 1000  4096 12月 28 18:09 conf
drwxr-xr-x. 2 root root  4096 12月 28 18:09 data
drwxr-xr-x. 5 1000 1000  4096 3月  17 2021 docs
drwxr-xr-x. 2 root root  4096 12月 28 18:04 lib
-rw-r--r--. 1 1000 1000 11358 3月  17 2021 LICENSE.txt
-rw-r--r--. 1 1000 1000   432 3月  17 2021 NOTICE.txt
-rw-r--r--. 1 1000 1000  2214 3月  17 2021 README.md
-rw-r--r--. 1 1000 1000  3570 3月  17 2021 README_packaging.md
[root@localhost apache-zookeeper-3.7.0-bin]# 

三、启动zookeeper

3.1 进入zookeeper下的bin目录

cd /usr/local/zookeeper/apache-zookeeper-3.7.0-bin/bin

3.2 执行启动命令

./zkServer.sh start

启动成功后如下:

除了开启,再备注几个其他命令:

// 停止
./zkServer.sh stop

// 重启
./zkServer.sh restart

// 查看状态
./zkServer.sh status

虽然这样可以正常启动,但是每次都要进入到zookeeper的bin目录下,为了避免麻烦,可以将zookeeper设置开机启动

四、设置zookeeper开机自动启动

centos7

4.1 切换到/lib/systemd/system/目录,创建自启动文件

cd /lib/systemd/system/
vim zookeeper.service

文件内容如下:

[Unit]
Description=zookeeperservice
After=network.target

[Service]
WorkingDirectory=/usr/local/zookeeper/apache-zookeeper-3.7.0-bin      #zookeeper路径
ExecStart=/usr/local/zookeeper/apache-zookeeper-3.7.0-bin/bin/zkServer.sh start       #zookeeper执行文件
User=root
Group=root
Restart=always
RestartSec=10

[Install]
WantedBy=multi-user.target

注意:zookeeper的路径需要修改成自己的!

重新加载配置信息:

systemctl daemon-reload

4.2 设置自启动

systemctl enable zookeeper.service

4.3 启动服务

systemctl start zookeeper.service

4.4 查看启动状态

systemctl status zookeeper.service

 4.5 自启动相关命令

重新加载配置信息:systemctl daemon-reload
启动zookeeper:systemctl start zookeeper.service
关掉zookeeper:systemctl stop zookeeper.service
查看进程状态及日志:systemctl status zookeeper.service
开机自启动:systemctl enable zookeeper.service
关闭自启动:systemctl disable zookeeper.service

centos6

第一种:修改vim /etc/rc.local文件

vim /etc/rc.local

加入:

export JAVA_HOME=/usr/local/jdk/jdk1.8.0_281 -- jdk安装路径
/usr/local/zookeeper/apache-zookeeper-3.7.0-bin/bin/zkServer.sh start -- zookeeper安装路径

重启后生效。

第二种:建立zookeeper服务

1、进入到/etc/rc.d/init.d目录下,新建一个zookeeper脚本

vim /etc/init.d/zookeeper

加入:

注意替换JAVA_HOME目录以及zookeeper安装目录

#!/bin/bash
#chkconfig:2345 20 90
#description:zookeeper
#processname:zookeeper
export JAVA_HOME=/usr/local/jdk/jdk1.8.0_281
case $1 in
        start) su root /usr/local/zookeeper/apache-zookeeper-3.7.0-bin/bin/zkServer.sh start;;
        stop) su root /usr/local/zookeeper/apache-zookeeper-3.7.0-bin/bin/zkServer.sh stop;;
        status) su root /usr/local/zookeeper/apache-zookeeper-3.7.0-bin/bin/zkServer.sh status;;
        restart) su /usr/local/zookeeper/apache-zookeeper-3.7.0-bin/bin/zkServer.sh restart;;
        *) echo "require start|stop|status|restart" ;;
esac

2、添加执行权限

chmod +x /etc/init.d/zookeeper

3、service zookeeper start/stop/status命令启动、停止或查看状态

-- 启动
service zookeeper start
-- 停止
service zookeeper stop-- 状态
service zookeeper status

4、添加到开机自启

chkconfig  --add zookeeper

开机自启配置好了,重启一下试试,如下所示:

-- 重启
reboot

-- 检查是否开机自启动
service zookeeper status

至此,在Linux下安装zookeeper就完成了!

原文地址:https://www.cnblogs.com/yang5726685/p/15639015.html