首页IT科技kafka安装使用(kafka单机安装)

kafka安装使用(kafka单机安装)

时间2025-06-20 17:03:33分类IT科技浏览4195
导读:一、安装 kafka是由scala语言写成的,后面用Java重构了,但是不管怎样,都要编译到jvm虚拟机中执行。...

一            、安装

kafka是由scala语言写成的            ,后面用Java重构了                   ,但是不管怎样      ,都要编译到jvm虚拟机中执行            。

centos:yum install java-11-openjdk ubuntu:apt install default-jdk java -version

下载kafka

下载 wget https://archive.apache.org/dist/kafka/2.0.0/kafka_2.11-2.0.0.tgz 解压 tar -zxvf kafka_2.11-2.2.0.tgz cd kafka_2.11-2.2.0

简单配置下

vim config/server.properties #broker 的全局唯一编号            ,不能重复 broker.id=0 #能否删除 topic delete.topic.enable=true #处理网络请求的线程数量 num.network.threads=3 #用来处理磁盘 IO 的现成数量 num.io.threads=8 #发送套接字的缓冲区大小 socket.send.buffer.bytes=102400 #接收套接字的缓冲区大小 socket.receive.buffer.bytes=102400 #请求套接字的缓冲区大小 socket.request.max.bytes=104857600 #kafka 运行日志存放的路径 log.dirs=/opt/module/kafka/logs #topic 在当前 broker 上的分区个数 num.partitions=1 #用来恢复和清理 data 下数据的线程数量 num.recovery.threads.per.data.dir=1 #segment 文件保留的最长时间                   ,超时将被删除 log.retention.hours=168

二                   、启动

建议使用screen      ,开两个

启动zk【默认端口2181】 bin/zookeeper-server-start.sh config/zookeeper.properties 启动Kafka bin/kafka-server-start.sh config/server.properties

三      、测试使用

#创建单分区单副本的 topic demo: bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic demo #查看 topic 列表: bin/kafka-topics.sh --list --zookeeper localhost:2181 #发送消息【生产者】 bin/kafka-console-producer.sh --broker-list localhost:9092 --topic demo #接收消息并在终端打印: bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic demo --from-beginning #查看描述 topics 信息 bin/kafka-topics.sh --describe --zookeeper localhost:2181 --topic demo Topic:demo PartitionCount:1 ReplicationFactor:1 Configs: Topic: demo Partition: 0 Leader: 1 Replicas: 1 Isr: 1 第一行给出了所有分区的摘要      ,每个附加行给出了关于一个分区的信息                  。 由于我们只有一个分区                   ,所以只有一行       。 “Leader            ”: 是负责给定分区的所有读取和写入的节点      。 “Replicas                   ”: 是复制此分区日志的节点列表            ,无论它们是否是领导者      ,或者即使他们当前处于活动状态                  。 “Isr      ”: 是一组“同步            ”副本             。这是复制品列表的子集                   ,当前活着并被引导到领导者

四            、集群配置

Kafka 支持两种模式的集群搭建:可以在单机上运行多个 broker 实例来实现集群            ,也可在多台机器上搭建集群,下面介绍下如何实现单机多 broker 实例集群                   ,其实很简单                   ,只需要如下配置即可      。

单机多broker 集群配置利用单节点部署多个 broker                  。 不同的 broker 设置不同的 id,监听端口及日志目录             。 例如:

cp config/server.properties config/server-2.properties cp config/server.properties config/server-3.properties vim config/server-2.properties vim config/server-3.properties

修改 :

broker.id=2 listeners = PLAINTEXT://your.host.name:9093 log.dir=/data/kafka/logs-2

broker.id=3 listeners = PLAINTEXT://your.host.name:9094 log.dir=/data/kafka/logs-3

启动Kafka服务:(也可以用screen)

bin/kafka-server-start.sh config/server-2.properties & bin/kafka-server-start.sh config/server-3.properties &

至此            ,单机多broker实例的集群配置完毕。

多机多broker集群配置

分别在多个节点按上述方式安装 Kafka                   ,配置启动多个 Zookeeper 实例                  。

假设三台机器 IP 地址是 : 192.168.153.135      , 192.168.153.136            , 192.168.153.137

分别配置多个机器上的 Kafka 服务                   ,设置不同的 broker id      ,zookeeper.connect 设置如下:

vim config/server.properties

里面的 zookeeper.connect

修改为:

zookeeper.connect=192.168.153.135:2181,192.168.153.136:2181,192.168.153.137:2181

五                   、配置

外网访问

配置:server.properties 修改成内网地址 listeners=PLAINTEXT://:9092 改成外网地址 advertised.listeners=PLAINTEXT://主机IP:9092

创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!

展开全文READ MORE
流式视频格式是指可以边下载边播放吗(前端使用 fetch() 流式下载.mp4视频文件,跟踪进度)