Zookeeper 安装教程

Zookeeper 是什么?

ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务


名词解释

  • bin目录: zk的可执行脚本目录,包括zk服务进程,zk客户端,等脚本。其中,.sh是Linux环境下的脚本,.cmd是Windows环境下的脚本。
  • conf目录:配置文件目录。zoo_sample.cfg为样例配置文件,需要修改为自己的名称,一般为zoo.cfg。log4j.properties为日志配置文件。
  • lib: zk依赖的包。
  • contrib: 一些用于操作zk的工具包。
  • recipes: zk某些用法的代码示例

安装

下载

下载地址: https://zookeeper.apache.org/releases.html

配置文件

将conf目录下的 zoo_sample.cfg 文件 修改为 zoo.cfg

解释:

  • tickTime : 时长单位为毫秒,为zk使用的基本时间度量单位。例如,1 * tickTime是客户端与zk服务端的心跳时间,2* tickTime是客户端会话的超时时间。 tickTime的默认值为2000毫秒,更低的tickTime值可以更快地发现超时问题,但也会导致更高的网络流量(心跳消息)和更高的CPU使用率(会话的跟踪处理)。
  • clientPort : zk服务进程监听的TCP端口,默认情况下,服务端会监听2181端口。
  • dataDir : 无默认配置,必须配置,用于配置存储快照文件的目录。如果没有配置dataLogDir,那么事务日志也会存储在此目录。

启动

windows:

zkServer.cmd

linux:

./zkServer.sh start   
./zkServer.sh start-foreground #后台启动 

连接zk:

bin/zkCli.sh -server localhost:2181

添加为系统服务
cd /etc/rc.d/init.d/ 
touch zookeeper  
chmod +x zookeeper 
vi zookeeper

编辑文件为:

#!/bin/bash  
#chkconfig:2345 20 90  
#description:zookeeper  
#processname:zookeeper  
export JAVA_HOME=//usr/java/jdk1.8.0_112  
case $1 in  
        start) su root /usr/local/zookeeper-3.4.5/bin/zkServer.sh start;;  
        stop) su root /usr/local/zookeeper-3.4.5/bin/zkServer.sh stop;;  
        status) su root /usr/local/zookeeper-3.4.5/bin/zkServer.sh status;;  
        restart) su /usr/local/zookeeper-3.4.5/bin/zkServer.sh restart;;  
        *) echo "require start|stop|status|restart" ;;  
esac 
开机启动
chkconfig --add zookeeper
chkconfig --list

问题

1、端口被占用 lsof -i:2181

2、数据不完整 删除 /temp/zookeeper/下的文件,然后使用 ./zkServer.sh start

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏蓝天

为什么不能在SSH(Secure Shell)登录中设置ulimit值?

SuSE上的一些问题,可能需要另参考:http://blog.chinaunix.net/u2/64804/showart.php?id=2026903

1102
来自专栏L宝宝聊IT

KVM综合实验

1)首先我们创建好存储池/mykvm/kvm-vm,和镜像存储池/mykvm/iso

1663
来自专栏魏艾斯博客www.vpsss.net

Windows vps 如何挂载新建 D 盘

4603
来自专栏技术文章

资深专家深度剖析Kubernetes API Server第1章(共3章)

欢迎来到深入学习Kubernetes API Server的系列文章,在本系列文章中我们将深入的探究Kubernetes API Server的相关实现。如...

1322
来自专栏知晓程序

开发 | 如何在小程序里搭建客服系统?

知晓程序(微信号 zxcx0101)今天带来的,是基于「药顾问」微信小程序项目的 socket 客服模块搭建过程。

1292
来自专栏全栈架构

让node.js服务永不跪的工具PM2的安装与使用

因为node.js 是单进程,进程被杀死后整个服务就跪了,所以需要进程管理工具,但是pm2 远远不止这些。

1112
来自专栏奇梦博客

AppNode如何安装使用PureFTPd服务器

2、记得AppNode防火墙开放21端口和如下被动端口,如果是云服务器需到服务器控制台安全组开放端口,否则无法连接;

4677
来自专栏奇梦博客

AppNode如何安装使用PureFTPd服务器 原创 Linux AppNode

1432
来自专栏holer

如何从外网访问内网网站

在holer官网上申请专属的holer access key或者使用开源社区上公开的access key信息。

3873
来自专栏磨磨谈

rbd-mirror配置指南-单向备份

RBD 的 mirroring 功能将在Jewel中实现的,这个Jewel版本已经发布了很久了,这个功能已经在这个发布的版本中实现了,本来之前写过一篇文章,但是...

881

扫码关注云+社区