环境需求
需要预安装Zookeeper
Kafka单节点broker的部署及使用
配置文件
文件路径:$KAFKA_HOME/config/server.properties
内容:
# broker id. 必须为每一个broker设置唯一的int值
# 目前只有一台机器,可以使用默认的从0开始
broker.id=0
# 监听端口,默认9092
listeners
# 主机名设置
host.name
# 以逗号分割的目录,用来存储kafka的日志文件
# 不要使用/tmp目录,每次重启会被清除
log.dirs
# zookeer地址设置
zookeeper.connect
启动Kafka Server
首先启动zookeeper
$ZK_HOME/bin/zookeeper-server-start.sh $ZK_HOME/config/zookeeper.properties
再启动kafka
$KAFKA_HOME/bin/kafka-server-start.sh $KAFKA_HOME/config/server.properties
创建Topic
指定zookeeper地址和端口
# --replication-factor 副本数量
# --partitions 1 分区数量
$KAFKA_HOME/bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic topic_name
查看所有Topic
指定zookeeper地址和端口
$KAFKA_HOME/bin/kafka-topics.sh --list --zookeeper localhost:2181
发送/生产消息
指定broker地址和端口
$KAFKA_HOME/bin/kafka-console-producer.sh --broker-list localhost:9092 --topic topic_name
消费消息
指定zookeeper地址和端口
$KAFKA_HOME/bin/kafka-console-consumer.sh --zookeeper localhost:2181 --topic topic_name --from-beginning
注意: --from-beginning 参数代表从头开始消费
查看信息
查看所有topic的详细信息:
$KAFKA_HOME/bin/kafka-topics.sh --describe --zookeeper localhost:2181
查看指定topic的详细信息:
$KAFKA_HOME/bin/kafka-topics.sh --describe --zookeeper localhost:2181 --topic topic_name
Kafka单节点多broker的部署及使用
创建多个配置文件
cd $KAFKA_HOME/config
cp server.properties server-1.properties
cp server.properties server-2.properties
cp server.properties server-3.properties
修改配置文件
# 文件 server-1.properties
log.dirs=/home/hadoop/app/tmp/kafka-logs-1
listeners=PLAINTEXT://:9093
broker.id=1
# 文件 server-2.properties
log.dirs=/home/hadoop/app/tmp/kafka-logs-2
listeners=PLAINTEXT://:9094
broker.id=2
# 文件 server-3.properties
log.dirs=/home/hadoop/app/tmp/kafka-logs-3
listeners=PLAINTEXT://:9095
broker.id=3
启动
后台启动
$KAFKA_HOME/bin/kafka-server-start.sh -daemon $KAFKA_HOME/config/server-1.properties &
$KAFKA_HOME/bin/kafka-server-start.sh -daemon $KAFKA_HOME/config/server-2.properties &
$KAFKA_HOME/bin/kafka-server-start.sh -daemon $KAFKA_HOME/config/server-3.properties &
创建Topic
# 3个副本 1个分区
$KAFKA_HOME/bin/kafka-topics.sh --create --zookeeper hadoop000:2181 --replication-factor 3 --partitions 1 --topic my-replicated-topic
发送/生产消息
$KAFKA_HOME/bin/kafka-console-producer.sh --broker-list hadoop000:9093,hadoop000:9094,hadoop000:9095 --topic my-replicated-topic
创建消费者
kafka-console-consumer.sh --zookeeper hadoop000:2181 --topic my-replicated-topic
网友评论