一,下载zookeeper:

1,官网地址

http://zookeeper.apache.org/

找到这个地址:

https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/zookeeper-3.5.6/

2,下载

[root@localhost liuhongdi]# cd /usr/local/source/
[root@localhost source]# wget https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/zookeeper-3.5.6/apache-zookeeper-3.5.6-bin.tar.gz

说明:刘宏缔的架构森林是一个专注架构的博客,地址:https://www.cnblogs.com/architectforest

对应的源码可以访问这里获取: https://github.com/liuhongdi/

说明:作者:刘宏缔 邮箱: 371125307@qq.com

二,解压

[root@localhost source]# tar -zxvf apache-zookeeper-3.5.6-bin.tar.gz
[root@localhost source]# mv apache-zookeeper-3.5.6-bin /usr/local/soft/

三,安装

1,创建数据目录:

[root@localhost source]# mkdir /data/data
[root@localhost source]# mkdir /data/data/zookeeper
[root@localhost source]# chmod 777 /data/data/zookeeper/

2,修改配置文件

[root@localhost soft]# cd apache-zookeeper-3.5.6-bin/
[root@localhost apache-zookeeper-3.5.6-bin]# cd conf/
[root@localhost conf]# cp zoo_sample.cfg zoo.cfg
[root@localhost conf]# vi zoo.cfg
dataDir=/data/data/zookeeper
说明:dataDir=的值:是在配置文件中,指定要使用的数据目录

3,把二进制命令的路径加入系统path

[root@localhost conf]# vi /etc/profile

说明:在末尾增加以下命令:

export ZK_HOME=/usr/local/soft/apache-zookeeper-3.5.6-bin
export PATH=$ZK_HOME/bin:$PATH

修改完成之后,使配置起作用:

[root@localhost conf]# source /etc/profile

四,启动和停止zookeeper

启动

[root@localhost conf]# zkServer.sh start 

停止

[root@localhost conf]# zkServer.sh stop

五,增加systemd管理zookeeper功能

1,新建service文件

[root@localhost conf]# vi /etc/systemd/system/zookeeper.service

说明:service文件的内容:

[Unit]
Description=zookeeper.service
After=network.target
ConditionPathExists=/usr/local/soft/apache-zookeeper-3.5.6-bin/conf/zoo.cfg
[Service]
Type=forking
User=root
Group=root
ExecStart=/usr/local/soft/apache-zookeeper-3.5.6-bin/bin/zkServer.sh start
ExecStop=/usr/local/soft/apache-zookeeper-3.5.6-bin/bin/zkServer.sh stop
[Install]
WantedBy=multi-user.target

2,直接使用systemctl启动zookeeper会因找不到java的路径报错,

我们需要手动修改zkEnv.sh文件:

[root@localhost conf]# vi /usr/local/soft/apache-zookeeper-3.5.6-bin/bin/zkEnv.sh

编辑的内容:

添加如下一行
JAVA_HOME=/usr/local/soft/jdk-13.0.2
到此两行上方即可:
ZOOBINDIR="${ZOOBINDIR:-/usr/bin}"
ZOOKEEPER_PREFIX="${ZOOBINDIR}/.."

3,测试systemctl的管理:

启动

[root@localhost conf]# systemctl start zookeeper

停止

[root@localhost conf]# systemctl stop zookeeper

六,如何查看当前已安装的zookeeper的版本?

[root@localhost conf]# echo stat|nc 127.0.0.1 2181
stat is not executed because it is not in the whitelist.

说明:需要解决上面这个报错

[root@localhost conf]# vi /usr/local/soft/apache-zookeeper-3.5.6-bin/bin/zkServer.sh

编辑的内容:

找到:

else
echo "JMX disabled by user request" >&2
ZOOMAIN="org.apache.zookeeper.server.quorum.QuorumPeerMain"
fi 在上面这行fi下面添加: ZOOMAIN="-Dzookeeper.4lw.commands.whitelist=* ${ZOOMAIN}"

继续测试

[root@localhost conf]# systemctl stop zookeeper
[root@localhost conf]# systemctl start zookeeper
[root@localhost conf]# echo stat|nc 127.0.0.1 2181
Zookeeper version: 3.5.6-c11b7e26bc554b8523dc929761dd28808913f091, built on 10/08/2019 20:18 GMT
Clients:
/127.0.0.1:41352[0](queued=0,recved=1,sent=0) Latency min/avg/max: 0/0/0
Received: 1
Sent: 0
Connections: 1
Outstanding: 0
Zxid: 0x0
Mode: standalone
Node count: 5

七,关闭zookeeper内置的管理器

zookeeper内置有一个web管理器,默认使用8080端口,

但这个版本的管理器不能正常访问,

我们可以避免启动内置的管理器,也避免占用8080端口

[root@localhost conf]# vi /usr/local/soft/apache-zookeeper-3.5.6-bin/conf/zoo.cfg
[root@localhost conf]# systemctl stop zookeeper
[root@localhost conf]# systemctl start zookeeper

说明:在配置文件zoo.cfg中添加如下一行:

admin.enableServer=false

八,配置zookeeper的日志目录:

1,创建日志目录

[root@localhost conf]# mkdir /data/logs/zookeeperlogs
[root@localhost conf]# chmod 777 /data/logs/zookeeperlogs

2,在zkEnv.sh中定义日志的路径

[root@localhost conf]# vi /usr/local/soft/apache-zookeeper-3.5.6-bin/bin/zkEnv.sh

说明:定义ZOO_LOG_DIR这个变量即可

if [ "x${ZOO_LOG_DIR}" = "x" ]
then
#ZOO_LOG_DIR="$ZOOKEEPER_PREFIX/logs"
ZOO_LOG_DIR="/data/logs/zookeeperlogs"
fi

