【分布式技术】中间件-zookeeper安装配置

文章目录

    • 安装部署
      • [1. 安装ZooKeeper](#1. 安装ZooKeeper)
      • [2. 配置ZooKeeper](#2. 配置ZooKeeper)
      • [3. 启动ZooKeeper服务器](#3. 启动ZooKeeper服务器)
      • [4. 使用ZooKeeper命令行客户端](#4. 使用ZooKeeper命令行客户端)
      • [5. 使用ZooKeeper的四个基本操作](#5. 使用ZooKeeper的四个基本操作)
      • [6. ZooKeeper集群模式](#6. ZooKeeper集群模式)
      • [7. 安全和权限](#7. 安全和权限)
      • [8. 监控和日志](#8. 监控和日志)
    • 相关文献

安装部署

在Linux环境中操作ZooKeeper通常涉及以下几个方面:

1. 安装ZooKeeper

在Linux上安装ZooKeeper,你可以从Apache ZooKeeper的官方网站下载二进制包或使用包管理器安装。以下是使用二进制包安装的步骤:

shell 复制代码
# 下载ZooKeeper
wget https://downloads.apache.org/zookeeper/zookeeper-3.8.0/apache-zookeeper-3.8.0-bin.tar.gz

# 解压ZooKeeper
tar -xzf apache-zookeeper-3.8.0-bin.tar.gz

# 进入ZooKeeper目录
cd apache-zookeeper-3.8.0-bin

# 创建ZooKeeper的数据目录
mkdir data

2. 配置ZooKeeper

编辑conf/zoo.cfg文件,配置ZooKeeper服务器:

shell 复制代码
tickTime=2000
dataDir=/home/zookeeper/apache-zookeeper-3.8.0-bin/data
clientPort=2181
initLimit=5
syncLimit=2

# 配置集群模式(单机模式不需要配置)
server.1=127.0.0.1:2886:3886
server.2=127.0.0.1:2888:3888

3. 启动ZooKeeper服务器

在ZooKeeper的bin目录下,使用以下命令启动服务器:

shell 复制代码
# 启动ZooKeeper
./zkServer.sh start

# 查看状态
./zkServer.sh status

# 停止ZooKeeper
./zkServer.sh stop

4. 使用ZooKeeper命令行客户端

ZooKeeper提供了一个命令行客户端zkCli.sh,用于与ZooKeeper服务器交互:

shell 复制代码
# 启动ZooKeeper命令行客户端
./zkCli.sh

# 连接到ZooKeeper服务器
[zk: localhost:2181(CONNECTED) 0] connect host:port

# 创建一个节点
create /test data

# 获取节点数据
get /test

# 列出子节点
ls /

# 删除节点
delete /test

# 退出客户端
quit

5. 使用ZooKeeper的四个基本操作

  • 创建节点(Create)

    shell 复制代码
    create /path data
  • 读取节点(Read)

    shell 复制代码
    get /path
  • 更新节点(Update)

    shell 复制代码
    set /path data
  • 删除节点(Delete)

    shell 复制代码
    delete /path

6. ZooKeeper集群模式

如果需要部署ZooKeeper集群,需要在zoo.cfg中配置多个服务器,并在每台服务器上设置唯一的myid文件:

shell 复制代码
echo "1" > data/myid

然后,在所有服务器上启动ZooKeeper。

7. 安全和权限

ZooKeeper支持ACL(访问控制列表),可以通过设置权限来控制对节点的访问:

shell 复制代码
# 设置权限
setAcl /path acl

8. 监控和日志

监控ZooKeeper的性能和查看日志对于维护ZooKeeper集群非常重要。ZooKeeper的日志文件通常位于dataLogDir指定的目录下。

通过这些基本操作,你可以在Linux环境中管理和使用ZooKeeper。对于更高级的使用场景,如分布式锁或领导者选举,你可能需要编写更复杂的客户端程序来实现。

相关文献

【分布式技术】中间件-分布式协调服务zookeeper

相关推荐
东阳马生架构29 分钟前
zk基础—3.集群与核心参数一
zookeeper
小马爱打代码2 小时前
Kafka - 消息零丢失实战
分布式·kafka
长河2 小时前
Kafka系列教程 - Kafka 运维 -8
运维·分布式·kafka
浩浩kids4 小时前
Hadoop•踩过的SHIT
大数据·hadoop·分布式
松韬4 小时前
Spring + Redisson:从 0 到 1 搭建高可用分布式缓存系统
java·redis·分布式·spring·缓存
@PHARAOH5 小时前
WHAT - 如何理解中间件
中间件
雨会停rain5 小时前
如何提高rabbitmq消费效率
分布式·rabbitmq
java技术小馆7 小时前
Zookeeper中的Zxid是如何设计的
java·分布式·zookeeper·云原生
DemonAvenger7 小时前
深入剖析 sync.Once:实现原理、应用场景与实战经验
分布式·架构·go
Vic23347 小时前
Kafka简要介绍与快速入门示例
分布式·kafka