简介
Kafka是由Apache软件基金会开发的一个高吞吐量的分布式发布订阅消息系统,由Scala和Java编写。官网地址:http://kafka.apache.org
一、基本概念
- Broker:Kafka集群包含一个或多个服务器,这种服务器被称为broker。
- opic:每条发布到Kafka集群的消息都有一个主题名称,这个主题名称就被称为Topic。
- Partition:Partition是物理上的概念,每个Topic包含一个或多个Partition。
- Producer:消息生产者,负责发布消息到Kafka broker。
- Consumer:消息消费者,向Kafka broker读取消息的客户端。
- Consumer Group:每个Consumer属于一个特定的Consumer Group,group name可单独设定,若不设定则属于默认的group。
二、环境配置
- 操作系统:Cent OS 7
- Kafka版本:kafka_2.12-2.8.0
- Kafka下载地址:https://kafka.apache.org/downloads.html
- Jdk版本:1.8
- 备注:2.11-1.1.0版本才与JDK1.7兼容,否则更高版本需要JDK1.8
三、操作过程
运行Kafka需要使用Zookeeper,所以需要先启动Zookeeper,如果没有Zookeeper,可以使用Kafka自带打包和配置好的Zookeeper(PS:在Kafka包里)。
- 解压:tar zxvf kafka_2.12-2.8.0.tgz
- 进入Kafka安装目录:cd kafka_2.12-2.8.0
- 启动zookeeper:bin/zookeeper-server-start.sh config/zookeeper.properties
- 配置Kafka属性: config文件夹下面的server.properties
broker.id=0 //唯一标识
listeners=PLAINTEXT://:9092 指定服务的端口
advertised.listeners=PLAINTEXT://你的IP:9092 如果要提供外网访问 必须配置此项
log.dirs=/tmp/kafka-logs-0 //日志目录
- 启动Kafka:bin/kafka-server-start.sh config/server.properties &
- 检查服务:netstat -tunlp|egrep “(2181|9092)”