Linux解压安装Kafka
Kafka依赖Zookeeper
Kafka依赖Zookeeper,可以单独安装Zookeeper,也可以直接启动Kafka包里自带的Zookeeper
Kafka 安装
cd /data/software
#下载
wget http://mirror.bit.edu.cn/apache/kafka/2.0.1/kafka_2.11-2.0.1.tgz
wget http://mirror.bit.edu.cn/apache/kafka/2.1.1/kafka_2.11-2.1.1.tgz
tar -zxvf kafka_2.11-2.0.1.tgz
mv kafka_2.11-2.0.1 /data/apps/kafka_2.11-2.0.1
cd /data/apps/kafka_2.11-2.0.1/
修改配置
vim config/server.properties
listeners=PLAINTEXT://192.168.1.53:9092
注意:
该属性在config/server.properties中的描述如下:
翻译过来就是hostname和端口是用来建议给生产者和消费者使用的,如果没有设置,将会使用listeners的配置,如果listeners也没有配置,将使用java.net.InetAddress.getCanonicalHostName()来获取这个hostname和port,对于ipv4,基本就是localhost了。如果有设置hostname会去用hostname去连接,就会报错
advertised.listeners=PLAINTEXT://192.168.1.53:9092
delete.topic.enable=true
如果没有设置 delete.topic.enable=true,则调用kafka 的delete命令无法真正将topic删除,而是显示(marked for deletion)
启动
nohup bin/kafka-server-start.sh config/server.properties >> log.file 2>&1 &
Kafka 常用命令使用
bin/kafka-topics.sh --list --zookeeper localhost:2181 列表
bin/kafka-topics.sh --list --zookeeper 192.168.1.53:2181
bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 2 --topic inTopic 创建topic
单机版 只能创建一个分区replication-factor 1,不然报错提示 Replication factor: 3 larger than available brokers: 1
可以多个副本partitions 2
bin/kafka-topics.sh --zookeeper 192.168.1.53:2181 --describe --topic inTopic 查看topic描述
bin/kafka-console-producer.sh --broker-list 192.168.1.53:9092 --topic my-topic 生产数据 输入数据
bin/kafka-console-consumer.sh --bootstrap-server 192.168.1.53:9092 --topic my-topic --from-beginning 消费数据
bin/kafka-topics.sh --delete --zookeeper localhost:2181 --topic my-topic 删除topic