当前位置:   article > 正文

centos7.9 安装使用kafka_centos7.9 安装kafka

centos7.9 安装kafka

安装kafka之前需要安装java8+以上版本

  1. yum install java-1.8.0-openjdk.x86_64
  2. yum install java-1.8.0-openjdk-devel.x86_64

安装kafka

软件下载地址:https://kafka.apache.org/downloads

我下载的是当前的最新版 3.4.0

单节点单代理配置

1. 解压

  1. tar -xzf kafka_2.13-3.4.0.tgz
  2. cd kafka_2.13-3.4.0

2. 启动zookeeper

bin/zookeeper-server-start.sh config/zookeeper.properties

3. 启动kafka Broker (kafka实例)需新打开一个终端窗口

bin/kafka-server-start.sh config/server.properties

4. 使用zookeeper终端查看kakfa节点等信息 需新打开一个终端窗口

  1. bin/zookeeper-shell.sh localhost:2181
  2. #输出
  3. OpenJDK 64-Bit Server VM warning: If the number of processors is expected to increase from one, then you should configure the number of parallel GC threads appropriately using -XX:ParallelGCThreads=N
  4. Connecting to localhost:2181
  5. Welcome to ZooKeeper!
  6. JLine support is disabled
  7. WATCHER::
  8. WatchedEvent state:SyncConnected type:None path:null
  9. #查看节点ids
  10. ls /
  11. ls /brokers/ids
  12. #输出
  13. [0]

5.  创建kafka主题 topic  

  • kafka实例默认端口9092
  • 此版本kafka需要如下命令创建,--zookeeper命令v2.8版本之后已废弃 localhost:9092为kakfa服务节点实例
bin/kafka-topics.sh --create --topic test_topic --bootstrap-server localhost:9092
  • 之前版本可能需要如下命令
bin/kafka-topics.sh --create --zookeeper  localhost:2181 --replication-factor 1  --partitions 1 --topic test_topic

6. 查看已创建的主题topic 列表

bin/kafka-topics.sh --list --bootstrap-server localhost:9092
  • 之前版本可能需要如下命令
bin/kafka-topics.sh --list --zookeeper localhost:2181

7. 启动生产者producer发送消息

在config / producer.properties 文件中指定默认生产者属性

bin/kafka-console-producer.sh --topic test_topic --bootstrap-server localhost:9092
  • 之前版本可能需要如下命令
  • --broker-list(代理列表) - 我们要发送邮件的代理列表。 在这种情况下,我们只有一个代理。 Config / server.properties 文件包含代理端口 ID,因为我们知道我们的代理正在侦听端口 9092,因此您可以直接指定它。
bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test_topic

8. 启动消费者consumer接收消息  需新打开一个终端窗口

在config / consumber.properties 文件中指定了缺省使用者属性

bin/kafka-console-consumer.sh --topic test_topic --from-beginning --bootstrap-server localhost:9092
  • 之前版本可能需要如下命令
bin/kafka-console-consumer.sh --zookeeper localhost:2181 —-topic test_topic --from-beginning

单节点多代理配置(后续更新)

--zookeeper 和 --bootstrap.server 区别

  • --zookeeper  : 是旧版Kafka的参数(v2.8以前)
  • --bootstrap.server : 新版Kafka的参数。Kafka开发团队重写了ZooKeeper的Quorum控制器代码并嵌入到Kafka中。所以从v2.8版本开始,Kafka不再依赖ZooKeeper。(bootstrap.servers参数,只在启动客户端连接Kafka服务时使用。并且,即使列表里面填了多个节点,只要有一个可用就行了。)
  • 旧版(<v2.2):

    kafka-topics.sh --zookeeper node1:2181,node2:2181,node3:2181/kafka --create --topic ..

    旧版用--zookeeper参数,主机名(或IP)和端口用ZooKeeper的2181,也就是server.properties文件中zookeeper.connect属性的配置值. ps:使用--zookeeper参数还需要指定kafka的Broker路径,注意不是在根目录下,是在/kafka路径下。

  • 新版(>v2.2):

    kafka-topics.sh --bootstrap-server node1:9092 --create --topic ..

    新版用--bootstrap-server参数,主机名(或IP)和端口用某个节点的即可,即主机名(或主机IP):9092。9092是Kafka的监听端口

其他参考:

https://www.w3cschool.cn/apache_kafka/apache_kafka_introduction.html

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/盐析白兔/article/detail/564801
推荐阅读
相关标签
  

闽ICP备14008679号