【ZooKeeper】ZooKeeper安装及简单操作

ZooKeeper介绍

  ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件。它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步、组服务等。

ZooKeeper的目标就是封装好复杂易出错的关键服务,将简单易用的接口和性能高效、功能稳定的系统提供给用户。

ZooKeeper包含一个简单的原语集, [1] 提供Java和C的接口。

  官网:https://zookeeper.apache.org

ZooKeeper安装

  安装环境:

    1、系统:CentOS 7.4

    2、Java环境:JDK8

  zookeeper有单机、伪集群、集群三种部署方式,本例使用的zookeeper版本是:zookeeper-3.4.12

  单机模式

    1、下载ZooKeeper,地址:http://mirrors.hust.edu.cn/apache/zookeeper/

    2、解压,命令:tar -zxvf zookeeper-3.4.12.tar.gz -C /data/soft/

      解压后目录如下:

      

    3、进入conf目录,创建一个zookeeper的配置文件zoo.cfg,可复制conf/zoo_sample.cfg作为配置文件

      命令:cd conf

      命令:cp zoo_sample.cfg zoo.cfg

      

      配置文件说明:

 1 # The number of milliseconds of each tick
 2 # tickTime:CS通信心跳数
 3 # Zookeeper 服务器之间或客户端与服务器之间维持心跳的时间间隔,也就是每个 tickTime 时间就会发送一个心跳。tickTime以毫秒为单位。
 4 tickTime=2000
 5
 6 # The number of ticks that the initial
 7 # synchronization phase can take
 8 # initLimit:LF初始通信时限
 9 # 集群中的follower服务器(F)与leader服务器(L)之间初始连接时能容忍的最多心跳数(tickTime的数量)。
10 initLimit=5
11
12 # The number of ticks that can pass between
13 # sending a request and getting an acknowledgement
14 # syncLimit:LF同步通信时限
15 # 集群中的follower服务器与leader服务器之间请求和应答之间能容忍的最多心跳数(tickTime的数量)。
16 syncLimit=2
17
18 # the directory where the snapshot is stored.
19 # do not use /tmp for storage, /tmp here is just
20 # example sakes.
21 # dataDir:数据文件目录
22 # Zookeeper保存数据的目录,默认情况下,Zookeeper将写数据的日志文件也保存在这个目录里。
23 dataDir=/data/soft/zookeeper-3.4.12/data
24
25
26 # dataLogDir:日志文件目录
27 # Zookeeper保存日志文件的目录。
28 dataLogDir=/data/soft/zookeeper-3.4.12/logs
29
30 # the port at which the clients will connect
31 # clientPort:客户端连接端口
32 # 客户端连接 Zookeeper 服务器的端口,Zookeeper 会监听这个端口,接受客户端的访问请求。
33 clientPort=2181
34
35 # the maximum number of client connections.
36 # increase this if you need to handle more clients
37 #maxClientCnxns=60
38 #
39 # Be sure to read the maintenance section of the
40 # administrator guide before turning on autopurge.
41 #
42 # http://zookeeper.apache.org/doc/current/zookeeperAdmin.html#sc_maintenance
43 #
44 # The number of snapshots to retain in dataDir
45 #autopurge.snapRetainCount=3
46 # Purge task interval in hours
47 # Set to "0" to disable auto purge feature
48 #autopurge.purgeInterval=1
49
50
51 # 服务器名称与地址:集群信息(服务器编号,服务器地址,LF通信端口,选举端口)
52 # 这个配置项的书写格式比较特殊,规则如下:
53
54 # server.N=YYY:A:B
55
56 # 其中N表示服务器编号,YYY表示服务器的IP地址,A为LF通信端口,表示该服务器与集群中的leader交换的信息的端口。B为选举端口,表示选举新leader时服务器间相互通信的端口(当leader挂掉时,其余服务器会相互通信,选择出新的leader)。一般来说,集群中每个服务器的A端口都是一样,每个服务器的B端口也是一样。但是当所采用的为伪集群时,IP地址都一样,只能时A端口和B端口不一样。

    4、可以不修改zoo.cfg,默认配置就行,进去zookeeper安装目录,启动ZooKeeper

      启动命令:./bin/zkServer.sh start

      停止命令:./bin/zkServer.sh stop  

      重启命令:./bin/zkServer.sh restart

      状态查看命令:./bin/zkServer.sh status

  伪集群模式

    伪集群模式就是在同一主机启动多个zookeeper并组成集群

    1、在同一台主机上,通过复制得到三个zookeeper实例

    

    2、对三个zookeeper节点进行配置

      zookeeper1配置文件conf/zoo.cfg修改如下:

 1 tickTime=2000
 2 initLimit=5
 3 syncLimit=2
 4 dataDir=/data/soft/zookeeper-cluster/zookeeper-3.4.12-12181/data
 5 dataLogDir=/data/soft/zookeeper-cluster/zookeeper-3.4.12-12181/logs
 6 clientPort=12181
 7
 8 server.1=127.0.0.1:12888:13888
 9 server.2=127.0.0.1:14888:15888
