kafka的安装及简单使用

kafka

1、什么是kafka

kafka是一个分布式事件流平台,核心功能有发布/订阅消息系统、实时处理数据流等,Kafka非常适合超大数据量场景。

2、kafka安装

(1)下载

kafka官网下载二进制压缩包

(2)解压安装

在Linux的终端使用tar -xvf kafka_2.13-4.0.0.tgz -C '解压到指定路径'命令,解压完即完成安装。

(3)启动kafka

kafka是由Scala语言开发的需要预先安装JDK,有两种方式启动kafka,分别是使用Zookeeper,使用KRaft,前期Kafka依赖Zookeeper进行管理维护集群的整体状态和协调各个组件的工作,后期使用KRaft(Kafka Raft)取代了Zookeeper。

  • Kafka启动使用Zookeeper
    在Kafka的较新版本中已经完全移除了Zookeeper默认使用KRaft,因此可能不存在Zookeeper的启动脚本及jar包,需要我们手动安装Zookeeper。以下是针对旧版本的Kafka启动脚本
    1)启动Zookeeper: bin/zookeeper-server-start.sh config/zookeeper.properties &,&用来指定在后台启动。
    2)启动Kafka: bin/kafka-server-start.sh config/server.properties &
    3)关闭Kafka:bin/kafka-server-stop.sh config/server.properties
  • 手动安装Zookeeper并启动Kafka
    1)下载解压安装

    2)在conf目录下配置cp zoo_sample.cfg zoo.cfg,启动zkbin/zkServer.sh start,再启动kafkabin/kafka-server-start.sh -daemon config/server.properties
  • Kafka启动使用KRaft
bash 复制代码
	# 生成集群ID
	   KAFKA_CLUSTER_ID=$(bin/kafka-storage.sh random-uuid)
	   echo $KAFKA_CLUSTER_ID
   # 格式化,4.0.0版本没有Zookeeper启动脚本因此只存在一个配置文件在config/server.properties,根据情况自行修改
	   bin/kafka-storage.sh format -t $KAFKA_CLUSTER_ID -c config/kraft/server.properties
   # 启动Kafka,daemon用于指定后台启动
	   bin/kafka-server-start.sh -daemon config/kraft/server.properties

(4)使用docker安装Kafka

  • 拉取Kafka镜像,在Kafka的官网文档有提供docker镜像拉取命令
  • 使用docker运行Kafka

3、Kafka的简单使用

(1)使命令脚本kafka.topics.sh创建Topic,bin/kafka-topics.sh --create --topic topicName --bootstrap-server localhost:9092

(2)生产者

使用kafka.producer.sh需指定两个必要的参数--topic ,--bootstrap-server,也可通过kafka.producer.sh --help查看更多参数,示例向--topic hello发送消息kafka-console-producer.sh --topic hello --bootstrap-server localhost:9092

(3)消费者

使用kafka-console-consumer.sh脚本,同样需要指定上述两个必须参数./kafka-console-consumer.sh clear --topic hello --bootstrap-server localhost:9092

4、kafka图形化工具

  1. EFAK,在官网下载解压安装。

  2. 配置

    EFAK依赖MySQL,以Zookeeper方式启动Kafka,需要创建ke数据库。创建完之后修改conf目录下的system-config.properties配置文件中的Zookeeper配置和MySQL数据库配置。并需要在/etc/profile配置环境变量export KE_HOME=/usr/local/efak-web-3.0.1;export PATH=$PATH:$KE_HOME/bin

  3. 原神启动!!!

    执行脚本bin/ke.sh start

    浏览器访问

相关推荐
喂完待续11 小时前
Apache Hudi:数据湖的实时革命
大数据·数据仓库·分布式·架构·apache·数据库架构
yh云想20 小时前
《从入门到精通:Kafka核心原理全解析》
分布式·kafka
武子康21 小时前
大数据-70 Kafka 日志清理:删除、压缩及混合模式最佳实践
大数据·后端·kafka
ModelWhale1 天前
“大模型”技术专栏 | 浅谈基于 Kubernetes 的 LLM 分布式推理框架架构:概览
分布式·kubernetes·大模型
愿天堂没有C++1 天前
C++——分布式
分布式
UPToZ1 天前
【Docker】搭建一个高性能的分布式对象存储服务 - MinIO
分布式·docker·容器
前端世界2 天前
鸿蒙任务调度机制深度解析:优先级、时间片、多核与分布式的流畅秘密
分布式·华为·harmonyos
A尘埃2 天前
金融项目高可用分布式TCC-Transaction(开源框架)
分布式·金融·开源
夜影风2 天前
RabbitMQ核心架构与应用
分布式·架构·rabbitmq
花酒锄作田2 天前
Nginx反向代理Kafka集群
nginx·kafka