Linux下如何部署分布式消息系统Kafka
Linux下如何部署分布式消息系统Kafka
今天小编给大家分享一下Linux下如何部署分布式消息系统Kafka的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。
Kafka是最初由Linkedin公司开发,是一个分布式、支持分区的(partition)、多副本的(replica),基于zookeeper协调的分布式消息系统,它的最大的特性就是可以实时的处理大量数据以满足各种需求场景:比如基于hadoop的批处理系统、低延迟的实时系统、storm/Spark流式处理引擎,web/nginx日志、访问日志,消息服务等等。
Kafka:2.12-2.5.0
1、安装JDK 1.8
yum-yinstalljava-1.8.0*
java -version 命令查看JDK版本,如图安装成功:
2、安装zookeeper服务
参考文章:Linux下ZooKeeper的安装及使用
3、创建工作目录,下载安装包:
#创建安装目录mkdir-p/opt/kafka#移动到目录cd/opt/kafka#下载kafka安装包wgethttps://mirrors.aliyun.com/apache/kafka/2.5.0/kafka_2.12-2.5.0.tgz#解压缩tar-zxvfkafka_2.12-2.5.0.tgz
4、配置文件:
#进入配置目录cdkafka_2.12-2.5.0/config/#备份配置文件cpserver.propertiesserver.properties.bak#修改配置文件vimserver.properties#修改及添加以下配置broker.id=1listeners=PLAINTEXT://127.0.0.1:9092advertised.listeners=PLAINTEXT://127.0.0.1:9092#其他自定义配置(根据实际修改)zookeeper.connect=127.0.0.1:2181zookeeper.connection.timeout.ms=18000#保存退出:wq
#配置说明 broker.id:当前机器在集群中的唯一标识。例如有三台Kafka主机,则分别配置为1,2,3。
listeners:服务监听端口。
advertised.listeners:提供给生产者,消费者的端口号,即外部访问地址。默认为listeners的值。
zookeeper.connect:zookeeper连接地址。如有集群配置,每台Kafka主机都需要连接全部zookeeper服务,实例如下:
zookeeper.connect=192.168.1.41:2181,192.168.1.42:2181,192.168.1.47:2181
zookeeper.connection.timeout.ms:zookeeper连接超时时间。
5、启动Kafka:
(首先确保已启动zookeeper)
#移到工作目录cd/opt/kafka/kafka_2.12-2.5.0/bin/#启动kafka./kafka-server-start.sh-daemon../config/server.properties#关闭kafka服务./kafka-server-stop.sh
查看端口已被监听,启动成功:
6、测试创建一个topic:
#移到工作目录cd/opt/kafka/kafka_2.12-2.5.0/bin/#创建topic./kafka-topics.sh--create--zookeeper127.0.0.1:2181--replication-factor1--partitions1--topictopic1#查看topic信息./kafka-topics.sh--describe--zookeeper127.0.0.1:2181--topictopic1
#启动生产者控制台./kafka-console-producer.sh--broker-list127.0.0.1:9092--topictopic1#启动消费者控制台(新开一个窗口)./kafka-console-consumer.sh--bootstrap-server127.0.0.1:9092--topictopic1--from-beginning
此时在生成者控制台发一条测试消息,消费者控制台即可收到:
以上就是“Linux下如何部署分布式消息系统Kafka”这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注恰卡编程网行业资讯频道。
推荐阅读
-
linux怎么搭建ftp服务器(linux ftp命令)
linuxftp命令?很欢喜问本问题,此观点祝你好运吧!再连接ftp服务器。格式:ftp[hostname|ip-address...
-
linux怎么调出屏幕键盘(linux | 怎么打出来,管道符号怎么打)
linux|怎么打出来,管道符号怎么打?楼主,你好!“|”这个符号在linux环境称做“管道符”框输入方法:Shift键盘的“...
-
linux系统生成core文件(linux udp缓存配置)
linuxudp缓存配置?临时再添加:sysctl-w_max26214400无限制再添加:将以下行添加到中:_max26214...
-
linux Centos如何安装PHP7
linuxCentos如何安装PHP7今天小编给大家分享一下li...
-
干了10多年的php,还不会安装,是不是丢人
-
Linux编程的十大代码编辑器新鲜出炉,你用的入榜单了吗?
-
从7到8,CentOS又更新了什么
-
PHP程序员的技术成长规划-基础阶段篇
-
Linux curl命令
Linuxcurl命令是一个利用URL规则在命令行下工作的文件传输工具。它支持文件的上传和下载,所以是综合传输工具,但...
-
CentOS和RedHat下8个最常用的YUM库