10 server.3=127.0.0.1:16888:17888

      zookeeper1的data/myid配置,使用如下命令(即新建一个文件data/myid,在其中添加内容为:1):

1 echo ‘1‘ > data/myid

      zookeeper2配置文件conf/zoo.cfg修改如下:

 1 tickTime=2000
 2 initLimit=5
 3 syncLimit=2
 4 dataDir=/data/soft/zookeeper-cluster/zookeeper-3.4.12-12182/data
 5 dataLogDir=/data/soft/zookeeper-cluster/zookeeper-3.4.12-12182/logs
 6 clientPort=12182
 7
 8 server.1=127.0.0.1:12888:13888
 9 server.2=127.0.0.1:14888:15888
10 server.3=127.0.0.1:16888:17888

      zookeeper2的data/myid配置,使用如下命令:

1 echo ‘2‘ > data/myid

      zookeeper3配置文件conf/zoo.cfg修改如下:

 1 tickTime=2000
 2 initLimit=5
 3 syncLimit=2
 4 dataDir=/data/soft/zookeeper-cluster/zookeeper-3.4.12-12183/data
 5 dataLogDir=/data/soft/zookeeper-cluster/zookeeper-3.4.12-12183/logs
 6 clientPort=12183
 7
 8 server.1=127.0.0.1:12888:13888
 9 server.2=127.0.0.1:14888:15888
10 server.3=127.0.0.1:16888:17888

      zookeeper3的data/myid配置,使用如下命令:

1 echo ‘3‘ > data/myid

    3、分别启动三个zookeeper节点

    4、查看节点状态

        命令:./zookeeper-3.4.12-12181/bin/zkServer.sh status

      

  集群模式

    集群模式就是在不同主机上安装zookeeper然后组成集群的模式,可以参考伪集群模式安装

    1、在三台机器上分别部署1个ZooKeeper实例

    2、zookeeper配置文件conf/zoo.cfg,如下:

 1 tickTime=2000
 2 initLimit=5
 3 syncLimit=2
 4 dataDir=/data/soft/zookeeper-3.4.12/data
 5 dataLogDir=/data/soft/zookeeper-3.4.12/logs
 6 clientPort=2181
 7
 8 server.1=127.0.0.1:2888:3888
 9 server.2=127.0.0.2:2888:3888
10 server.3=127.0.0.3:2888:3888

    3、zookeeper的data/myid配置,使用如下命令:

1 echo ‘1‘ > data/myid

     当然zookeeper1 对应的是 1,zookeeper2 对应的是 2,zookeeper3 对应的是 3

    4、分别启动三个zookeeper节点,即完成对ZooKeeper集群的安装

ZooKeeper简单操作

  下面操作在zookeeper单机模式下完成的

  a、使用客户端连接ZooKeeper服务

    命令:./bin/zkCli.sh -server 127.0.0.1:2181

    ./bin/zkCli.sh默认连接到本地127.0.0.1:2181

    

  b、使用 ls 命令来查看当前 ZooKeeper 中所包含的内容:

     命令:ls /

     

  c、创建了一个新的 znode 节点“ zk ”以及与它关联的字符串

    命令:create /zk myData

    

  d、获取znode节点“ zk ”

    命令:get /zk

    

  e、删除znode节点“ zk ”

    命令:delete /zk

    

  f、推出客户端

    命令:quit

原文地址:https://www.cnblogs.com/h--d/p/10269869.html

时间: 2024-08-02 08:54:26

【ZooKeeper】ZooKeeper安装及简单操作的相关文章

postgresql数据库安装及简单操作

