这里我以zookeeper3.4.10.tar.gz来演示安装,安装到/usr/local/soft目录下。

一.单机版配置

1.安装和配置

#.下载
wget http://apache.fayea.com/zookeeper/zookeeper-3.4.10/zookeeper-3.4.10.tar.gz
#.解压
tar -zxvf zookeeper3.4.10.tar.gz #.在zookeeper-3.4./conf目录下创建目录:
mkdir data
mkdir logs #.将zookeeper3.4.10/conf目录下的zoo_sample.cfg 文件拷贝一份,命名为为zoo.cfg
cp zoo_sample.cfg zoo.cfg #.修改zoo.cfg配置文件
vim zoo.cfg
#修改为上面创建的目录
dataDir=/usr/local/soft/zookeeper-3.4./data
#【该配置项为优化项,用于单独存放事务日志。参考官方文档】
dataLogDir=/usr/local/soft/zookeeper-3.4./logs

说明: 
dataDir是快照存储的目录。配置文件中已经明确说明不要使用/tmp来存储,/tmp在这里仅仅是为了演示的目的。 
dataLogDir是一个优化项,可以参考官方说明:优化

大致意思是:指明一个明确的事务日志目录可以在更新时降低延迟。默认的事务日志存放位置与data快照和myid文件存放位置相同。使用dataLogDir参数就可以指定一个不同的目录。

2.配置环境变量(可选)

配置环境变量后,则可在bin目录之外直接使用相应的命令。

#打开配置
vim /etc/profile #在文件尾加入以下内容
export ZOOKEEPER_HOME=/usr/local/soft/zookeeper-3.4.
export PATH=$PATH:$ZOOKEEPER_HOME/bin #刷新配置
source /etc/profile

3.启动(不要使用root用户启动)

#启动
zkServer.sh start
#停止
zkServer.sh stop
#查看运行状态
zkServer.sh status

运行状态中standalone表明当前为单节点模式。

4.设置开机启动(可选。生产环境下需要) 
设置开机启动有两种方式,分别对应/etc/rc.d目录下的init.d目录和rc.local文件。

说明: 由于linux建立了软链接init.d -> rc.d/init.d,rc.local -> rc.d/rc.local的缘故,所以/etc/rc.d/init.d可以简写为/etc/init.d,同样/etc/rc.d/rc.local可简写为/etc/rc.local
①方式一:开机启动脚本 
该方式类似于windows的’启动’目录,里面的批处理文件会在系统启动后自动运行。对应/etc/rc.d/init.d目录。 
打开/etc/rc.d/rc.local文件,加入以下内容

#以非root用户来启动脚本
su - 用户名 -c '/usr/local/soft/zookeeper-3.4.10/zkServer.sh start'

然后,重启试试。

②方式二:开机自启动服务服务

另一种是做成开机自启动服务,这类似于windows中的系统服务,这些服务会在系统启动时自动启动。对应/etc/rc.d/rc.local文件。

#进入/etc/rc.d/init.d目录
cd /etc/rc.d/init.d
#创建zookeeper文件(每个服务对应一个文件),并授予执行权限
touch zookeeper
chomod +x zookeeper #编辑zookeeper文件(创建zookeeper服务)
vim zookeeper
加入如下内容(这里使用的是root用户)
#!/bin/bash
#chkconfig:
#description:zookeeper
#processname:zookeeper
case $ in
start) su root /usr/local/soft/zookeeper-3.4./bin/zkServer.sh start;;
stop) su root /usr/local/soft/zookeeper-3.4./bin/zkServer.sh stop;;
status) su root /usr/local/soft/zookeeper-3.4./bin/zkServer.sh status;;
restart) su root /usr/local/soft/zookeeper-3.4./bin/zkServer.sh restart;;
*) echo "require start|stop|status|restart" ;;
esac #将zookeeper服务添加到开机启动项
chkconfig –add zookeeper
#查看开机自启项中是否已有zookeeper服务
chkconfig --list
#重启系统试试
#测试服务
service zookeeper start/stop/restart/status

二、配置参数说明

1.tickTime:
Zookeeper服务器之间或客户端与服务器之间维持心跳的时间间隔,也就是每个 tickTime 时间就会发送一个心跳。tickTime以毫秒为单位。
tickTime=2000

2.initLimit:Leader-Follow初始通信时限
集群中的follower服务器(F)与leader服务器(L)之间初始连接时能容忍的最多心跳数(tickTime的数量)。启动有快有慢,超过该值则认为启动失败。
initLimit=5

3.syncLimit:LF同步通信时限
集群中的follower服务器与leader服务器之间请求和应答之间能容忍的最多心跳数(tickTime的数量)。
syncLimit=2

4.dataDir:数据文件目录
Zookeeper保存数据的目录,默认情况下,Zookeeper将写数据的日志文件也保存在这个目录里。
dataDir=/home/michael/opt/zookeeper/data

5.clientPort:客户端连接端口
客户端连接 Zookeeper 服务器的端口,Zookeeper 会监听这个端口,接受客户端的访问请求。
clientPort=2181

6.服务器名称与地址:集群信息(服务器编号,服务器地址,LF通信端口,选举端口)
这个配置项的书写格式比较特殊,规则如下:
server.N=YYY:A:B

server.1=test05:2888:3888
server.2=test06:2888:3888
server.3=test07:2888:3888

三、集群版配置

为了高可用,通常会配置zookeeper集群。Zookeeper集群中只要有过半的节点是正常的情况下,那么整个集群对外就是可用的。正是基于这个特性,要将ZK集群的节点数量要为奇数(2n+1:如3、5、7个节点)较为合适。

