gpt4 book ai didi

apache-kafka - 如何检查Kafka集群中使用的增量获取 session 缓存槽的实际数量?

转载 作者:行者123 更新时间:2023-12-03 21:16:56 24 4
gpt4 key购买 nike

我正在阅读这个问题 Kafka: Continuously getting FETCH_SESSION_ID_NOT_FOUND ,我正在尝试应用 Hrishikesh Mishra 建议的解决方案,因为我们也面临类似的问题,所以我将代理设置 max.incremental.fetch.session.cache.slots 增加到 2000,默认为 1000。但现在我想知道如何监控已使用的增量获取 session 缓存槽的实际数量,在 prometheus 中我看到 kafka_server_fetchsessioncache_numincrementalfetchpartitionscached 指标,promql 查询在三个代理中的每一个上显示的数量现在明显超过 2000,即 2703、2655 和 2054,所以我如果我查看正确的指标,我会感到困惑。还有 kafka_server_fetchsessioncache_incrementalfetchsessionevictions_total 在所有代理上显示零。

好的,还有 kafka_server_fetchsessioncache_numincrementalfetchsessions 在三个代理中的每一个上显示 cca 500,因此总共 cca 1500,介于 1000 和 2000 之间,所以也许该指标是由 max.incremental.fetch.session 控制的指标。缓存插槽?

其实截至目前,每个broker上已经有700多个增量fetch session,总共2100多个,所以,很明显,2000的限制适用于每个broker,这样整个集群的数量就可以了到 6000。现在每个 broker 上的数量低于 1000 的原因是因为在配置更改后重新启动了 broker。

问题是如何在个人消费者层面检查这种分配。这样的查询:

count by (__name__) ({__name__=~".*fetchsession.*"})

仅返回此表:
Element                                                             Value
kafka_server_fetchsessioncache_incrementalfetchsessionevictions_total{} 3
kafka_server_fetchsessioncache_numincrementalfetchpartitionscached{} 3
kafka_server_fetchsessioncache_numincrementalfetchsessions{} 3

最佳答案

名为 kafka.server:type=FetchSessionCache,name=NumIncrementalFetchSessions 的指标是监控 FetchSessions 数量的正确方法。

大小可通过 max.incremental.fetch.session.cache.slots 配置.请注意,此设置适用于每个代理,因此每个代理最多可以缓存 max.incremental.fetch.session.cache.slots session 。

您看到的另一个指标,kafka.server:type=FetchSessionCache,name=NumIncrementalFetchPartitionsCached , 是所有 FetchSession 中使用的分区总数。许多 FetchSession 将使用多个分区,因此预计会看到更多的分区。

正如您所说,您看到的 FetchSessions 数量很少可能是由于重新启动。

关于apache-kafka - 如何检查Kafka集群中使用的增量获取 session 缓存槽的实际数量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59630876/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com