H__D  

  Apache Kafka是分布式发布-订阅消息系统。它最初由LinkedIn公司开发,之后成为Apache项目的一部分。Kafka是一种快速、可扩展的、设计内在就是分布式的,分区的和可复制的提交日志服务。

  官网:http://kafka.apache.org

  官网下载地址:http://kafka.apache.org/downloads

Kafka安装

  环境系统:CentOS 7.4

  kafka版本:2.6.0

  1、下载kafka,官网下载地址:http://kafka.apache.org/downloads

    

    由上可以看出,Kafka使用Scala写的,且Scala版本为2.13

  2、解压下载的安装压缩包,放到对应的目录中

    命令:tar -zxvf kafka_2.13-2.6.0.tgz

    目录结构如下:

    

  3、Kafka使用ZooKeeper,所以您需要先启动一个ZooKeeper服务器。如果没有安装。您可以使用随Kafka一起打包的便捷脚本来获取一个快速但是比较粗糙的单节点ZooKeeper实例。

     或者参考:【ZooKeeper】ZooKeeper安装及简单操作

    启动自带ZooKeeper命令:./bin/zookeeper-server-start.sh config/zookeeper.properties

    后台启动ZooKeeper命令:nohup ./bin/zookeeper-server-start.sh config/zookeeper.properties &

  4、Kafka基本配置

    Kafka在config目录下提供了一个基本的配置文件。为了保证可以远程访问Kafka,我们需要修改两处配置。

    打开config/server.properties文件,在很靠前的位置有listeners和 advertised.listeners两处配置的注释,去掉这两个注释,并且根据当前服务器的IP修改如下:

    命令:vim config/server.properties

#修改这几项
#日志存放路径
log.dirs=/data/soft/kafka_2.13-2.6.0/data 

# PLAINTEXT表示协议,监听地址,,0.0.0.0来绑定所有网卡
listeners=PLAINTEXT://127.0.0.1:9092 
# PLAINTEXT表示协议,对外公布地址,外网IP
advertised.listeners=PLAINTEXT://192.168.0.8:9092

#IP填zookeeper安装地址
zookeeper.connect=127.0.0.1:2181  #IP填zookeeper安装地址 

 

  5、启动Kafka

    前台启动命令:./bin/kafka-server-start.sh config/server.properties

    后台启动命令:./bin/kafka-server-start.sh -daemon config/server.properties

  6、操作topic

    创建名称为test的topic

    命令:./bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test

    查看当前服务器所有的topic

    命令:./bin/kafka-topics.sh --list --zookeeper localhost:2181

    

    查看某一个topic

    命令:./bin/kafka-topics.sh --zookeeper localhost:2181 --describe --topic test

    删除topic

    命令:./bin/kafka-topics.sh --zookeeper localhost:2181 --delete --topic test

  7、控制台测试

    a、启动一个控制台的生产者,发送消息

    命令:./bin/kafka-console-producer.sh --broker-list 127.0.0.1:9092 --topic test 

    效果如下:    

    

    b、启动一个控制台的消费者,消费消息

    命令:./bin/kafka-console-consumer.sh --bootstrap-server 127.0.0.1:9092 --topic test --from-beginning

    效果如下:

    


 

posted on 2020-11-18 15:53  H__D  阅读(377)  评论(0编辑  收藏  举报