上一篇文章对Apache Kafka 做了一个简单的介绍, Kafka作为一个优秀的分布式消息系统具有以下优势:
- 分布式,高吞吐量
- 支持无限量消息堆积
- Kafka Producer、Consumer设计实现都是轻量级,易于扩展
使用场景
本人主要使用Kafka+ELK来搭建日志分析系统。
下面开始搭建一个Kafka集群环境来做一些测试。
准备工作
- 三台server,运行Cent OS,它们的ip分别为172.18.19.206,172.18.19.207,172.18.19.208
- 安装JDK 1.7或1.8
- 安装Zookeeper
关于JDK、Zookeeper安装 可以参考之前的两篇文章,这里就不再做介绍了。
安装&配置
1.下载Kafka
点此下载最新版本Kafka
下载 Scala 2.11 - kafka_2.11-0.9.0.1.tgz 即可
2.解压缩
[root@w206-ops-docker1 Kafka]# tar -xzvf kafka_2.11-0.9.0.1.tgz
[root@w206-ops-docker1 Kafka]# cd kafka_2.11-0.9.0.1
3.修改配置文件
[root@w206-ops-docker1 kafka_2.11-0.9.0.1]# vi config/server.properties
重点是以下配置:
broker.id=0
listeners=PLAINTEXT://:9092
port=9092
host.name=172.18.19.206
log.dirs=/data/kafka-logs
zookeeper.connect=172.18.19.206:2181,172.18.19.207:2181,172.18.19.208:2181
- broker.id 标示当前server在集群中的id,从0开始
- port 端口号
- host.name 当前的server host name
- zookeeper.connect 连接的zookeeper集群
- log.dirs log的存储目录
Kafka安装配置到此就完成了,同理在172.18.19.207,172.18.19.208机器上进行配置。
启动服务
[root@w206-ops-docker1 kafka_2.11-0.9.0.1]# ./bin/kafka-server-start.sh config/server.properties
参考文档