zookeeper学习(一)

zookeepr入门

一、简介

  zookeeper是一个开源的分布式的,为分布式应用提供协调服务的Apache项目。

  1.1、Zookeeper工作机制:

  zookeeper从设计模式角度来理解:是一个基于观察者模式设计的分布式服务管理框架,他负责存储和管理大家都关心的数据,然后接收观察者的注册,一旦这些数据的状态发生变化,zookeeper就将负责通知已经在zookeeper上注册的那些观察者做出相应的反应。

   

 

 

   1.2、Zookeeper特点:

    

 

     1)、zookeeper:一个领导者(leader),多个跟随者(follower)组成的集群;

     2)、集群中只要有半数以上节点存活,zookeeper集群就能正常的服务;

     3)、全局数据一致:每个server保存一份相同的数据副本,Client无论链接到那个server,数据都是一致的;

     4)、更新请求循序进行,来自同一个client的更新请求按期发送顺序依次执行;

     5)、数据更新原子性,一次数据更行要么成功,要么失败;

     6)、实时性,在一定时间范围内,Client能读到最新数据。

   1.3、Zookeeper的数据结构

  

 

  1.4、Zookeeper的应用场景

    提供的服务包括:统一命名服务、统一配置管理、统一集群管理、服务器节点动态上下线、软负载均衡等。

      

  1.5、Zookeeper的安装测试  

     1)、安装java环境,并配置好java相关的环境变量$JAVA_HOME

     2)、下载最新的稳定版并解压或者上传文件包

                            wget https://archive.apache.org/dist/zookeeper/zookeeper-3.4.9/zookeeper-3.4.9.tar.gz

        tar -zxvf zookeeper-3.4.3.tar.gz

     3)、生成配置

        cp  zoo_sample.cfg  zoo.cfg

        可执行文件都在bin/目录下,配置都在conf/目录下,conf/目录下有个zoo_sample.cfg,是样板配置文件,复制一份成zoo.cfg,里面有两个比较重要的配置:

          dataDir=/var/lib/zookeeper # 数据存放位置,可根据需要修改

          clientPort=2181 # 服务监听端口,可根据需要修改

     4)、启动服务

      启动:bin/zkServer.sh start

      停止:bin/zkServer.sh stop

      查询状态:bin/zkServer.sh status

      重启:zkServer.sh restart

 

 

  参看文档:https://www.cnblogs.com/zhijian1574/p/12859657.html

       http://t.zoukankan.com/yangxianyang-p-13675616.html

       https://www.cnblogs.com/tonylovett/p/5227973.html

      

   

    

  

posted @ 2021-06-19 17:12  stt101517  阅读(37)  评论(0编辑  收藏  举报