Kafka安装配置

目录

前言

初了解kafka

搭建

Kafka的常见命令


前言

紧接上章,这次我们来学习Kafka,老样子我们还是先来了解一下Kafka

初了解kafka

官方解释:

Kafka是一种流处理平台,由LinkedIn公司创建,现在是Apache下的开源项目。Kafka通过发布/订阅机制实现消息的异步传输和处理。它具有高吞吐量、低延迟、可伸缩性和可靠性等优点,使其成为了流处理和实时数据管道的首选解决方案

实时数据管道很好理解,就是日常生活中的场景一直会有数据产生,可以把他们收集起来做数据处理。那么什么是流处理呢?如果你是第一次接触“流处理”概念,我们也可以做一点解释,流处理指的是对连续、实时产生的数据流进行实时处理、计算和分析的过程

在Kafka中,有三大关键角色:生产者、消费者和Broker。生产者负责向Kafka发送消息,消费者从Kafka接收消息,而Broker则负责存储和转发消息。此外,Kafka还引入了一些基本概念,如Topic(主题,用于分类消息)Partition(分区,用于提高并发处理能力和数据冗余)以及Offset(偏移量,用于标识消费者已读取的消息位置)

Kafka的使用场景非常广泛,包括日志收集、消息系统、用户活动追踪以及运营指标监控等。例如,Kafka可以收集各种服务的日志,通过统一接口的形式开放给各种消费者;也可以作为消息系统,实现生产和消费者的解耦以及消息的缓存;此外,Kafka还可以记录用户活动,用于监控和分析用户行为

总的来说,Kafka是一个功能强大、灵活且可扩展的分布式消息系统,广泛应用于各种数据处理和流处理场景。

接下来让我进入搭建阶段

搭建

 解压

tar -zxvf kafka_2.12-2.4.1.tgz -C /opt/module/

配置环境

#KAFKA_HOME
export KAFKA_HOME=/opt/module/kafka-2.4.1
export PATH=$PATH:$KAFKA_HOME/bin

启动kafka

kafka-server-start.sh ../config/server.properties
  • 在 Apache Kafka 中,server.properties 文件是用于配置 Kafka broker 的主要配置文件。Kafka broker 是 Kafka 集群中的一个节点,负责处理生产者和消费者的请求存储和管理 Kafka 主题(topic)中的消息

Kafka的常见命令

kafka创建Tocpic

kafka-topics.sh --create --bootstrap-server bigdata1:9092,bigdata2:9092,bigdata3:9092 --replication-factor 1 --partitions 4 --topic test

参数解读:

  1. kafka-topics.sh: 这是 Apache Kafka 提供的一个命令行工具,用于管理 Kafka 中的主题(topic)
  2. --create: 这个参数告诉 kafka-topics.sh 工具要创建一个新的主题
  3. --bootstrap-server bigdata1:9092,bigdata2:9092,bigdata3:9092: 这个参数指定了 Kafka 集群中的一个或多个 broker 地址,用于初始化与 Kafka 集群的连接。在这个例子中,broker 的主机名是 bigdata1,端口号是 9092Kafka 客户端会使用这个地址来发现集群中的其他 broker
  4. --replication-factor 1: 这个参数指定了每个分区的副本因子副本因子是主题中每个分区拥有的副本数量。在这个例子中,每个分区只有一个副本。这通常意味着没有数据冗余,但在某些情况下,例如测试环境或当数据丢失不是主要关注点时,可以接受这种配置。
  5. --partitions 4: 这个参数指定了主题中的分区数。分区是 Kafka 中用于提高吞吐量、并行处理和容错性的关键概念。每个分区都是一个有序的消息序列,并可以有多个副本。在这个例子中,主题 test 将被创建为具有 4 个分区
  6. --topic test: 这个参数指定了要创建的主题的名称,这里是 test

kafka列出Tocpic

kafka-topics.sh --list --bootstrap-server bigdata1:9092,bigdata2:9092,bigdata3:9092

参数解读:

  1. kafka-topics.sh: 这是 Apache Kafka 提供的一个命令行工具,用于管理 Kafka 中的主题(topic)

  2. --list: 这个参数告诉 kafka-topics.sh 工具要列出所有可用的主题

  3. --bootstrap-server bigdata1:9092,bigdata2:9092,bigdata3:9092: 这个参数指定了 Kafka 集群中的一个或多个 broker 地址,用于初始化与 Kafka 集群的连接。在这个例子中,broker 的主机名是 bigdata1,端口号是 9092Kafka 客户端会使用这个地址来发现集群中的其他 broker

kafka消费Tocpic

kafka-console-consumer.sh --topic test --bootstrap-server bigdata1:9092,bigdata2:9092,bigdata3:9092 --max-messages 1 --from-beginning 

参数解读:

  1. --topic test: 这个参数指定了要消费的主题名称,这里是 test

  2. --bootstrap-server bigdata1:9092,bigdata2:9092,bigdata3:9092: 这个参数指定了 Kafka 集群中的一个或多个 broker 地址,用于初始化与 Kafka 集群的连接。在这个例子中,broker 的主机名是 bigdata1,端口号是 9092Kafka 客户端会使用这个地址来发现集群中的其他 broker

  3. --max-messages 1: 这个参数指定了消费者从主题中消费的最大消息数。在这个例子中,消费者将只消费并打印 1 条消息。这对于测试或调试非常有用,特别是当您只想查看主题中的最新消息或某个特定消息时。

  4. --from-beginning: 这个参数告诉消费者从主题的起始位置开始消费消息。默认情况下,消费者会从主题的当前位置开始消费,这意味着它将只消费在消费者启动之后发送到主题的消息。使用 --from-beginning 参数,消费者将消费主题中的所有消息,从最早的消息开始。

  • 20
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值