Kafka安装和常用操作命令

Kafka安装:

下载kafka_2.10-0.8.2.1

1.关闭防火墙

2.修改配置文件  server.properties

broker.id=1
log.dirs= /usr/kafka_2.10-0.8.2.1/data  //最后不要写log
zookeeper.connect=master:2181,slave01:2181,slave02:2181
delete.topic.enable = true //删除话题的时候需要设置其为true
num.partitions=3//建议默认3个分区,如果AIP里面你的分区数大于系统规定的则抛出异常
//分发给其他两台服务器,每台机器的broker.id必须唯一
3.配置环境变量
 
常用操作命令:
//启动。指定启动的配置文件,  输出到run_data目录, 2>&1所有正确错误的都输出,   &后台运行               
kafka-server-start.sh $KAFKA_HOME/config/server.properties >>$KAFKA_HOME/run_data 2>&1 &
 
//创建话题    指定zookeeper集群中任意一个主机都可以   
kafka-topics.sh --create --zookeeper master:2181 --replication-factor 3 --partitions 1 --topic topic1
kafka-topics.sh --create --zookeeper master:2181 --replication-factor 3 --partitions 3 --topic topic2
//副本数量为3,那么至少得启动3个kafka的server,否则会抛出异常。
 
//话题描述清单
kafka-topics.sh --describe --zookeeper slave01:2181 --topic topic1
 
//发送消息(生产者)
//轮循写入分区,即012 012 012
//第一次打开生产者是写入0分区,退出后,第二次打开生产者写入1分区
kafka-console-producer.sh --broker-list localhost:9092 --topic topic2
//2)当前broker(节点)没有kafka服务时,需要指定一个有kafka服务的broker(zookeeper集群中任意一个),
kafka-console-producer.sh --broker-list slave02:9092 --topic topic2
 
//接收队列消息(消费者) from-beginning如果不加,那么在消费者没有启动的时候,或者说它不在线之前的信息收不到
kafka-console-consumer.sh --zookeeper localhost:2181 --topic topic2 --from-beginning
 
//删除话题  需要server.properties中设置delete.topic.enable=true否则只是标记删除或者直接重启
kafka-topics.sh --delete --zookeeper localhost:2181 --topic topic1
 
//查看所有话题
kafka-topics.sh --list --zookeeper localhost:2181
 
原文地址:https://www.cnblogs.com/dummyly/p/10095732.html