当前位置: 代码网 > 服务器>服务器>Linux > ZooKeeper【部署 01】单机版安装+配置+添加到service服务+开机启动配置

ZooKeeper【部署 01】单机版安装+配置+添加到service服务+开机启动配置

2024年08月06日 Linux 我要评论
Linux chkconfig 命令用于检查,设置系统的各种服务。这是 Red Hat 公司遵循 GPL 规则所开发的程序,它可查询操作系统在每一个执行等级中会执行哪些系统服务,其中包括各类常驻服务。这个方向初期比较容易入门一些,掌握一些基本技术,拿起各种现成的工具就可以开黑了。对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。至此,zookeeper单机版部署成功。因篇幅有限,仅展示部分资料。

学习路线:

这个方向初期比较容易入门一些,掌握一些基本技术,拿起各种现成的工具就可以开黑了。不过,要想从脚本小子变成黑客大神,这个方向越往后,需要学习和掌握的东西就会越来越多以下是网络渗透需要学习的内容:
在这里插入图片描述

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

一个人可以走的很快,但一群人才能走的更远!不论你是正从事it行业的老鸟或是对it行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

vim /etc/profile.d/my_env.sh
# 1.添加 zookeeper\_home 和 path
export zookeeper\_home=/usr/local/zookeeper
export path=$path:$zookeeper\_home/bin
# 2.使得配置的环境变量立即生效:
	# 首先是要赋权限【只操作一次就行】
	chmod +x /etc/profile.d/my_env.sh
source /etc/profile.d/my_env.sh
# 3.验证是否生效
echo ${zookeeper\_home}
/usr/local/zookeeper

zookeeper配置文件:

# 进入${zookeeper\_home}/conf/ 目录下 拷贝配置样本并进行修改 
cp zoo_sample.cfg zoo.cfg
vim zoo.cfg

# ------------以下为配置文件内容------------
# 指定数据存储目录和日志文件目录(目录不用预先创建)
datadir=/usr/local/zookeeper/data
datalogdir=/usr/local/zookeeper/log
# 以下使用默认值
ticktime=2000
initlimit=10
synclimit=5
clientport=2181

配置项说明:

  • datadir:zk用于存储内存数据库快照的目录。如果不指定datalogdir参数,则数据库更新的事务日志也将会存储在该目录下。
  • datalogdir:指定zk事务日志的存储目录。
  • ticktime: zk中使用的基本时间单元,单位为毫秒,用于控制心跳和超时,比如session超时:n*ticktime。更低的ticktime值可以更快的发现超时问题。
  • initlimit:用于集群,zk集群中follower初始化连接到leader时,最长能忍受多少个ticktime,以ticktime的倍数来表示,默认值为10,即为20s。
  • synclimit:用于集群,用于配置leader和follower间进行心跳检测的最大超时时间。如果在设置的时间内followers无法与leader进行通信,那么follower将会被丢弃。以ticktime的倍数来表示,默认值为5,即10s。
  • clientport:服务器监听客户端连接的端口,默认值为2181
  • maxclientcnxns:限制单个客户端与单台服务之间的并发连接数,默认值为60,设置为0则不限制。
  • autopurge.snapretaincount:配置zk在自动清理的时候需要保存的数据文件快照的数量和对应的事务日志文件,默认为3。
  • autopurge.purgeinterval:和autopurge.snapretaincount配置使用,用于配置zk自动清理文件的频率,默认为1小时,即默认开启自动清理功能,设置为0,则表示禁用清理功能。

3.启动

命令启动:

# zookeeper服务命令
zkserver.sh [--config <conf-dir>] {start|start-foreground|stop|version|restart|status|print-cmd}
# 启动
zkserver.sh start

配置开机启动:

