1.前言

kafka是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者规模的网站中的所有动作流数据。这种动作(网页浏览,搜索和其他用户的行动)是在现代网络上的许多社会功能的一个关键因素。这些数据通常是由于吞吐量的要求而通过处理日志和日志聚合来解决。

2.博主使用kafka的业务场景

用订阅模式实时处理车机端上报的数据(业务流程图后期有时间就补充)。

3.下载客户端工具

kafka客户端界面 kafka客户端工具_kafka客户端界面

4.下载完毕进行傻瓜式安装即可。

kafka客户端界面 kafka客户端工具_百度云_02

5.简单使用。

5.1 运行客户端

kafka客户端界面 kafka客户端工具_kafka客户端界面_03

5.2 设置集群

kafka客户端界面 kafka客户端工具_百度云_04

5.3 运行zookeeper(也是windows版本),这里不讲解zookeeper的安装。

kafka客户端界面 kafka客户端工具_zookeeper_05

kafka客户端界面 kafka客户端工具_kafka客户端界面_06

5.4 设置本地连接及集群,172.23.130.199为IPV4地址。

出现问题一:

kafka客户端界面 kafka客户端工具_百度云_07

尝试本地访问2181端口

kafka客户端界面 kafka客户端工具_kafka_08


尝试本地访问9092端口,证明欠缺一个9092的服务

kafka客户端界面 kafka客户端工具_kafka_09


于是在自己的百度云服务器安装一个kafka服务端。

安装教程:kafka系列之-linux系统,kafka服务端安装 安装完以后发现还是会出现

kafka客户端界面 kafka客户端工具_百度云_10

搜索了一些资料,发现很多服务器linux机器有两块网卡,kafka的 host.name 开始只绑定在了内部IP上,另一块对外网卡无法访问,把值设置为空的话会kafka监听端口在所有的网卡上绑定,于是我们只需要在绑定外网地址就OK。编辑server.properties

kafka客户端界面 kafka客户端工具_zookeeper_11

# The id of the broker. This must be set to a unique integer for each broker.
#当前机器在集群中的唯一标识,和zookeeper的myid性质一样
broker.id=0
port=9092
host.name=192.168.16.4
advertised.host.name=106.12.175.83

kafka客户端界面 kafka客户端工具_kafka_12


broker.id: 主要做集群时区别的编号

port: 默认kafka端口号

host.name: 设置为百度云内网地址

advertised.host.name: 设置为百度云外网映射地址

再次运行kafka服务端,服务

./kafka-server-start.sh ../config/server.properties &

kafka客户端界面 kafka客户端工具_zookeeper_13

6.注意点

6.1 由于之前使用的是本地windows版本的zookeeper,后面由于服务端我也安装了zookeeper,kafka就没有使用本地的了。
6.2 由于之前已经在百度云安装了zookeeper,已经启用,然后高版本的kafka自带zookeeper,所有博主没有继续往下探讨,kafka到底使用的是我安装的kafka还是kafka自带的zookeeper。

博主本着负责的态度还是尝试,看看到底使用的是哪个zookeeper,于是想直接关掉自己安装启动的zookeeper服务,尼玛!坑爹了,关不了,一直刷报错。

kafka客户端界面 kafka客户端工具_百度云_14

于是重新开了个窗口关闭了 kafka服务,然后kill zookeeper进程,终于关闭掉。

再次启动kafka,求得真理,如果是kafka自带的那应该也不是自己启动的,还是要人为配置操作。

kafka客户端界面 kafka客户端工具_kafka客户端界面_15

实锤了,用的是我自己下载安装的zookeeper。

至此,kafka tool简单的安装使用算是简单讲解清楚了,为了使用这个工具,大搭了一套组件环境。大家没有安装过的,可以按照博主的操作安装自己的kafka服务。