`
attend
  • 浏览: 35070 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

zookeeper 3.4.2集群安装

 
阅读更多

 

 

集群安装

 

1.安装JDK。下载地址:http://java.sun.com/javase/downloads/index.jsp 
   设置JAVA_HOME ,$JAVA_HOME/bin 加到PATH变量里。

2.下载Zookeeper 地址:http://hadoop.apache.org/zookeeper/releases.html 解压到相应目录。

3.创建配置文件。conf/zoo.cfg 内容例如:

#tickTime:这个时间是作为 Zookeeper 服务器之间或客户端与服务器之间维持心跳的时间间隔,也就是每个 tickTime 毫秒时间就会发送一个心跳。

 

tickTime=2000

 

#dataDirZookeeper 保存数据的目录,默认情况下,Zookeeper 将写数据的日志文件也保存在这个目录里。

 

dataDir=/tmp/zookeeper/data

 

#dataLogDir:日志文件保存的位置

 

dataLogDir=/tmp/zookeeper/log

 

#clientPort:这个端口就是客户端连接 Zookeeper 服务器的端口,Zookeeper 会监听这个端口,接受客户端的访问请求。

 

clientPort=2181

 

#initLimit:这个配置项是用来配置 Zookeeper 接受客户端(这里所说的客户端不是用户连接 Zookeeper 服务器的客户端,而是 Zookeeper 服务器集群中连接到 Leader 的 Follower 服务器)初始化连接时最长能忍受多少个心跳时间间隔数。

#当已经超过 10 个心跳的时间(也就是 tickTime)长度后 Zookeeper 服务器还没有收到客户端的返回信息,那么表明这个客户端连接失败。总的时间长度就是 10*2000=20 秒。

 

initLimit=10 

 

#syncLimit:这个配置项标识 Leader 与 Follower 之间发送消息,请求和应答时间长度,最长不能超过多少个 tickTime 的时间长度,总的时间长度就是 5*2000=10 

 

syncLimit=5

 

#server.A=BCD:其中 是一个数字,表示这个是第几号服务器;是这个服务器的 ip 地址;表示的是这个服务器与集群中的 Leader 服务器交换信息的端口;表示的是万一集群中的 Leader 服务器挂了,需要一个端口来重新进行选举,选出一个新的 Leader,而这个端口就是用来执行选举时服务器相互通信的端口。

#如果是伪集群的配置方式,由于 都是一样,所以不同的 Zookeeper 实例通信端口号不能一样,所以要给它们分配不同的端口号。

 

server.1=192.168.211.1:2888:3888 

server.2=192.168.211.2:2888:3888 

server.3=192.168.211.3:2888:3888

 

#自动清理功能是3.4.0之后提供的功能。较低的版本需要手工运行清理工具。

#自动清理时保存在datadir里的数据快照数。最小值3

 

autopurge.snapRetainCount=3

 

#自动清理任务的间隔小时数

 

autopurge.purgeInterval=1

 


4.创建myid文件。
myid文件只包含一个单行文本,内容为机器的编号。server.A=BC其中的数字A 进入到dataDirecho A > myid 。

5.测试
全部配置完成后,进入各机器Zookeeperbin目录,执行./zkServer.sh start 

之后执行echo stat | nc localhost 2181 查看当前节点状态。

 


Observers配置

为提高zookeeper伸缩性而设计。Observers不参与投票的服务器,可以接受客户端的连接,将写请求转发给领导节点

 

设置 ZooKeeper 使用 Observers 非常简单,只需要在配置文件中有两处改动。

首先是每个 Observer 的配置文件中都要有这么一行:

peerType=observer

这行让服务器作为一个 Observer 来工作。之后,在每个服务器配置文件中,你必须在服务器定义行给每个 Observer 加入 :observer  。比如:

Server.4=192.168.211.4:2888:3888:observer

这让每个其他服务器知道 server.4 是一个 Observer,就不会让它进行投票了。

 

有关Obervers的说明详见gnawux的译文 http://wangxu.me/blog/p/320 

 

系统监控

使用命令监控

例如:

echo stat | nc ip port 

echo conf | nc ip port 

或者telnet ip port 输入 stat conf等。

常用指令如下:

conf :显示配置参数

cons :列出所有的连接

crst  :重置连接/session的统计信息

dump Lists the outstanding sessions and ephemeral nodes. Leader节点有效。

envi :输出环境变量

ruok 是否runok.

Srst重置服务器统计信息。

Srvr:显示服务器信息。平均等待时间,运行的模式等。

Stat:显示服务状态。

wchs Lists brief information on watches for the server. 显示多少个连接多少个被watchpath等。

wchc Lists detailed information on watches for the server, by session 小心使用,可能影响性能。

wchp  Lists detailed information on watches for the server, by path 小心使用,可能影响性能。

mntr  输出集群健康监测相关的信息。

 

使用jmx监控

修改zkServer.sh, ZOOMAIN部分的内容修改类似如下:

 

ZOOMAIN="-Dcom.sun.management.jmxremote  -Dcom.sun.management.jmxremote.local.only=$JMXLOCALONLY -Djava.rmi.server.hostname=10.10.249.197

-Dcom.sun.management.jmxremote.port=1911

-Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false

 org.apache.zookeeper.server.quorum.QuorumPeerMain"

 

启动后,可在远程启动jconsole通过jmx连接后监控。

 

问题处理

 当文件损坏导致无法启动时,解决方法如下:

1.启动其它能正常启动的zookeeper,并用echo ruok| nc ip port 判断正常运行。

2.删除 datadir/version-2 and datalogdir/version-2/ 目录。

3.启动zookeeper

 

分享到:
评论

相关推荐

    zookeeper linux集群搭建流程

    在开始搭建 ZooKeeper 集群之前,需要提前在本地安装好 JDK,因为 ZooKeeper 是用 Java 编写的,需要运行在 JVM 上。 第一步:下载和解压 ZooKeeper 首先,需要下载 ZooKeeper 的安装包,例如 zookeeper-3.4.6.tar...

    zookeeper-3.4.2.tar.gz

    1. 下载与解压:可以从Apache官网下载Zookeeper的tar.gz文件,如"zookeeper-3.4.2",解压后得到"zookeeper-3.4.2"目录。 2. 配置环境变量:修改系统环境变量,添加Zookeeper的bin目录到PATH中。 3. 修改配置文件:...

    Linux下Zookeeper集群的安装

    ### Linux下Zookeeper集群的安装详解 #### 一、Zookeeper概述及主要功能 ##### Zookeeper简介 Zookeeper是一款开源的分布式协调服务组件,属于Apache顶级项目之一。它主要用于简化分布式应用程序的开发过程,为...

    zookeeper集群安装.doc

    Zookeeper集群安装 Zookeeper是一个分布式应用程序协调服务,它提供了高效、可靠、稳定的分布式协调服务,可以帮助开发者快速构建可靠的分布式应用程序。在这个文档中,我们将详细介绍如何安装和配置Zookeeper集群...

    redis zookeeper kafka集群安装手册.doc

    redis zookeeper kafka集群安装手册

    zookeeper3.4.9集群安装

    ### Zookeeper 3.4.9 集群安装与配置详解 #### 一、准备工作 在进行Zookeeper 3.4.9集群的安装前,我们需要做好一系列的基础准备: 1. **操作系统**:本教程中使用的操作系统为CentOS 7。 2. **Java环境**:确保...

    zookeeper集群安装文档.docx

    总的来说,Zookeeper集群的安装涉及多台服务器的配置,包括JDK的安装、Zookeeper软件的解压、配置文件的定制以及服务的启动和测试。正确配置和运行Zookeeper集群对于构建和管理分布式系统至关重要,因为它提供了关键...

    Linux上安装ZooKeeper伪集群

    在Linux上安装ZooKeeper伪集群,CentOS7+ZooKeeper3.4.12

    zookeeper伪集群安装流程

    ### Zookeeper伪集群安装流程详解 #### 一、概述 Zookeeper是一款开源的分布式协调服务,主要用于解决分布式系统中常见的协调问题,如命名服务、配置管理、集群管理和分布式锁等。伪集群是一种特殊的集群模式,它...

    zookeeper 伪集群和集群环境搭建

    总结来说,搭建 Zookeeper 伪集群或集群主要涉及安装、配置以及启动服务。在配置过程中,理解并正确设置 Zookeeper 的核心参数至关重要,这将直接影响集群的稳定性和性能。同时,确保集群内的通信畅通无阻也是成功...

    zookeeper集群环境安装

    "Zookeeper 集群环境安装" Zookeeper 是一个分布式应用程序协调服务,提供了可靠的配置管理、分布式同步和命名注册等功能。为了在生产环境中使用 Zookeeper,需要安装和配置 Zookeeper 集群环境。下面是 Zookeeper ...

    Zookeeper单机及集群安装配置

    ### Zookeeper基础知识与架构 ...通过上述步骤,不仅可以完成Zookeeper单机版的安装配置,还可以搭建一个具备高可用特性的Zookeeper集群。这为分布式应用提供了一种可靠且高效的服务协调解决方案。

    高可用之ZooKeeper集群的安装、配置、高可用测试

    高可用之 ZooKeeper 集群的安装、配置、高可用测试 ZooKeeper 是一个广泛使用的分布式协调服务,提供了高可用、可靠的服务注册中心解决方案。高可用之 ZooKeeper 集群的安装、配置、高可用测试是分布式系统架构中...

    storma集群安装手册(包含zookeeper集群安装和storm集群安装)

    本文档主要介绍如何在多台服务器上部署一个完整的Storm集群,其中包括JDK安装、Zookeeper集群安装以及Storm集群的搭建。整个过程分为三个主要部分:Java环境(JDK)的安装、Zookeeper集群的配置以及Storm集群的具体...

    liunx安装zookeeper及集群部署

    【Linux 安装 Zookeeper 及集群部署】 Apache Zookeeper 是一个分布式的,开放源码的服务协调框架,源自 Apache Hadoop 的子项目,现已成为 Apache 顶级项目。它主要用于提供分布式环境下的配置管理、命名服务、...

    zookeeper集群安装

    ZooKeeper 集群安装 ZooKeeper 是一个开源的分布式协调服务,用于提供配置管理、名字服务、分布式同步和组服务等功能。下面是 ZooKeeper 集群安装的详细步骤和相关知识点。 Step 1: 安装 Java JDK 在安装 ...

    zookeeper单节点安装和伪分布式集群安装和完全分布式集群安装

    ### Zookeeper单节点安装与集群部署详解 #### 一、Zookeeper简介 ZooKeeper是一个分布式协调服务系统,主要用于解决分布式环境中常见的数据一致性问题。它能够简化开发人员处理分布式协调任务的工作,例如命名服务...

    zookeeper一键式安装脚本

    zookeeper一键式安装shell脚本,无需手动搭建集群环境,脚本运行即可自动配置

Global site tag (gtag.js) - Google Analytics