千家信息网

Kafka基础知识点有哪些

发表于:2024-11-24 作者:千家信息网编辑
千家信息网最后更新 2024年11月24日,这篇文章主要讲解了"Kafka基础知识点有哪些",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"Kafka基础知识点有哪些"吧!1、安装部署1.1、集群规
千家信息网最后更新 2024年11月24日Kafka基础知识点有哪些

这篇文章主要讲解了"Kafka基础知识点有哪些",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"Kafka基础知识点有哪些"吧!

1、安装部署

1.1、集群规划
Hadoop102Haoop103Hadoop104
ZookeeperZookeeperZookeeper
kafkakafkakafka
1.2、jar包下载

http://kafka.apache.org/downloads

1.3、集群部署
1)解压安装包        tar -zxvf kafka_2.11-2.4.1.tgz -C /opt/module/2)修改解压后的文件名称        mv kafka_2.11-2.4.1/ kafka3)在/opt/module/kafka目录下创建logs文件夹        mkdir logs
4)修改配置文件        cd config/        vi server.properties输入以下内容:        #broker的全局唯一编号,不能重复        broker.id=2                             --需要修改        #处理网络请求的线程数量        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=/opt/module/kafka/logs         --需要修改        #topic在当前broker上的分区个数        num.partitions=1        #用来恢复和清理data下数据的线程数量        num.recovery.threads.per.data.dir=1        #segment文件保留的最长时间,超时将被删除        log.retention.hours=168        #配置连接Zookeeper集群地址        zookeeper.connect=hadoop102:2181,hadoop103:2181,hadoop104:2181/kafka    --需要修改
5)配置环境变量        sudo vim /etc/profile.d/my_env        #KAFKA_HOME        export KAFKA_HOME=/opt/module/kafka        export PATH=$PATH:$KAFKA_HOME/bin        source /etc/profile.d/my_env6)分发安装包        xsync kafka/        注意:分发之后记得配置其他机器的环境变量        分别在hadoop103和hadoop104上修改配置文件        /opt/module/kafka/config/server.properties中的broker.id=3、broker.id=4        注:broker.id不得重复!!!!
7)启动集群依次在hadoop102、hadoop103、hadoop104节点上启动kafka[atguigu@hadoop102 kafka]$ kafka-server-start.sh -daemon $KAFKA_HOME/config/server.properties[atguigu@hadoop103 kafka]$ kafka-server-start.sh -daemon  $KAFKA_HOME/config/server.properties[atguigu@hadoop104 kafka]$ kafka-server-start.sh -daemon  $KAFKA_HOME/config/server.properties8)关闭集群[atguigu@hadoop102 kafka]$ bin/kafka-server-stop.sh[atguigu@hadoop103 kafka]$ bin/kafka-server-stop.sh[atguigu@hadoop104 kafka]$ bin/kafka-server-stop.sh
9)kafka群起群停脚本!#/bin/bash#1、判断参数个数if [ $# -ne 1 ];then        echo "args num is error!!!"        exitfi#2、根据输入的参数执行逻辑case $1 in"start")        for host in hadoop02,hadoop103,hadoop104        do                echo "===============start $host kafka==============="                ssh $host "/opt/module/kafka/bin/kafka-server-start.sh -daemon /opt/module/kafka/config/server.properties"        done;;"stop")        for host in hadoop102,hadoop103,hadoop104        do                echo "===============stop $host kafka==============="                ssh $host "/opt/module/kafka/bin/kafka-server-stop.sh"        done;;"status")        for host in hadoop102,hadoop103,hadoop104        do                pid=$(ssh $host "ps -ef | grep server.properties | grep -v grep")                [ "$pid" ] && echo "kafka进程正常" || echo "kafka进程不存在或者异常"        done;;*)        echo "input arg error!!! (stop,start,status)";;esac

2、Kafka命令行操作

2.1 查看当前服务器中的所有topic
kafka-topics.sh --list  --bootstrap-server hadoop102:9092,hadoop103:9092,hadoop104:9092
2.2 创建topic
kafka-topics.sh --create --bootstrap-server hadoop102:9092,hadoop103:9092 --topic second  --partitions 2 --replication-factor 2选项说明:--topic 定义topic名--replication-factor  定义副本数--partitions  定义分区数
2.3 删除topic
kafka-topics.sh --delete --bootstrap-server hadoop102:9092,hadoop103:9092 --topic second
2.4 发送消息
kafka-console-producer.sh --broker-list hadoop102:9092 --topic first
2.5 消费消息
kafka-console-consumer.sh --bootstrap-server hadoop102:9092 --from-beginning --topic first--from-beginning:会把主题中以往所有的数据都读取出来。
2.6 查看某个Topic的详情
kafka-topics.sh --describe --bootstrap-server hadoop102:9092,hadoop103:9092 --topic first
2.7 修改分区数
kafka-topics.sh --alter --bootstrap-server hadoop102:9092,hadoop103:9092 --topic first --partition 6注意:分区只能改大不能改小,不能修改副本数

感谢各位的阅读,以上就是"Kafka基础知识点有哪些"的内容了,经过本文的学习后,相信大家对Kafka基础知识点有哪些这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是,小编将为大家推送更多相关知识点的文章,欢迎关注!

0