Hadoop-26 ZooKeeper集群 3台云服务器 基础概念简介与环境的配置使用 架构组成 分布式协调框架 Leader Follower Observer

简介: Hadoop-26 ZooKeeper集群 3台云服务器 基础概念简介与环境的配置使用 架构组成 分布式协调框架 Leader Follower Observer

章节内容

上节我们顺利完成了:


Sqoop CDC ChangeDataCapture 差量数据捕获

CDC的几种类型 侵入式和非侵入式

Sqoop 数据差量更新导入 从 MySQL 到 Hive

Sqoop目前就算告一段落了,接下来我们将开始 ZooKeeper!!!


背景介绍

这里是三台公网云服务器,每台 2C4G,搭建一个Hadoop的学习环境,供我学习。

之前已经在 VM 虚拟机上搭建过一次,但是没留下笔记,这次趁着前几天薅羊毛的3台机器,赶紧尝试在公网上搭建体验一下。


2C4G 编号 h121

2C4G 编号 h122

2C2G 编号 h123

ZooKeeper简介

ZooKeeper 是一个分布式协调服务的开源框架。主要用于解决分布式集群中应用系统的一致性问题,例如怎么避免同时操作同一数据造成脏数据的问题。

分布式系统中数据存在一致性的问题!


ZooKeeper 本质上是一个分布式的小文件存储系统。提供基于类似于文件系统的目录树方式的数据存储,并且可以对树中的节点进行有效管理。

ZooKeeper 提供客户端监控存储在ZK内部数据的功能,从而可以达到基于数据的集群管理。诸如:统一命名服务(Dubbo)、分布式配置管理(Solr)、分布式消息队列(Sub/Pub)、分布式锁、分布式协调等功能。

架构组成

我们也将进行集群的搭建集群模式


h121 节点

h122 节点

h123 节点

Leader

ZooKeeper 集群工作的核心角色

集群内部各个服务器的调度者

事务请求(写操作)的唯一调度和处理者,保证集群事务处理的顺序性,对于 create,setData、delete 等有写操作的请求,则需要统一转发给 leader 处理。

Follower

处理客户端非事务(读操作)请求

转发事务请求给 Leader

参与集群 Leader 选择股票 2n-1 台可新增观察者角色

Observer

观察者角色,观察 ZooKeeper 集群的最新状态变化并将这些状态同步过来,其对于非事务请求可以进行独立处理,对于事务请求,则会转发给 Leader 服务器进行处理。

不会参与任何形式的投票只提供非事务服务,通常用于不影响集群事务处理能力的前提下提升集群的非事务处理能力。增加了集群增加并发的读请求。

项目简介

Zookeeper 一个Leader 和 多个Follower 组成集群

Leader 负责进行投票、决议、更新状态

Follower 用于接受客户端请求和返回结果,在选举Leader过程中参与投票

集群中只要有半数以上存活节点,ZooKeeper就可以正常工作

全局数据一致:每个Server保存一份相同的数据副本,Client无论连接到哪个都是相同的数据。

更新请求会顺序进行

数据更新有原子性,一次数据更新要么成功,要么失败

搭建方式

搭建有分为几种方式:


单机模式

ZooKeeper只运行在一台服务器上,适合测试环境。


伪集群模式

就是在一台机器上运行多个 ZooKeeper


集群模式

生产环境,多台机器

下载服务

http://zookeeper.apache.org/releases.html
• 1

这里我选择:3.8.4 版本进行安装测试,这是最新的稳定版本。

下载地址如下,你可以使用 wget 进行下载

https://dlcdn.apache.org/zookeeper/zookeeper-3.8.4/apache-zookeeper-3.8.4-bin.tar.gz

下载完成至服务器节点

解压安装

cd /opt/software/
tar -zxvf apache-zookeeper-3.8.4-bin.tar.gz -C ../servers/

文件夹配置

数据文件夹

cd /opt/servers/apache-zookeeper-3.8.4-bin
mkdir -p /opt/servers/apache-zookeeper-3.8.4-bin/data

日志文件夹

