【Kafka】Kafka的安装

编程入门 行业动态 更新时间:2024-10-27 15:18:03

【<a href=https://www.elefans.com/category/jswz/34/1769633.html style=Kafka】Kafka的安装"/>

【Kafka】Kafka的安装

Kafka的安装

  • 准备工作
  • 正式安装
  • Kafka命令行操作

本篇只讲述Kafka的安装与基本命令,不做框架和运行原理的描述,想了解Kafka的框架和运行原理可以点击链接: Kafka的框架与运行原理

本篇在描述配置参数时,只会针对所使用到的参数来进行展示与解释,若想要了解全部参数的使用,可以点击链接: Kafka配置参数详解

准备工作

  • 定义:Kafka 是一个分布式的基于发布/订阅模式的消息队列(Message Queue),主要应用于大数据实时处理领域。

  • 首先我们先去下载Kafka,官网链接: 点击下载

  • 下载包的选择

  • Kafka在安装前需要先安装zookeeper并启动,具体步骤 请访问

正式安装

  • 集群规划
节点名称abc
安装程序zkzkzk
安装程序kafkakafkakafka
  • 将压缩包解压到指定文件夹:tar -zxvf kafka_2.12-2.6.0.tgz -C /home/
  • 将解压后的文件夹重命名:mv kafka_2.12-2.6.0/ kafka
  • 使用vi /etc/profile命令修改环境变量,添加下列内容
    export KAFKA_HOME=/hone/kafka
    export PATH=$PATH:$KAFKA_HOME/bin
    
  • 刷新环境变量使其生效:source /etc/profile
  • kafka文件见下使用mkdir logs命令创建logs文件夹,logs文件夹使用来存储日志文件和暂存文件的
  • 修改配置文件config/server.properties,具体修改如下
    #broker的全局唯一编号,不能重复 
    broker.id=0 
    listeners=PLAINTEXT://:9092
    #删除topic功能使能 
    delete.topic.enable=true 
    #处理网络请求的线程数量 
    num.network.threads=3 
    #用来处理磁盘IO的现成数量 
    num.io.threads=8 
    #发送套接字的缓冲区大小 
    socket.send.buffer.bytes=102400 
    #接收套接字的缓冲区大小 
    socket.receive.buffer.bytes=102400 
    #请求套接字的缓冲区大小 
    socket.request.max.bytes=104857600 
    #kafka运行日志存放的路径 
    log.dirs=/home/kafka/logs 
    #topic在当前broker上的分区个数 
    num.partitions=1 
    #用来恢复和清理data下数据的线程数量 
    num.recovery.threads.per.data.dir=1 
    #segment文件保留的最长时间,超时将被删除
    log.retention.hours=168 
    #配置连接Zookeeper集群地址 
    zookeeper.connect=a:2181,b:2181,c:2181
    
    虽然配置文件看起来要修改的地方很多,但其实只有五处是要修改的地方,其余地方按其默认即可,这五点分别是broker.id=0delete.topic.enable=truelog.dirs=/home/kafka/logszookeeper.connect=a:2181,b:2181,c:2181listeners=PLAINTEXT://:9092
  • 将kafka环境变量配置发送给其他两个节点
    scp /etc/profile b:/etc/scp /etc/profile b:/etc/
  • 将kafka配置好的解压文件分散给其余两个节点
    scp -r /home/kdfka/ b:/home/scp -r /home/kdfka/ c:/home/
  • 一定要修改发散给其余两个节点中server.properties配置文件中broker.id的值,三个节点的值一定不能一样
  • 依次启动每个节点上的kafka
    bin/kafka-server-start.sh -daemon config/server.properties
    若使用bin/kafka-server-start.sh config/server.properties命令启动的话,会显示启动信息
    若要关闭节点可使用命令:bin/kafka-server-stop.sh

Kafka命令行操作

  • 创建topic
    bin/kafka-topics.sh --create --zookeeper a:2181 --replication-factor 3 --partitions 1 --topic test
    –create:是创建topic
    –zookeeper:和topic有关都需要经过zookeeper来存储数据
    –replication-factor:副本数为3(切记副本数不可超过节点数,因为是一个节点存储一个副本
    –partitions:是分区数,分区数的数量并没有限制

  • 查看当前服务器中所有的topic
    bin/kafka-topics.sh --list --zookeeper a:2181

  • 查看topic的详细信息
    bin/kafka-topics.sh --describe --zookeeper localhost:2181 --topic test

  • 修改topic分区
    bin/kafka-topics.sh --alter --zookeeper a:2181 --topic test --partitions 3

  • 删除topic(若想真正的删除一个topic,必须设置配置文件中delete.topic.enable=true否则只是标记删除
    bin/kafka-topics.sh --delete --zookeeper a:2181 --topic test

  • 使用topic发送消息,想要发送信息必须有一个topic
    bin/kafka-console-producer.sh --broker-list a:9092 --topic first
    会出现输入窗口这时输入信息即可

  • 消费信息
    在另一个节点使用下列命令来消费信息
    bin/kafka-console-consumer.sh --bootstrap-server a:9092 --topic first

    但是上述命令只能接收到在他开启之后的数据,若想要接受全部数据,可使用下列命令
    bin/kafka-console-consumer.sh --bootstrap-server a:9092 --from-beginning --topic first

更多推荐

【Kafka】Kafka的安装

本文发布于:2023-06-23 16:01:36,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/851420.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:Kafka

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!