《Linux运维总结:基于银河麒麟V10+ARM64架构CPU部署zookeeper 3.8.4二进制分布式集群》

总结:整理不易,如果对你有帮助,可否点赞关注一下?

更多详细内容请参考:《Linux运维篇:Linux系统运维指南》


一、功能简介

1、什么是Zookeeper

ZooKeeper 是一个开源的、分布式的应用程序协调服务,它为分布式框架提供协调服务的 Apache 项目。它是 Google 的 Chubby 项目的开源实现之一,并且是 Hadoop 和 HBase 等项目的重要组成部分。ZooKeeper 提供的功能包括配置维护、域名服务、分布式同步、组服务等。

2、典型应用场景:

1、配置管理:在分布式系统中,可以使用 ZooKeeper 来集中管理配置信息。
2、命名服务:提供一种全局的命名机制,用于分布式系统中的服务发现。
3、分布式协调:实现分布式锁、队列、选举等协调服务。
4、集群管理:用于管理集群中的节点状态,例如监控节点的存活状态。
4、服务发现:作为服务生产者和服务消费者的注册中心,用于服务发现和负载均衡。

注意:zookeeper适用于存储和协同相关的关键数据, 不适合用于大数据量存储

3、有3个著名开源项目使用Zookeeper

1、Hadoop:使用Zookeeper做Namenode的高可用
2、HBase: 保证集群中只有一个master,保存集群中的RegionServer列表,保存hbase:meta表的位置
3、Kafka:集群成员管理,controller节点选举


二、部署说明

1、环境信息

主机IP 操作系统 内核版本 jdk版本 zookeeper版本
192.168.1.111 Kylin Linux Advanced Server V10 (Tercel) 4.19.90-17.5.ky10.aarch64 17.0.12 3.8.4
192.168.1.112 Kylin Linux Advanced Server V10 (Tercel) 4.19.90-17.5.ky10.aarch64 17.0.12 3.8.4
192.168.1.113 Kylin Linux Advanced Server V10 (Tercel) 4.19.90-17.5.ky10.aarch64 17.0.12 3.8.4

注意:使用docker容器部署zookeeper,官方默认的jdk版本为17.0.12,所以这里为了统一,也选择安装此版本。


2、端口说明

端口 端口号 用途
Client Port (客户端端口) 2181 客户端(如应用程序通过这个端口与 ZooKeeper服务器进行通信
Election Port (选举端口) 2888 当集群中的服务器需要选举一个新的leader时,它们通过此端口相互通信以进行选举
Sync Port (同步端口) 3888 leader服务器通过此端口与follower服务器同步数据变更
Admin Server Port (Admin Server 端口) 8080 通过此端口管理员可以访问集群的状态信息,并执行管理操作
Metrics Provider Port (度量指标提供程序端口) 7000 Prometheus度量指标提供程序使用此端口来提供ZooKeeper的性能指标
JMX Port (JMX 端口) 端口随机不固定 用于监控JVM的状态和zookeeper服务器的状态和性能

三、部署zookeeper集群

3.1、安装jdk

[root@ecs-ed54-0001 ~]# wget https://download.oracle.com/java/17/latest/jdk-17_linux-aarch64_bin.tar.gz
[root@ecs-ed54-0001 ~]# tar axf jdk-17_linux-aarch64_bin.tar.gz -C /usr/local
[root@ecs-ed54-0001 ~]# cd /usr/local/
[root@ecs-ed54-0001 local]# chmod 755 jdk-17.0.12/ -R

3.2、创建用户

说明:以下操作需要在zookeeper集群各个节点上执行。

[root@ecs-ed54-0001 ~]# groupadd zookeeper -g 1000

你可能感兴趣的:(《Linux运维实战总结》,运维,分布式,linux,zookeeper)