• Zookeeper~Linux环境下的部署


    介绍

    ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件。它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步、组服务等。
    ZooKeeper的目标就是封装好复杂易出错的关键服务,将简单易用的接口和性能高效、功能稳定的系统提供给用户。
    ZooKeeper包含一个简单的原语集, 提供Java和C的接口。
    ZooKeeper代码版本中,提供了分布式独享锁、选举、队列的接口,代码在zookeeper-3.4.3src ecipes。其中分布锁和队列有Java和C两个版本,选举只有Java版本。

    外文名
    ZooKeeper
    类    别
    分布式系统的可靠协调系统
    所    属
    Hadoop的正式子项目
    特    点
    高效,可靠

    原理

    ZooKeeper是以Fast Paxos算法为基础的,Paxos 算法存在活锁的问题,即当有多个proposer交错提交时,有可能互相排斥导致没有一个proposer能提交成功,而Fast Paxos作了一些优化,通过选举产生一个leader (领导者),只有leader才能提交proposer,具体算法可见Fast Paxos。因此,要想弄懂ZooKeeper首先得对Fast Paxos有所了解。
    ZooKeeper的基本运转流程:
    1、选举Leader。
    2、同步数据。
    3、选举Leader过程中算法有很多,但要达到的选举标准是一致的。
    4、Leader要具有最高的执行ID,类似root权限。
    5、集群中大多数的机器得到响应并follow选出的Leader。

    从图中看zookeeper,就是一个协调者

    Linux-centos上的安装与部署

    官网下载:

    http://zookeeper.apache.org/

    1. Learn about ZooKeeper by reading the documentation.
    2. Download ZooKeeper from the release page.

    解压:

    tar -xzvf zookeeper-3.5.2-alpha.tar.gz

    安装JDK:

    yum install java-1.7.0-openjdk-src.x86_64

    配置目录JAVA_HOME:

    vi /etc/profile,打开文件后,追加下面内容

    export JAVA_HOME=/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.9
    export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
    export PATH=$PATH:$JAVA_HOME/bin

    运行zookeeper服务:

    bin/zkServer.sh start  conf/zoo.cfg

    结果如图:

     感谢各位对大叔的支持,技术,我们将继续!

  • 相关阅读:
    Nginx 配置实例-动静分离
    nginx-轮询、权重、ip_hash 、fair模式
    nginx-负载均衡
    nginx 常用的命令和配置文件
    Nginx 的简介
    阿里云--安装nginx AND访问超时
    阿里云-docker安装redis AND(docker基本操作命令)
    阿里云-docker安装mysql
    阅读金字塔原理笔记1
    Springboot-整合redis
  • 原文地址:https://www.cnblogs.com/lori/p/6624351.html
Copyright © 2020-2023  润新知