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
相关推荐
jianchwa1 分钟前
3.10 内核 BUG_ON() at xfs_vm_writepage() -> page_buffers()
linux·运维·bug
zqzgng1 分钟前
怎样安装和启动Apache HTTP服务器(httpd)和PHP?
linux·运维·服务器
vvw&7 分钟前
如何在 Ubuntu 22.04 上安装 Metabase 数据可视化分析工具
linux·运维·服务器·ubuntu·信息可视化·数据可视化·metabase
网安CILLE1 小时前
2024下半年——【寒假】自学黑客计划(网络安全)
linux·网络·安全·web安全·网络安全·密码学·ddos
我是唐青枫1 小时前
Linux iptables 命令详解
linux·运维·网络
Mr.yuliu2 小时前
IT成长之路-ubuntu驱动篇
linux·服务器·ubuntu
咖猫2 小时前
linux bash shell http请求脚本
linux·http·bash
ascarl20102 小时前
准确--在 AlmaLinux 9.2 上快速搭建 FTP 服务器
linux·运维·服务器
^_^ 纵歌2 小时前
linux添加附加磁盘
linux·运维·服务器
Peter_chq2 小时前
【计算机网络】多路转接之epoll
linux·服务器·c语言·网络·c++·后端·epoll