3,测试效果:

[root@localhost conf]# systemctl stop zookeeper
[root@localhost conf]# systemctl start zookeeper
[root@localhost conf]# ll /data/logs/zookeeperlogs/
总用量 8
-rw-r--r-- 1 root root 7649 2月 18 21:36 zookeeper-root-server-localhost.localdomain.out

九,查看本地centos的版本:

[root@localhost lib]# cat /etc/redhat-release
CentOS Linux release 8.1.1911 (Core)

centos8安装zookeeper(单机方式)的更多相关文章

  1. centos8安装kafka(单机方式)

    一,下载kafka 1,官网地址 http://kafka.apache.org/downloads.html 2,下载 [root@localhost source]# wget http://mi ...

  2. RedHat6.5安装zookeeper单机

    版本号: Redhat6.5  zookeeper-3.4.6  JDK1.8 zookeeper下载 官网下载地址:https://mirrors.tuna.tsinghua.edu.cn/apac ...

  3. zookeeper(二):linux centos下安装zookeeper(单机和集群)

    下载 http://zookeeper.apache.org/releases.html 解压 tar –zxvf zookeeper-3.4.6.tar.gz 解压文件到"/usr/loc ...

  4. Dubbo(三) 安装Zookeeper 单机-集群

    一.下载zookeeper zookeeper下载地址:https://www.apache.org/dyn/closer.cgi/zookeeper/点击下载 二.启动配置 选择合适版本下载后解压到 ...

  5. 云服务器 - 安装zookeeper单机环境

    由于电脑中病毒,被人当做肉鸡挖矿了...所以很多东西都要重装, 之前没有写过zk如何安装,所以安装的时候顺便来记录一下分享出来 第一步上传zk安装包到服务器,如图: 解压: tar -zxvf zoo ...

  6. RedHat6.5安装kafka单机

    版本号: Redhat6.5    JDK1.8     zookeeper-3.4.6   kafka_2.11-0.8.2.1 1.软件环境 已经搭建好的zookeeper:  RedHat6.5 ...

  7. zookeeper(单机/集群)安装与配置

    一.安装与单机配置 1.下载: wget http://archive.apache.org/dist/zookeeper/stable/zookeeper-3.4.6.tar.gz 如果网站下载不了 ...

  8. (原) 1.1 Zookeeper单机安装

    本文为原创文章,转载请注明出处,谢谢 zookeeper 单机安装配置 1.安装前准备 linux系统(此文环境为Centos6.5) Zookeeper安装包,官网https://zookeeper ...

  9. zookeeper单机模式安装

    zookeeper单机模式安装 更多文章:http://blogxinxiucan.sh1.newtouch.com/2017/07/26/zookeeper单机模式安装/ 下载zookeeper u ...

随机推荐

  1. Dos拒绝服务Sockstress/TearDrop 泪滴攻击(二)

    Sockstress放大攻击原理:攻击者向目标发送一个很小的流量,但是会造成产生的攻击流量是一个巨大的.成百上千倍上万倍流量被放大的一个效果,才适合作为一个拒绝服务攻击效果.(实现攻击者很小的流量打垮 ...

  2. Robotframework自动化4-基础关键字介绍1

    前言 上一节已经介绍了APP的启动,那我们就会看到我们引用了一些关键字,对于AppiumLibrary都有哪些常用的关键呢,这一节主要介绍这一部分. AppiumLibrary 常用关键字介绍 1.关 ...

  3. PHP学习路线图(转)

    PHP学习路线图 在网上很多人公布了太多的PHP学习路线图,本人在互联网公司工作十余年,也带了很多PHP入门的新手,将他们的一些问题和学习路线图为大家整理出来,希望很多小白少走弯路. 一. 网上某些错 ...

  4. 透过 Cucumber 学习 BDD

    在需求的开发过程中,最令人困惑的地方就在于需求模糊.需求是解决业务的问题,那么验收的方式应该是由业务方提出,但是往往业务方(可能是产品经理,也可能是直接是客户)只能给出比较模糊的一个验收标准,而程序却 ...

  5. Scanner输入方法

    输入语句: * import java.util.Scanner; * System.out.println("请输入你想输入的东西:"); * Scanner (自定义)sc = ...

  6. java 多线程-4

    十四.sleep方法和wait方法的区别 [面试题] 相同点: 一旦执行方法,都可以使得当前线程进入阻塞状态. 不同点: 两个方法的声明位置不同:Thread类声明sleep():Object类中声明 ...

  7. ASP.NET Web API 2系列(四):基于JWT的token身份认证方案

    1.引言 通过前边的系列教程,我们可以掌握WebAPI的初步运用,但是此时的API接口任何人都可以访问,这显然不是我们想要的,这时就需要控制对它的访问,也就是WebAPI的权限验证.验证方式非常多,本 ...

  8. Tomcat 第四篇:请求处理流程(上)

    1. 引言 既然是在讲 Tomcat ,那么一个 HTTP 请求的请求流程是无论如何也绕不开的. 首先抛开所有,使用我们现有的知识面,猜测一下一个请求被 Tomcat 处理的过程: 1. 客户端(浏览 ...

  9. Ribbon自定义负载均衡策略,在网关实现类似Ip_hash的负载均衡,ribbon给单个服务配置属性

    背景: 我需要在网关实现一种功能,某个用户的请求永远打在后台指定的服务,也就是根据ip地址进行负载均衡 原理: 在ribbon的配置类下: 那我们自己创建一个IRule的实现类,模仿ZoneAvoid ...

  10. python3 进行接口测试

    最近有研究接口测试,然后查了查资料,发现有两种方法,一种是使用urllib库,一种是使用requests库.而在这里,我使用的是requests库,为什么要用这个呢? 从官方文档看出,python的标 ...