kafka+zookeeper集群搭建

kafka+zookeeper集群搭建

规划

服务 ip 端口 配置
kafka+zookeeper 192.168.138.151 2181/9092/2888/3888 2CPU、2G内存
kafka+zookeeper 192.168.138.152 2181/9092/2888/3888 2CPU、2G内存
kafka+zookeeper 192.168.138.153 2181/9092/2888/3888 2CPU、2G内存

开启端口,关闭selinux

sh 复制代码
firewall-cmd --zone=public --add-port=2181/tcp --permanent
firewall-cmd --zone=public --add-port=9092/tcp --permanent
firewall-cmd --zone=public --add-port=2888/tcp --permanent
firewall-cmd --zone=public --add-port=3888/tcp --permanent
firewall-cmd --reload
set -i '/^SELINUX/s/enforcing/disabled/g' /etc/selinux/config
setenforce 0

安装jdk

  1. 上传jdk-8u172-linux-x64.tar.gz到/root目录下并解压
sh 复制代码
tar -xzvf jdk-8u172-linux-x64.tar.gz
sudo mv jdk1.8.0_172/ /usr/local/java
  1. 配置环境变量,在末行加入

    vi /etc/profile

    sh 复制代码
    export JAVA_HOME=/usr/local/java
    export PATH=$PATH:$JAVA_HOME/bin
  2. 让环境变量生效

    sh 复制代码
    source /etc/profile
  3. 查看java 版本

    sh 复制代码
    java -version

zookeeper安装

  1. 所有机器都执行,下载apache-zookeeper-3.7.2-bin.tar.gz并上传到服务器,解压

    sh 复制代码
    tar -xzvf apache-zookeeper-3.7.2-bin.tar.gz
    mv apache-zookeeper-3.7.2-bin /usr/local/zookeeper
  2. 创建配置文件

    sh 复制代码
    cp /usr/local/zookeeper/conf/zoo_sample.cfg /usr/local/zookeeper/conf/zoo.cfg
  3. 修改/usr/local/zookeeper/conf/zoo.cfg文件(默认的zookeeper配置文件)

    vim /usr/local/zookeeper/conf/zoo.cfg

    sh 复制代码
    dataDir=/usr/local/zookeeper/data #数据存放目录,需要创建
    dataLogDir=/usr/local/zookeeper/logs #日志存放目录,需要创建
    #集群信息,需要新增。
    server.1=192.168.138.151:2888:3888 #2888:节点间传送数据的端口,3888:选举节时的通信端口
    server.2=192.168.138.152:2888:3888
    server.3=192.168.138.153:2888:3888
  4. 在所有节点的数据存储目录中增加一个名为myid的文件,用于标识节点ID。

    sh 复制代码
    echo 1 > /usr/local/zookeeper/data/myid #151上执行数字为节点编号,与配置文件中的server.1中的数字对应
    echo 2 > /usr/local/zookeeper/data/myid #152上执行数字为节点编号,与配置文件中的server.2中的数字对应
    echo 3 > /usr/local/zookeeper/data/myid #153上执行数字为节点编号,与配置文件中的server.3中的数字对应

kafka安装

  1. 下载kafka_2.12-3.6.2.tgz并上传解压

    sh 复制代码
    tar -xvf kafka_2.12-3.6.2.tgz 
    mv kafka_2.12-3.6.2 /usr/local/kafka
  2. 修改配置文件: vim /usr/local/kafka/config/server.properties

    sh 复制代码
    broker.id=1 #节点编号,kafka集群中唯一,每个节点都不一样,152和153上需要修改
    listeners=PLAINTEXT://192.168.138.151:9092 #改为本机IP+端口,152和153上需要修改
    log.dirs=/usr/local/kafka/logs #日志文件目录,目录需要创建
    zookeeper.connect=192.168.138.151:2181,192.168.138.152:2181,192.168.138.153:2181

启动集群

  1. 启动zookeeper。
sh 复制代码
/usr/local/zookeeper/bin/zkServer.sh start 
/usr/local/zookeeper/bin/zkServer.sh status #状态查看
  1. 启动kafka。

    sh 复制代码
    /usr/local/kafka/bin/kafka-server-start.sh -daemon /usr/local/kafka/config/server.properties

测试集群

  1. 创建主题。
sh 复制代码
/usr/local/kafka/bin/kafka-topics.sh --bootstrap-server 192.168.138.151:9092 --create --replication-factor 2 --partitions 3 --topic test-topic #创建主题,--replicationfactor:副本数量,--partitions:分区数量,--topic:主题名称
  1. 发送消息。
sh 复制代码
/usr/local/kafka/bin/kafka-console-producer.sh --broker-list 192.168.138.151:9092,192.168.138.152:9092,192.168.138.153:9092 --topic test-topic
  1. 接收消息。
sh 复制代码
/usr/local/kafka/bin/kafka-console-consumer.sh --bootstrap-server 192.168.138.151:9092,192.168.138.152:9092,192.168.138.153:9092 --topic test-topic
--from-beginning
相关推荐
IMPYLH6 分钟前
Linux 的 b2sum 命令
linux·运维·服务器·bash
celeste031028 分钟前
Redis Summary
linux·运维·服务器·redis·笔记
Sylvan.C30 分钟前
Windows+Ubuntu 双系统安装超详细保姆级教程2026,包括系统安装、英伟达独显驱动安装以及双系统时间同步的所有过程
linux·运维·ubuntu
伴我与影30 分钟前
Ubuntu 安装 NVIDIA 显卡驱动
linux·运维·ubuntu
unsynchronized32 分钟前
OpenClaw 安装指南:Linux 与 Windows 系统详细教程
linux·运维·windows·ai
宁波阿成1 小时前
OpenClaw 在 Ubuntu 22.04.5 LTS 上的命令版操作手册
linux·运维·ubuntu·openclaw·龙虾
林姜泽樾1 小时前
Linux入门第十三章,chmod命令和权限控制信息
linux·运维·服务器·centos
是小小张呀2 小时前
WSL Ubuntu修改主机名重启后失效解决方案
linux
一个有温度的技术博主2 小时前
Redis系列三:在linux上安装Redis
linux·数据库·redis
阿常呓语3 小时前
Linux命令 date详解
linux·运维·服务器·linux command