Kafka消息中间件服务器安装以及基本使用

117 阅读2分钟

本文已参与「新人创作礼」活动, 一起开启掘金创作之路。

kafka基本使⽤

1.安装前的环境准备

jdk 安装zk 官⽹下载kafka的压缩包:kafka.apache.org/downloads

解压缩⾄如下路径

/usr/local/kafka/

修改配置⽂件:/usr/local/kafka/kafka2.11-2.4/config/server.properties

#broker.id属性在kafka集群中必须要是唯⼀ 
broker.id=0 
#kafka部署的机器ip和提供服务的端⼝号
listeners=PLAINTEXT://192.168.65.60:9092 
#kafka的消息存储⽂件 
log.dir=/usr/local/data/kafka-logs
#kafka连接zookeeper的地址 
zookeeper.connect=192.168.65.60:2181

2.启动kafka服务器 进⼊到bin⽬录下。使⽤命令来启动

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

验证是否启动成功: 进⼊到zk中的节点看id是0的broker有没有存在(上线)

ls /brokers/ids/

创建主题topic topic
topic可以实现消息的分类,不同消费者订阅不同的topic。

执⾏以下命令创建名为“test”的topic,这个topic只有⼀个partition,并且备份因⼦也设置为 1:

/kafka-topics.sh --create --zookeeper 172.16.253.35:2181 --replicationfactor 1 --partitions 1 --topic test

查看当前kafka内有哪些topic

./kafka-topics.sh --list --zookeeper 172.16.253.35:2181

发送消息 kafka⾃带了⼀个producer命令客户端,可以从本地⽂件中读取内容,或者我们也可以以命令 ⾏中直接输⼊内容,并将这些内容以消息的形式发送到kafka集群中。在默认情况下,每⼀个 ⾏会被当做成⼀个独⽴的消息。使⽤kafka的发送消息的客户端,指定发送到的kafka服务器 地址和topic

./kafka-console-producer.sh --broker-list 172.16.253.38:9092 --topic test

消费消息 对于consumer,kafka同样也携带了⼀个命令⾏客户端,会将获取到内容在命令中进⾏输 出,默认是消费最新的消息。使⽤kafka的消费者消息的客户端,从指定kafka服务器的指定 topic中消费消息

⽅式⼀:从最后⼀条消息的偏移量+1开始消费

./kafka-console-consumer.sh --bootstrap-server 172.16.253.38:9092 -- topic test

⽅式⼆:

从头开始消费 ./kafka-console-consumer.sh --bootstrap-server 172.16.253.38:9092 -- from-beginning --topic test

⼏个注意点:

消息会被存储

消息是顺序存储

消息是有偏移量的

消费时可以指明偏移量进⾏消费