cd /opt/servers/apache-zookeeper-3.8.4-bin
mkdir -p /opt/servers/apache-zookeeper-3.8.4-bin/logs

配置文件

cd /opt/servers/apache-zookeeper-3.8.4-bin/conf
mv zoo_sample.cfg zoo.cfg
vim zoo.cfg

修改为如下的内容:

# 数据和日志文件夹
dataDir=/opt/servers/apache-zookeeper-3.8.4-bin/data
dataLogDir=/opt/servers/apache-zookeeper-3.8.4-bin/logs

# 集群地址
server.1=h121.wzk.icu:2888:3888
server.2=h122.wzk.icu:2888:3888
server.3=h123.wzk.icu:2888:3888

# 清理日志 1小时
autopurge.purgeInterval=1

修改结果如下图:

myid配置

我们需要在数据目录下新建一个叫 myid 文件夹,内容为1,后续集群要用到:

cd /opt/servers/apache-zookeeper-3.8.4-bin/data
echo 1 > myid
• 1
• 2

至此,我们 ZooKeeper 的单机安装完成!!!

目录
相关文章
|
存储 机器学习/深度学习 数据库
阿里云服务器X86/ARM/GPU/裸金属/超算五大架构技术特点、场景适配参考
在云计算技术飞速发展的当下,云计算已经渗透到各个行业,成为企业数字化转型的关键驱动力。选择合适的云服务器架构对于提升业务效率、降低成本至关重要。阿里云提供了多样化的云服务器架构选择,包括X86计算、ARM计算、GPU/FPGA/ASIC、弹性裸金属服务器以及高性能计算等。本文将深入解析这些架构的特点、优势及适用场景,以供大家了解和选择参考。
1539 61
|
9月前
|
运维 监控 安全
“没服务器了,那我这运维是白干了吗?”——无服务器架构对运维的冲击与转机
“没服务器了,那我这运维是白干了吗?”——无服务器架构对运维的冲击与转机
221 0
|
10月前
|
存储 安全 虚拟化
全面解析服务器虚拟化:云计算时代的核心技术架构
服务器虚拟化是云计算的核心技术,通过资源池化提升IT效率。本文详解其原理、部署优势及在数字化转型中的关键作用,涵盖技术架构、应用场景与选型指南,助力企业构建高效灵活的云环境。
925 0
|
存储 机器学习/深度学习 应用服务中间件
阿里云服务器架构解析:从X86到高性能计算、异构计算等不同架构性能、适用场景及选择参考
当我们准备选购阿里云服务器时,阿里云提供了X86计算、ARM计算、GPU/FPGA/ASIC、弹性裸金属服务器以及高性能计算等多种架构,每种架构都有其独特的特点和适用场景。本文将详细解析这些架构的区别,探讨它们的主要特点和适用场景,并为用户提供选择云服务器架构的全面指南。
1279 18
|
Kubernetes 监控 Serverless
基于阿里云Serverless Kubernetes(ASK)的无服务器架构设计与实践
无服务器架构(Serverless Architecture)在云原生技术中备受关注,开发者只需专注于业务逻辑,无需管理服务器。阿里云Serverless Kubernetes(ASK)是基于Kubernetes的托管服务,提供极致弹性和按需付费能力。本文深入探讨如何使用ASK设计和实现无服务器架构,涵盖事件驱动、自动扩展、无状态设计、监控与日志及成本优化等方面,并通过图片处理服务案例展示具体实践,帮助构建高效可靠的无服务器应用。
|
存储 人工智能 并行计算
2025年阿里云弹性裸金属服务器架构解析与资源配置方案
🚀 核心特性与技术创新:提供100%物理机性能输出,支持NVIDIA A100/V100 GPU直通,无虚拟化层损耗。网络与存储优化,400万PPS吞吐量,ESSD云盘IOPS达100万,RDMA延迟<5μs。全球部署覆盖华北、华东、华南及海外节点,支持跨地域负载均衡。典型应用场景包括AI训练、科学计算等,支持分布式训练和并行计算框架。弹性裸金属服务器+OSS存储+高速网络综合部署,满足高性能计算需求。