Zookeeper简介,架构,单机版搭建

2024-05-13 12:38

本文主要是介绍Zookeeper简介,架构,单机版搭建,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1.Zookeeper简介

Zookeeper-动物园管理者(中文翻译)。好像我们的Hadoop都是一些动物,那这个号称是动物管理员的Zookeeper是什么呢?从字面的意思来看是管理动物的,也就是来管理Hadoop生态圈的,我们看一张图片(来源于网上):

             

我们可以看到,Hadoop的生态圈里具有这么多的技术工具,那Zookeeper是用来做什么的呢?Zookeeper是一个分布式的,开发源码的分布式应用程序协调服务是Google的Chubby一个开源的实现。它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步、组服务等。ZooKeeper的目标就是封装好复杂易出错的关键服务,将简单易用的接口和性能高效、功能稳定的系统提供给用户。管理大量主机的协同服务。

2.Zookeeper架构

zk(Zookeeper)架构
------------------
    1.Client
        从server获取信息,周期性发送数据给server,表示自己还活着。
        client连接时,server回传ack信息。
        如果client没有收到reponse,自动重定向到另一个server.

    2.Server(包括Leader和Follwer)
        zk集群中的一员,向client提供所有service,回传ack信息给client,表示自己还活着。

    3.ensemble
        一组服务器(Server)。
       zk集群 最小节点数是3.防止zk的leader宕机,不能提供协同服务,zk集群可以允许有(n-1)/2的机器死掉,所以需要3台。

    4.Leader
        如果连接的节点失败,自定恢复,zk服务启动时,完成leader选举。

    5.Follower
        追寻leader指令的节点。


zk工作流程
----------------
    zk集群启动后,client连接到其中的一个节点,这个节点可以leader,也可以follower。
    连通后,node分配一个id给client,发送ack信息给client。
    如果客户端没有收到ack,连接到另一个节点。
    client周期性发送心跳信息给节点保证连接不会丢失。

    如果client读取数据,发送请求给node,node读取自己数据库,返回节点数据给client.


    如果client存储数据,将路径和数据发送给server,server转发给leader。
    leader再补发请求给所有follower。只有大多数(超过半数)节点成功响应,则
    写操作成功。

3.Zookeeper的单机版搭建

zk安装(单机版,s10)
---------------
    1.jdk

    2.下载zookeeper-3.4.9.tar.gz

    3.tar开

    4.符号连接环境变量
        $>ln -s zookeeper-3.4.9 zk

    5.配置zk,复制zoo.cfg.sample-->zoo.cfg
        [zk/conf/zoo.conf]
        # The number of milliseconds of each tick
        tickTime=2000
        initLimit=10
        syncLimit=5
        dataDir=/home/zpx/zookeeper
        clientPort=2181
    
    6.启动zk服务器
        $>bin/zkServer.sh start
    
    7.验证zk
        $>netstat -anop | grep 2181

   8.启动客户端连接到服务器
        $>zkCli.sh -server s10:2181    //进入zk命令行
        $zk]help                        //查看帮助
        $zk]quit                        //退出

 

 

 

 

软件包:

链接:https://pan.baidu.com/s/18f8Cp5nF3fetuYeMRqYcDg 密码:5mbg

这篇关于Zookeeper简介,架构,单机版搭建的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/985727

相关文章

Nginx概念、架构、配置与虚拟主机实战操作指南

《Nginx概念、架构、配置与虚拟主机实战操作指南》Nginx是一个高性能的HTTP服务器、反向代理服务器、负载均衡器和IMAP/POP3/SMTP代理服务器,它支持高并发连接,资源占用低,功能全面且... 目录Nginx 深度解析:概念、架构、配置与虚拟主机实战一、Nginx 的概念二、Nginx 的特点

CPython与PyPy解释器架构的性能测试结果对比

《CPython与PyPy解释器架构的性能测试结果对比》Python解释器的选择对应用程序性能有着决定性影响,CPython以其稳定性和丰富的生态系统著称;而PyPy作为基于JIT(即时编译)技术的替... 目录引言python解释器架构概述CPython架构解析PyPy架构解析架构对比可视化性能基准测试测

MongoDB搭建过程及单机版部署方法

《MongoDB搭建过程及单机版部署方法》MongoDB是一个灵活、高性能的NoSQL数据库,特别适合快速开发和大规模分布式系统,本文给大家介绍MongoDB搭建过程及单机版部署方法,感兴趣的朋友跟随... 目录前言1️⃣ 核心特点1、文档存储2、无模式(Schema-less)3、高性能4、水平扩展(Sh

MySQL集群高可用架构的两种使用小结

《MySQL集群高可用架构的两种使用小结》本文介绍了MySQL的两种高可用解决方案:组复制(MGR)和MasterHighAvailability(MHA),文中通过示例代码介绍的非常详细,对大家的学... 目录一、mysql高可用之组复制(MGR)1.1 组复制核心特性与优势1.2 组复制架构原理1.3

vite搭建vue3项目的搭建步骤

《vite搭建vue3项目的搭建步骤》本文主要介绍了vite搭建vue3项目的搭建步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学... 目录1.确保Nodejs环境2.使用vite-cli工具3.进入项目安装依赖1.确保Nodejs环境

Nginx搭建前端本地预览环境的完整步骤教学

《Nginx搭建前端本地预览环境的完整步骤教学》这篇文章主要为大家详细介绍了Nginx搭建前端本地预览环境的完整步骤教学,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录项目目录结构核心配置文件:nginx.conf脚本化操作:nginx.shnpm 脚本集成总结:对前端的意义很多

idea+spring boot创建项目的搭建全过程

《idea+springboot创建项目的搭建全过程》SpringBoot是Spring社区发布的一个开源项目,旨在帮助开发者快速并且更简单的构建项目,:本文主要介绍idea+springb... 目录一.idea四种搭建方式1.Javaidea命名规范2JavaWebTomcat的安装一.明确tomcat

Spring Boot分层架构详解之从Controller到Service再到Mapper的完整流程(用户管理系统为例)

《SpringBoot分层架构详解之从Controller到Service再到Mapper的完整流程(用户管理系统为例)》本文将以一个实际案例(用户管理系统)为例,详细解析SpringBoot中Co... 目录引言:为什么学习Spring Boot分层架构?第一部分:Spring Boot的整体架构1.1

Java中的分布式系统开发基于 Zookeeper 与 Dubbo 的应用案例解析

《Java中的分布式系统开发基于Zookeeper与Dubbo的应用案例解析》本文将通过实际案例,带你走进基于Zookeeper与Dubbo的分布式系统开发,本文通过实例代码给大家介绍的非常详... 目录Java 中的分布式系统开发基于 Zookeeper 与 Dubbo 的应用案例一、分布式系统中的挑战二

Java Docx4j类库简介及使用示例详解

《JavaDocx4j类库简介及使用示例详解》Docx4j是一个强大而灵活的Java库,非常适合需要自动化生成、处理、转换MicrosoftOffice文档的服务器端或后端应用,本文给大家介绍Jav... 目录1.简介2.安装与依赖3.基础用法示例3.1 创建一个新 DOCX 并添加内容3.2 读取一个已存