java实用教程第五版课后答案第五章,【Kafka安装】

开放端口

firewall-cmd --add-port=9092/tcp --permanent

firewall-cmd --reload

firewall-cmd --query-port=9092/tcp

systemctl restart docker

启动kafka镜像生成容器

docker run -dit --restart=always --log-driver json-file --log-opt max-size=100m --log-opt max-file=2 --name kafka \

-p 9092:9092 \

-e KAFKA_BROKER_ID=0 \

-e KAFKA_ZOOKEEPER_CONNECT=172.21.17.47:2181 \

-e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://172.21.17.47:9092 \

-e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092 wurstmeister/kafka

参数说明:

-e KAFKA_BROKER_ID=0 在kafka集群中,每个kafka都有一个BROKER_ID来区分自己

-e KAFKA_ZOOKEEPER_CONNECT=ip:2181/kafka 配置zookeeper管理kafka的路径ip:2181/kafka,ip地址改为内网ip

-e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://ip:9092 把kafka的地址端口注册给zookeeper,ip地址改成内网ip

-e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092 配置kafka的监听端口

-v /etc/localtime:/etc/localtime 容器时间同步虚拟机的时间

验证kafka是否可以使用

进入容器

docker exec -it kafka bash

进入 /opt/kafka_2.13-2.7.1/bin/ 目录下

cd /opt/kafka_2.13-2.7.1/bin/

运行kafka生产者发送消息

./kafka-console-producer.sh --broker-list 106.14.132.94:9092 --topic sun

发送消息

{“datas[{“channel”:”",“metric”:“temperature”,“producer”:“ijinus”,“sn”:“IJA0101-00002245”,“time”:“1543207156000”,“value”:“80”}],“ver”:“1.0”}

运行kafka消费者接收消息

./kafka-console-consumer.sh --bootstrap-server 106.14.132.94:9092 --topic sun --from-beginning

停止zookeeper和kafka

docker stop zookeeper

docker rm zookeeper

docker stop kafka

docker rm kafka

三、安装包安装kafka

一、安装JDK

yum install java-1.8.0-openjdk* -y

二、安装Zookeeper

wget https://archive.apache.org/dist/zookeeper/zookeeper-3.5.8/apache-zookeeper-3.5.8-bin.tar.gz

tar -zxvf apache-zookeeper-3.5.8-bin.tar.gz

cd apache-zookeeper-3.5.8-bin/

cp conf/zoo_sample.cfg conf/zoo.cfg

cd /home/apache-zookeeper-3.5.8-bin/bin

./zkServer.sh start

./zkCli.sh

ls /

打印结果:

[zk: localhost:2181(CONNECTED) 5] ls /

[admin, brokers, cluster, config, consumers, controller, controller_epoch, isr_change_notification, kafka, latest_producer_id_block, log_dir_event_notification, zookeeper]

[zk: localhost:2181(CONNECTED) 6]

三、安装Kafka

wget https://archive.apache.org/dist/kafka/2.4.1/kafka_2.11-2.4.1.tgz

tar -xzf kafka_2.11-2.4.1.tgz

cd /home/kafka_2.11-2.4.1/config

vim config/server.properties

配置文件编辑

#broker.id属性在kafka集群中必须要是唯一

broker.id=0

#kafka部署的机器ip和提供服务的端口号

listeners=PLAINTEXT://内网ip:9092

#kafka的消息存储文件

log.dir=/usr/local/data/kafka-logs

#kafka连接zookeeper的地址

zookeeper.connect=内网ip:2181

如果填写外网ip可能会遇上这种情况:

kafka

四、启动并验证kafka
启动kafka

/home/kafka_2.11-2.4.1/bin/kafka-server-start.sh config/server.properties &

进入zookeeper目录通过zookeeper客户端查看下zookeeper的目录树

/home/apache-zookeeper-3.5.8-bin/bin/zkCli.sh

ls /

ls /brokers/ids

校验kafka
创建主题

/home/kafka_2.11-2.4.1/bin/kafka-topics.sh --create --zookeeper 106.14.132.94:2181 --replication-factor 1 --partitions 1 --topic test

查看kafka中目前存在的topic

/home/kafka_2.11-2.4.1/bin/kafka-topics.sh --list --zookeeper 106.14.132.94:2181

发送消息

/home/kafka_2.11-2.4.1/bin/kafka-console-producer.sh --broker-list 106.14.132.94:9092 --topic test

this is a msg

消费消息

/home/kafka_2.11-2.4.1/bin/kafka-console-consumer.sh --bootstrap-server 106.14.132.94:9092–topic test

消费之前的消息

/home/kafka_2.11-2.4.1/bin/kafka-console-consumer.sh --bootstrap-server 106.14.132.94:9092 --from-beginning --topic test

kafka消费

通过jps命令查看运行的情况

jps

Kafka可视化管理工具kafka-manager

kafka

安装及基本使用可参考:Java廖志伟


总结

以上就是今天要讲的内容,还希望各位读者大大能够在评论区积极参与讨论,给文章提出一些宝贵的意见或者建议📝,合理的内容,我会采纳更新博文,重新分享给大家。

🙏四连 关注🔎点赞👍收藏⭐️留言📝

感谢大家的支持,用心写博文分享给大家,你的支持(🔎点赞👍收藏⭐️留言📝)是对我创作的最大帮助。

🍊微信公众号:南北踏尘

🍊主页地址:java_wxid

🍊社区地址:幕后大佬

给读者大大的话

我本身是一个很普通的程序员,放在人堆里,除了与生俱来的🌹盛世美颜🌹、所剩不多的发量,就剩下180的大高个了。就是我这样的一个人,默默坚持写博文也有好多年了,有句老话说的好,🌕牛逼之前都是傻逼式的坚持🌕。希望自己可以通过大量的作品,时间的积累,个人魅力、运气和时机,可以打造属于自己的🌟技术影响力🌟。同时也希望自己可以成为一个🎄懂技术🎄,🎄懂业务🎄,🎄懂管理🎄的综合型人才,作为项目架构路线的总设计师,掌控全局的🌕团队大脑🌕,技术团队中的🍊绝对核心🍊是我未来几年不断前进的目标。


提示:以下都是资源分享,求个一键三连。

面试资料

福利大放送,🎉欢迎关注🔎点赞👍收藏⭐️留言📝,拜托了🙏,这对我真的很重要。

点击:面试资料

提取码:2021

200套PPT模板

福利大放送,🎉欢迎关注🔎点赞👍收藏⭐️留言📝,拜托了🙏,这对我真的很重要。

点击:200套PPT模板

提取码:2021

提问的智慧

福利大放送,🎉欢迎关注🔎点赞👍收藏⭐️留言📝,拜托了🙏,这对我真的很重要。

点击:提问的智慧
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Java工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

如果你觉得这些内容对你有帮助,可以扫码获取!!(备注Java获取)

img

最后

各位读者,由于本篇幅度过长,为了避免影响阅读体验,下面我就大概概括了整理了

《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!
视频,并且会持续更新!**

如果你觉得这些内容对你有帮助,可以扫码获取!!(备注Java获取)

img

最后

各位读者,由于本篇幅度过长,为了避免影响阅读体验,下面我就大概概括了整理了

[外链图片转存中…(img-l4lUfbsQ-1713294823737)]

[外链图片转存中…(img-lzQ4F8ZK-1713294823737)]

[外链图片转存中…(img-a0zctxzH-1713294823738)]

[外链图片转存中…(img-AigQ7wDt-1713294823738)]

《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值