# 1.添加文件
vim /etc/rc.d/init.d/zookeeper
# ------------文件内容------------
# 如果有kafka服务那么chkconfig的配置参数启动服务的优先等级要高于kafka停止服务的优先等级要低于kafka
#!/bin/bash
# chkconfig: 2345 80 12
# description: service zookeeper
# processname: zookeeper
export java\_home=/usr/local/java
zookeeper\_home=/usr/local/zookeeper
case  "$1"   in
     start) su root ${zookeeper\_home}/bin/zkserver.sh start;;
     start-foreground) su root ${zookeeper\_home}/bin/zkserver.sh start-foreground;;
     stop) su root ${zookeeper\_home}/bin/zkserver.sh stop;;
     status) su root ${zookeeper\_home}/bin/zkserver.sh status;;
     restart) su root ${zookeeper\_home}/bin/zkserver.sh restart;;
     upgrade) su root ${zookeeper\_home}/bin/zkserver.sh upgrade;;
     print-cmd) su root ${zookeeper\_home}/bin/zkserver.sh print-cmd;;
     *) echo "require start|start-foreground|stop|status|restart|print-cmd";;
esac

# 2.赋执行权并添加开启开机自启
chmod +x /etc/rc.d/init.d/zookeeper
chkconfig --add /etc/rc.d/init.d/zookeeper
chkconfig zookeeper on
# 查看zookeeper是否添加成功
chkconfig --list zookeeper
zookeeper       0:off   1:off   2:on    3:on    4:on    5:on    6:off

# 3.服务命令
service zookeeper start
service zookeeper stop
...

# 如果防火墙未关闭则需要开启外网端口
firewall-cmd --zone=public --add-port=2181/tcp --permanent && firewall-cmd --reload

4.验证

由于已经配置过环境变量,直接使用下面命令启动即可:

[root@tcloud ~]# zkserver.sh start
zookeeper jmx enabled by default
using config: /usr/local/zookeeper/bin/../conf/zoo.cfg
starting zookeeper ... started

由于添加了service服务,也可使用服务命令【本质是一样的】:

[root@tcloud ~]# service zookeeper start
zookeeper jmx enabled by default
using config: /usr/local/zookeeper/bin/../conf/zoo.cfg
starting zookeeper ... started

使用 jps 验证进程是否已经启动,出现 quorumpeermain 则代表启动成功:

[root@tcloud /]# jps
15934 quorumpeermain

也可以登录客户端进行测试:

[root@tcloud /]# zkcli.sh
[zk: localhost:2181(connected) 0] version
zookeeper cli version: 3.6.2--803c7f1a12f85978cb049af5e4ef23bd8b688715, built on 09/04/2020 12:44 gmt

自启动测试:

# 重启
reboot
# 开机后查看zookeeper状态
last login: thu mar 31 08:56:56 2022
[root@tcloud ~]# service zookeeper status
zookeeper jmx enabled by default
using config: /usr/local/zookeeper/bin/../conf/zoo.cfg
client port found: 2181. client address: localhost. client ssl: false.
mode: standalone

至此,zookeeper单机版部署成功。

5.chkconfig配置说明

linux chkconfig 命令用于检查,设置系统的各种服务。这是 red hat 公司遵循 gpl 规则所开发的程序,它可查询操作系统在每一个执行等级中会执行哪些系统服务,其中包括各类常驻服务。

# 语法
chkconfig [--add][--del][--list][系统服务] 或 chkconfig [--level <等级代号>][系统服务][on/off/reset]

  • –add  增加所指定的系统服务,让 chkconfig 指令得以管理它,并同时在系统启动的叙述文件内增加相关数据。
  • –del  删除所指定的系统服务,不再由 chkconfig 指令管理,并同时在系统启动的叙述文件内删除相关数据。
  • –level<等级代号>  指定读系统服务要在哪一个执行等级中开启或关毕。

给大家的福利

零基础入门

对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。

同时每个成长路线对应的板块都有配套的视频提供:

在这里插入图片描述

因篇幅有限,仅展示部分资料

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

一个人可以走的很快,但一群人才能走的更远!不论你是正从事it行业的老鸟或是对it行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com