问题标签 [kafka-cluster]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
apache-kafka - 当 min.compaction.lag.ms 大于 log.cleaner.max.compaction.lag.ms 时会发生什么?
我使用的是 Kafka 2.2.0,因此max.compaction.lag.ms
尚不提供按主题配置的选项。
在全球范围内,我有log.cleaner.max.compaction.lag.ms=86400000
(一天):
对于主题__consumer_offsets
,我想将压缩至少推迟三天,以保留一些短期历史。
我可以设置min.compaction.lag.ms
为259200000
(三天),但似乎与较小的log.cleaner.max.compaction.lag.ms
. 如果我仍然这样做会发生什么?
apache-kafka - 镜像重新分区主题的大小不断增加
我们正在使用 MirrorMaker 来备份主题。我们注意到,与源集群相比,Kafka Streams 应用程序创建的重新分区主题在目标集群中的大小似乎不断增加。根据以下文档,这是有道理的org.apache.kafka.streams.kstream.KStream#repartition()
:
换句话说,由于我们没有在目标集群中运行 Kafka Streams 应用程序,因此不会发生自动清除。
我们是否正确理解这一点?我们如何确保在备份源集群时不会丢失数据,并且目标集群的大小不会超过源集群的大小?
编辑 2021 年 12 月 1 日:我们仍然有这个问题。MirrorMaker 是否是正确的工具选择?我们是否需要考虑 Replicator 或 Cluster Linking?
java - 单机搭建kafka集群及配置
尝试按照一些在线教程在单台机器上设置 kafka 集群并编辑 config/server.properties 为一个代理选择端口 9091,为另一个使用 9092 的代理选择端口,kafka 代理的相应动物园管理员为 2180 和 2181(有启动动物园管理员没有问题)但连接到 2180 的代理行为不同且无法启动,日志如下
我们可以看到advertising listeners指向9091,但是在上面的日志中我们仍然有** port = 9092 **,当所有删除到端口9092的东西都在server.properties下改为9091时,为什么它认为9092是端口(这导致在端口已在使用中,因为其他代理正在使用 9092)请让我知道问题以及如何正确配置集群。提前致谢。
在引导服务器配置中,两个 url 都以逗号分隔
spring - 以集群模式运行 Spring Cloud Data Flow
是否有可能在集群模式下运行 Spring Cloud Data Flow?我在 SCDF 上运行了许多应用程序,我想确保 SCDF 始终像 kafka 集群一样正常运行。
apache-kafka - 如果一个 kafka 代理出现故障,Springboot kafka 流应用程序失败
我们正在使用 springboot 应用程序来开发 kafka 流应用程序。到目前为止,我们只使用单一经纪人,所以我们没有遇到任何问题
但是一周前我们创建了集群模式,包含 3 个 Zookeeper 和 3 个 kafka 代理,以实现更高的可用性
我们像下面这样配置我们的应用程序。
领导者 1 领导者 2 领导者 3
所以我们正在测试下面的服务器停机行为是结果
预期行为:它必须通过消耗和产生数据来连续运行而没有任何挣扎
实际行为:如果我们关闭任何一台服务器,它将抛出异常,并且在应用程序停止一段时间后代理不可用
在分析原因时,我们发现消费主题具有领导者 1,而产生数据的主题具有领导者 2,所以当我停止领导者 1 时,我们认为它会更改为下一个领导者,但事实并非如此?
这是默认行为还是我们做错了什么?
谁能建议我如何克服这个问题?
azure - AZ deploy ARM 模板返回异常
在使用 ARM 模板从 AZ 命令行成功部署 KafkaCluster 数周后,最近它不再工作,ARM template
并且parameter
. 运行后AZ deployment command
它会抛出异常。
运行命令后,Kafka 的模板正在打印正确的参数,在日志末尾有一些异常:
这里有什么问题?欢迎任何建议。
apache-kafka - 设置 Kafka 集群时遇到问题
我是 Kafka 的新手,我正在尝试设置一个 localhost 集群。
问题:完成设置后,我无法确认我的消息是否已生成或使用它们。
我所做的步骤:
第 1 步 - 动物园管理员
我确实zookeeper
使用本地 telnet 连接和ruok
命令(在默认端口 2181 上)安装并验证它已启动并运行。
第 2 步 - 配置
我有 3 个文件夹,每个文件夹都包含我从kafka 官方快速入门下载的 kafka 。在每个文件夹中,我对本地进行了config/server.properties
如下修改:
我已经设置了broker.id=1
,然后2
和3
其他人
我已经设置了listeners=PLAINTEXT://:9093
,然后9094
和 9095
其他人
我设置logs.dir=
了一个本地日志目录,其中每个代理都有一个子目录
第 3 步 - 启动
我已经使用bin/kafka-server-start.sh config/server.properties
3 个 kafka 文件夹中的命令启动了所有 3 台服务器,每台服务器都使用它自己的本地配置
第 4 步 - 主题
我使用以下命令从三个 kafka 文件夹之一创建了一个共享主题:
bin/kafka-topics.sh --create --topic topic-1 --zookeeper localhost:2181 --partitions 3 --replication-factor 3
第 5 步 - 测试
好的,现在要测试一切是否正常运行,我尝试了两种方法第一种是使用 CLI 并手动添加消息,从任何 kafkabin
文件夹中,我使用了这两个命令:
kafka-console-producer.sh --broker-list localhost:9093,localhost:9094,localhost:9095 –topic topic-1
kafka-console-consumer.sh --bootstrap-server localhost:9093 --topic topic-1 --from-beginning
但是,当添加消息时,消费者端似乎什么都没有发生。关闭它时,我有Processed a total of 0 messages
消息。
我还尝试使用该kafkajs
库与消费者和生产者一起制作“hello world”类型脚本,但出现此错误:
{"level":"ERROR","timestamp":"2021-05-10T09:09:57.464Z","logger":"kafkajs","message":"[Connection] Response GroupCoordinator(key: 10, version: 2)","broker":"kevin-UX390UAK:9093","clientId":"my-app","error":"The group coordinator is not available","correlationId":0,"size":55}
任何想法我做错了什么?非常感谢 !凯夫!
node.js - kafkajs 库无法在远程 kafka 集群中运行
我正在使用 Kafkajs 库编写一个 Kafka 生产者,并尝试将下面的代码与 Kafka 远程服务器连接起来。
下面是我的节点 js 代码。
但我收到以下错误。
{"level":"ERROR","timestamp":"2021-05-12T13:33:23.179Z","logger":"kafkajs","message":"[BrokerPool] 连接种子代理失败,正在尝试列表中的另一个代理:连接失败:端口应 >= 0 且 < 65536。收到 NaN。","retryCount":4,"retryTime":3592} {"level":"ERROR","timestamp": "2021-05-12T13:33:26.789Z","logger":"kafkajs","message":"[BrokerPool] 连接种子代理失败,尝试列表中的另一个代理:连接失败:端口应该是>= 0 且 < 65536。收到 NaN。","retryCount":5,"retryTime":7822}
我也更改了 server.properties 代码,请在下面找到代码详细信息以供参考。
listeners=PLAINTEXT://0.0.0.0:9092 advertised.listeners=PLAINTEXT://192.168.31.11:9092 listener.security.protocol.map=PLAINTEXT:PLAINTEXT,SSL:SSL,SASL_PLAINTEXT:SASL_PLAINTEXT,SASL_SSL:SASL_SSL num.network.threads=3
当我在同一台服务器上的节点和 Kafka 等一台服务器上运行所有代码时,我没有收到任何错误,即使我尝试使用这样的 ngrok -> ngrok HTTP 9092但我得到了与上面分享的相同的错误。
我怀疑有没有办法从互联网上的任何地方连接我们的 Kafka 代理。
请求您帮助我解决此问题。
提前致谢。
apache-kafka - 本地 kafka 集群“__consumer_offsets”领导不可用
我已经按照这个博客设置了一个本地 kafka 集群,但我无法让它工作。当我将 CLI 与以下命令一起使用时,我无法使用这些消息,因为它们没有出现。
./kafka-console-consumer.sh --bootstrap-server localhost:9093 --from-beginning --topic topic-1
./kafka-console-producer.sh --broker-list localhost:9093 --topic topic-1
经过一些故障排除后,我发现kafkacat
所有人__consumer_offsets
都想念他们的领导者。我认为这可能是我的问题。
并知道可能导致这种情况的原因是什么?非常感谢 !
凯夫
apache-kafka - 无法将数据写入kafka集群
我用 docker-compose 部署了一个三节点的 kafka 集群。
这是我的文件
我使用以下命令创建一个主题:
创作没有问题。但是,当尝试使用以下命令将数据写入主题时:
出现以下错误:
还尝试通过--broker-list标志列出经纪人,但结果是一样的。错误的原因可能是什么?