CentOS-7安装部署kafka集群(kafka_2.12-2.5.0)
备忘录:做个笔记。
记录:NO.214
本例环境:
操作系统:CentOS-7-x86_64-DVD-1908
安装包:kafka_2.12-2.5.0.tgz
安装包:apache-zookeeper-3.5.8-bin.tar.gz
java环境:jdk 1.8
远程连接工具:SecureCRT 8.0
虚拟机:vmware 12
下载地址:http://kafka.apache.org/downloads
1.本例环境说明
本例使用zookeeper集群作为注册中心管理。
zookeeper集群安装部署请参考博文:CentOS-7安装部署zookeeper集群(zookeeper-3.5.8)
博文地址:https://blog.****.net/zhangbeizhen18/article/details/106677217
2.从官网下载kafka
本例下载版本是:kafka_2.12-2.5.0.tgz
本例在虚拟机搭建3个kafka节点
3.上传压缩包并解压
解压:tar -zxvf kafka_2.12-2.5.0.tgz
进入:/home/app目录在此目录下新建kfkcluster,kafka集群相关信息均放在这个目录下
命令:mkdir kfkcluster
将解压后的kafka_2.12-2.5.0拷贝到kfkcluster下
命令:cp -rf kafka_2.12-2.5.0 /home/app/kfkcluster/
4.kafka3个节点
命名为kfkconfig-29001、kfkconfig-29002、kfkconfig-29003,后缀数字为端口
将kafka_2.12-2.5.0复制为3份并命名为3个节点
命令:
cp -rf kafka_2.12-2.5.0 kafka-29001
cp -rf kafka_2.12-2.5.0 kafka-29002
cp -rf kafka_2.12-2.5.0 kafka-29003
5.修改节点配置(kafka-29001)
目录:cd /home/app/kfkcluster/kafka-29001/config
编辑:vim server.properties
修改如下:
#kafka集群唯一标识
broker.id=0
#kafka集群的地址
broker.list=192.168.110.130:29001,192.168.110.130:29002,192.168.110.130:29003
#本机监听端口
port=29001
host.name=192.168.110.130
#分区数量
num.partitions=3
#队列中消息持久化存放的位置
log.dirs=/home/app/kfkcluster/kfkconfig-29001/logs
#zookeeper集群
zookeeper.connect=192.168.110.130:22181,192.168.110.130:22182,192.168.110.130:22183
6.修改节点配置(kafka-29002)
目录:cd /home/app/kfkcluster/kafka-29002/config
编辑:vim server.properties
修改如下:
#kafka集群唯一标识
broker.id=1
#kafka集群的地址
broker.list=192.168.110.130:29001,192.168.110.130:29002,192.168.110.130:29003
#本机监听端口
port=29002
host.name=192.168.110.130
#分区数量
num.partitions=3
#队列中消息持久化存放的位置
log.dirs=/home/app/kfkcluster/kfkconfig-29002/logs
#zookeeper集群
zookeeper.connect=192.168.110.130:22181,192.168.110.130:22182,192.168.110.130:22183
7.修改节点配置(kafka-29003)
目录:cd /home/app/kfkcluster/kafka-29003/config
编辑:vim server.properties
修改如下:
#kafka集群唯一标识
broker.id=2
#kafka集群的地址
broker.list=192.168.110.130:29001,192.168.110.130:29002,192.168.110.130:29003
#本机监听端口
port=29003
host.name=192.168.110.130
#分区数量
num.partitions=3
#队列中消息持久化存放的位置
log.dirs=/home/app/kfkcluster/kfkconfig-29003/logs
#zookeeper集群
zookeeper.connect=192.168.110.130:22181,192.168.110.130:22182,192.168.110.130:22183
8.创建3个节点的目录
进入:cd /home/app/kfkcluster
创建目录:kfkconfig-29001、kfkconfig-29002、kfkconfig-29003,
命令:mkdir kfkconfig-29001、mkdir kfkconfig-29002、mkdir kfkconfig-29003
进入kfkconfig-29001、kfkconfig-29002、kfkconfig-29003目录并分别创建logs目录
命令:mkdir logs
日志目录:
kafka-29001节点:/home/app/kfkcluster/kfkconfig-29001/logs
kafka-29002节点:/home/app/kfkcluster/kfkconfig-29002/logs
kafka-29003节点:/home/app/kfkcluster/kfkconfig-29003/logs
在/home/app/kfkcluster截图:
9.启动zookeeper集群
进入目录启动(搭建请参考:CentOS-7安装部署zookeeper集群(zookeeper-3.5.8))
cd /home/app/zkcluster/zookeeper-22181/bin
cd /home/app/zkcluster/zookeeper-22182/bin
cd /home/app/zkcluster/zookeeper-22183/bin
启动命令:sh zkServer.sh start
关闭命令:sh zkServer.sh stop
查看zookeeper端口是否启动::
netstat -tlnp | grep java
截图:
客户端连接验证:
连接命令:
sh zkCli.sh -timeout 5000 -server 192.168.110.130:22181
sh zkCli.sh -timeout 5000 -server 192.168.110.130:22182
sh zkCli.sh -timeout 5000 -server 192.168.110.130:22183
10.分别进入目录启动
命令:
cd /home/app/kfkcluster/kafka-29001
cd /home/app/kfkcluster/kafka-29002
cd /home/app/kfkcluster/kafka-29003
启动命令:
./bin/kafka-server-start.sh ./config/server.properties
启动节点kafka-29001截图 启动节点kafka-29002截图
启动节点kafka-29003截图
查看监听端口是否启动:
命令:netstat -tlnp | grep java
11.登入zookeeper
连接命令:
sh zkCli.sh -timeout 5000 -server 192.168.110.130:22181
sh zkCli.sh -timeout 5000 -server 192.168.110.130:22182
sh zkCli.sh -timeout 5000 -server 192.168.110.130:22183
登入一个zookeeper节点查看注册brokers
12.创建一个topic
进入目录:cd /home/app/kfkcluster/kafka-29001/bin
创建toptic命令:
sh kafka-topics.sh --create --zookeeper 192.168.110.130:22181 --replication-factor 3 --partitions 1 --topic demo202006
截图:
13.查看topic(使用kafka-topics.sh查看)
进入目录:cd /home/app/kfkcluster/kafka-29001/bin
创建toptic命令:
sh kafka-topics.sh --zookeeper 192.168.110.130:22181 --describe --topic demo202006
截图:
14.删除topic
命令:
sh kafka-topics.sh --delete --zookeeper 192.168.110.130:22181 --topic demo2020_01
15.查看topic(使用zookeeper查看)
使用zookeeper客户端登入
命令:sh zkCli.sh -timeout 5000 -server 192.168.110.130:22181
查看:ls /brokers/topics
16.创建生产者
本例测试的topic是:demo202006,即生产者往这个topic写入数据。
命令:
sh kafka-console-producer.sh --broker-list 192.168.110.130:29001,192.168.110.130:29002,192.168.110.130:29003 --topic demo202006
进入并写入数据:
17.创建消费者
本例测试的topic是:demo202006,即生产者往这个topic写入数据。
命令:
sh kafka-console-consumer.sh --bootstrap-server 192.168.110.130:29001 --topic demo202006 --from-beginning
注意:是kafka的ip和地址
读出数据:
以上,感谢。