前言
生产环境下,为保证服务的高可用性,通常kafka是以集群部署的,本文基于centos7环境,演示下如何快速搭建一个单机版的kafka集群
环境准备
- centos7环境,云服务器或虚拟机
- zookeeper-3.4.2.tar.gz,kafka_2.12-3.0.0.tgz,安装包可以去各自的官网下载
搭建步骤
一、搭建zookeeper
zk的安装比较简单,这里就跳过了,只需要简单配置下端口、数据文件的存放目录即可
然后到bin目录下,执行下面的命令启动
./zkServer.sh start
生产环境下,为保证高可用性,zk通常也是集群部署的,至少3节点,这里做下说明
二、搭建kafka集群
1、上传kafka安装包到指定目录
2、解压文件后依次复制出3个文件
tar -zxvf kafka_2.12-3.0.0.tgz
mv kafka_2.12-3.0.0 kafka1
cp -r kafka1 kafka2
cp -r kafka1 kafka3
3、进入3个kafka目录做相关的配置
以kafka1文件目录进行配置说明,首先创建一个data目录
然后进入到config目录下,编辑 server.properties 文件,主要修改的地方如下,
broker.id=1
listeners=PLAINTEXT://IP:9092
log.dirs=/usr/local/soft/kafka/kafka1/data
zookeeper.connect=IP:2181
kafka2和kafka3依照kafka1做相同的配置即可,对上面的配置做简单的说明
- broker.id 表示kafka服务的唯一标识,不能相同,比如kafka1目录下填1,其他2个目录下可以填2,3等
- listeners,kafka暴露出去的服务端口
- log.dirs,kafka运行过程中产生的数据存放目录
- zookeeper.connect 连接zk的地址
如果是云服务器,建议使用内网IP,同时,如果集群的各个服务是部署在不同的机器,建议提前开启相关的端口
4、启动3个kafka服务
分别进入到kafka1,kafka2,kafka3 主目录,执行下面的命令进行启动
./bin/kafka-server-start.sh -daemon ./config/server.properties
没有报错的情况下,检查下kafka的进程是否起来了,出现下面的情况,表示集群中各个服务启动成功
5、在zk中检查集群状况
进入zookeeper的bin目录下,使用客户端命令检查下集群的节点状况,如果出现下面的状态,说明目前集群已经正常运转
|