以下是由三台zookeeper组成的集群的配置。
1.添加配置
只需要在前面单机配置的基础上,在配置文件追加如下内容

#服务器编号,服务器地址,Leader-Follow通信端口,选举端口
server.=test01::
server.=test02::
server.=test03::

说明:服务器地址可以直接写成ip形式,但推荐使用了ip与主机名绑定形式。 
只需在/etc/hosts文件中添加:

# zookeeper servers
192.168.8.88 test01

2.验证集群 
分别启动三个zookeeper节点,查看运行状态。

zkServer.sh status

如果集群正常,则三台zookeeper都不再是standalone模式,而是会有一个leader模式和两个follower模式。其中leader是由zookeeper的选举策略选举产生的。

zookeeper之一 安装和配置(单机+集群)的更多相关文章

  1. Zookeeper 2、Zookeeper的安装和配置(集群模式)

    1.下载与解压 Zookeeper下载地址:http://www.apache.org/dyn/closer.cgi/zookeeper/ 下载完成以后解压到一个特定目录 同步时间所有节点的时间,并关 ...

  2. ZooKeeper 的安装和配置---单机和集群

    如题本文介绍的是ZooKeeper 的安装和配置过程,此过程非常简单,关键是如何应用(将放在下节及相关节中介绍). 单机安装.配置: 安装非常简单,只要获取到 Zookeeper 的压缩包并解压到某个 ...

  3. Redis 安装、配置、集群

    1.   Redis的安装 1.1. Redis的安装 Redis是c语言开发的. 安装redis需要c语言的编译环境.如果没有gcc需要在线安装.yum install gcc-c++ 安装步骤: ...

  4. zookeeper:springboot+dubbo配置zk集群并测试

    1.springboot配置zk集群 1.1:非主从配置方法 dubbo: registry: protocol: zookeeper address: ,, check: false 1.2:主从配 ...

  5. zookeeper的安装与部署-伪集群

    1.Zookeeper的下载与解压     通过后面的链接下载Zookeeper:    Zookeeper下载在此我们下载zookeeper-3.4.5下载后解压至安装目录下,本文我们解压到目录:/ ...

  6. 【Linux】【Services】【SaaS】Docker+kubernetes(5. 安装和配置ETCD集群)

    1. 简介: 1.1. ETCD是kubernetes和openstack都用到的组件,需要首先装好 1.2. 官方网站:https://coreos.com/etcd/ 1.3. ETCD的作用: ...

  7. 快速安装与配置kubernetes集群搭

    Kubernetes是什么? 首先,它是一个全新的基于容器技术的分布式架构领先方案.这个方案尽然很新,但它是谷歌十几年以来大规模应用容器技术的经验积累和升华的一个重要成果.确切地说,kubernete ...

  8. 安装和配置hadoop集群步骤

    hadoop集群的安装步骤和配置 hadoop是由java语言编写的,首先我们肯定要在电脑中安装jdk,配置好jdk的环境,接下来就是安装hadoop集群的步骤了,在安装之前需要创建hadoop用户组 ...

  9. ZooKeeper(3.4.5) - 配置伪集群模式

    1. 准备 Java 运行环境,需要安装 Java1.6 或更高版本的 JDK. 2. 下载 ZooKeeper 的稳定版本 zookeeper-x.x.x.tar.gz,将其解压,约定目录名称为 % ...

随机推荐

  1. kafka-manager怎么查看topic里的数据量

    https://jingyan.baidu.com/article/eb9f7b6d367679869364e8d4.html

  2. EasyHook

    EasyHook实用指南 所谓实用指南就是全是干货,没那么多虚头巴脑的东西,真正要用的人会发现对自己有用的东西,浅尝辄止的人看起来会不知所云. FileMon自己实做的过程中遇到的问题: 1. exe ...

  3. windows安装程序制作

    作为一个学计算机的,现在才知道那些安装软件都是用软件封装工具封装起来的. 我们写好exe以后可以下载一个Inno setup5 对其打包成可安装的软件,期间可加入图标,readme,等等一些东西.

  4. 数据库之SQL语句查询基础

    人的一生要疯狂一次,无论是为一个人,一段情,一段旅途,或一个梦想. 人没有梦想是荒废的,是漫无目的的,拥有梦想你会飞的更远. 下面我就来为大家介绍一下SQL语句的查询基础,以下使用MySchool数据 ...

  5. MYSQL5.7源码包编译安装

    Centos下用cmake编译安装MySQL 5.7安装依赖包yum -y install gcc gcc-c++ ncurses ncurses-devel cmake下载相应源码包cd /usr/ ...

  6. ubuntu 环境配置

    安装包准备 下载 410以上显卡驱动 文件名: NVIDIA-Linux-x86_64-410.66.run 下载 cuda 10.0 选择 CUDA Toolkit 10.0 (Sept 2018) ...

  7. clearfix:after 的用法

    想要清除浮动就要在父元素上 加上 clearfix:after .clearfix:after { <----在类名为“clearfix”的元素内最后面加入内容: content: " ...

  8. [转帖]K8s集群安装--最新版 Kubernetes 1.14.1

    K8s集群安装--最新版 Kubernetes 1.14.1 http://www.cnblogs.com/jieky/p/10679998.html 原作者写的比较简单 大略流程和跳转的多一些 改天 ...

  9. Django @csrf_exempt不适用于基于通用视图的类(Django @csrf_exempt does not work on generic view based class)

    class ChromeLoginView(View): def get(self, request): return JsonResponse({'status': request.user.is_ ...

  10. pureftp安装

    1.下载 #cd /usr/local/src #wget http://download.pureftpd.org/pub/pure-ftpd/releases/pure-ftpd-1.0.36.t ...