06.搭建kafka集群环境并测试
参考: https://www.cnblogs.com/zhangs1986/p/6565639.html
https://www.cnblogs.com/frankdeng/p/9403883.html
第一步:下载安装
前提已经搭建好了zookeeper集群,然后下载,安装,最后目录是:
/opt/kafka/kafka_2.12-2.1.0
第二步:配置
进入config目录,修改server.properties文件,vi server.properties:
broker.id=0 #当前机器在集群中的唯一标识,和zookeeper的myid性质一样,三台机器分别设置为0、1、2
port=9092 #当前kafka对外提供服务的端口默认是9092,我没设置,默认就是9092
log.dirs=/opt/kafka/kafka_2.12-2.1.0/logs #需要手动在kafka_2.12-2.1.0下新建目录logs,mkdir logs,同理三台机器都需要
zookeeper.connect=192.168.2.245:2181,192.168.2.246:2181,192.168.2.247:2181
第三步:测试
(1)启动
首先启动独立的ZK集群,三台都要启动(./zkServer.sh start)
进入到kafka的bin目录,然后启动服务
./kafka-server-start.sh ../config/server.properties (三台服务器都要启动)
或启动daemon守护进程后台程序
进入到kafka的bin目录
./kafka-server-start.sh -daemon ../config/server.properties
验证启动进程
jps
显示包含
11731 Jps
7418 Kafka
6027 QuorumPeerMain
使用客户端进入zk
[root@spark01 opt]# zkCli.sh -server 192.168.2.245:2181
[zk: 192.168.2.245:2181(CONNECTED) 0] ls /
[cluster, controller_epoch, controller, brokers, zookeeper, admin, isr_change_notification, consumers, log_dir_event_notification, latest_producer_id_block, config]
(2)创建一个topic:
./kafka-topics.sh --create --zookeeper 192.168.2.245:2181,192.168.2.246:2181,192.168.2.247:2181 --replication-factor 3 --partitions 1 --topic hotnews
备注:
--replication-factor 2 #复制两份 --partitions 1 #创建1个分区 --topic #主题
查看topic状态:
查看topic副本信息
./kafka-topics.sh --describe --zookeeper 192.168.2.245:2181,192.168.2.246:2181,192.168.2.247:2181 --topic hotnews
查看已经创建的topic信息
./kafka-topics.sh --list --zookeeper 192.168.2.245:2181,192.168.2.246:2181,192.168.2.247:2181
发送消息:
[root@spark01 bin]# ./kafka-console-producer.sh --broker-list 192.168.2.245:9092,192.168.2.246:9092,192.168.2.247:9092 --topic hotnews
>aaa
>bbb
>ccc
>ddd-test
>11111111111111111111111111110000000000000000000000000000000
>6666666666666666666666666666
>
接收消息:
[root@spark01 bin]# ./kafka-console-consumer.sh --bootstrap-server 192.168.2.245:9092,192.168.2.246:9092,192.168.2.247:9092 --from-beginning --topic hotnews
aaa
bbb
ccc
ddd-test
11111111111111111111111111110000000000000000000000000000000
6666666666666666666666666666