自从MySQL被Oracle收购以后,PostgreSQL逐渐成为开源关系型数据库的首选. 本文介绍PostgreSQL的安装和基本用法,供初次使用者上手.以下内容基于Debian操作系统,其他操作系统实在没有精力兼顾,但是大部分内容应该普遍适用. 一.安装 首先,安装PostgreSQL客户端. sudo apt-get install postgresql-client 然后,安装PostgreSQL服务器. sudo apt-get install postgresql 正常情况下,安装完

ubuntu mysql 的安装与简单操作

安装 在终端输入 sudo apt-get install mysql-server mysql-client sudo apt-get install libmysqlclient-dev 简单管理 启动MySQL服务: sudo start mysql 停止MySQL服务: sudo stop mysql 修改 MySQL 的管理员密码: sudo mysqladmin -u root password newpassword 设置远程访问(正常情况下,mysql占用的3306端口只是在IP

PSSH的安装和简单操作

PSSH是一个批量操作服务器的软件,当运维人员负责一个服务器集群的时候,面对二三十台服务器的时候,先把这些服务器的ip们都写进一个文档里,然后使用pssh 搭配这个文档,就能一口气的同时操作这二三十台机器,省事又省力,真是居家旅行节省体力的运维必需品. 安装 pssh是在python的基础上编写出来的脚本命令,所以python是操作pssh的基础,现在的linux和mac os都自带python,虽然自带的是python的版本是2.6.6但是也已经够用了. #wget ftp://ftp.fre

大数据(MapReduce的编程细节及其Hive的安装,简单操作)

大数据课程第五天 MapReduce编程细节分析 MapReduce中,Reduce可以没有 (纯数据的清洗,不用Reduce)  job.setNumReduceTasks(0); 设置多个Reduce // 默认在MapReduce中 Reduce的数量是1 job.setNumReduceTasks(3);?//为什么Reduce的数量可以设置为多个内存角度  并行角度 ?//如果Reduce数量多个话,那么生成结果也是多个独立的文件,放置在同一个目录下 Partition 分区 分区的作

memcached编译安装和简单操作

memcached 便宜安装需要依赖 yum -y install libevent-devel   php开启memcached的扩展需要依赖libmemcached-devel ./configure --prefix=路径 --enable-64bit make && make install php的bin目录下的pecl install memcached memecached 启动 ./memcached -d -c1024 -m 64m -u nobody -d 守护进程模式

Fiddler安装使用简单操作

Fiddler ios 手机抓包为例 1. 下载安装fiddler 2. 配置fiddler 3. 手机wifi设置    服务器:对应自己电脑的IP地址    端口:对应fiddler的端口 4. 安装证书 Actions:Trust Root Certificate 5. 手机浏览器safari地址栏输入:ip:端口号  例如:192.168.10.240:8888 安装证书 6. 打开App可以看到请求信息

Zookeeper - 什么是Zookeeper,以及zookeeper的安装(1)

Zookeeper 什么是Zookeeper? 官网传送门 ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件.它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护.域名服务.分布式同步.组服务等. 从设计模式来说基于观察者模式设计的分布式服务管理框架,存储大家都关心的数据,然后接受观察者的注册.一旦这些数据状态发生变化,zookeeper就将负责通知已经注册的观察者做出反应. Zoo

ZooKeeper的安装、配置、启动和使用(一)——单机模式

ZooKeeper的安装非常简单,它的工作模式分为单机模式.集群模式和伪集群模式,本博客旨在总结ZooKeeper单机模式下如何安装.配置.启动和使用: 一.安装配置ZooKeeper(在Windows操作系统下) a.下载ZooKeeper压缩安装文件,这里下载稳定版--zookeeper-3.4.5.tar.gz b.解压压缩文件,这里将其解压到C盘根目录下,打开解压后的文件夹,得到下图: c.点击上图名为"conf"的文件夹,可以看到下图: d.用记事本打开上图名为"z

ZooKeeper系列3:ZooKeeper命令、命令行工具及简单操作

问题导读1.ZooKeeper包含哪些常用命令?2.通过什么命令可以列出服务器 watch 的详细信息?3.ZooKeeper包含哪些操作?4.ZooKeeper如何创建zookeeper? 常用命令 ZooKeeper 支持某些特定的四字命令字母与其的交互.它们大多是查询命令,用来获取 ZooKeeper 服务的当前状态及相关信息.用户在客户端可以通过 telnet 或 nc 向 ZooKeeper 提交相应的命令. ZooKeeper 常用四字命令见下表 1 所示: 表 1 : ZooKee