检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
连接问题 选择和配置安全组 Kafka实例是否支持公网访问? Kafka实例的连接地址默认有多少个? 是否支持跨Region访问? Kafka实例是否支持跨VPC访问? Kafka实例是否支持不同的子网? Kafka是否支持Kerberos认证,如何开启认证? Kafka实例是否支持无密码访问?
Kafka连接问题排查和解决 概述 本章节主要描述Kafka连接问题的排查和解决。 问题分类 当您发现与Kafka实例连接出现异常时,可以根据本文的内容,从以下几个方面进行排查。 检查网络 检查Consumer和Producer的配置 客户端连接问题-Java客户端 客户端连接问题-Go客户端
Topic和分区问题 Kafka实例的Topic数量是否有限制? 为什么限制Topic的总分区数? Kafka支持减少分区数吗? Kafka实例创建Topic失败 Kafka实例支持批量导入Topic功能么?或者是自动生成Topic功能? Kafka实例是否支持查看单个Topic占用磁盘空间?
t)时,当客户端重启时,偏移量重置后可能从最小位点开始重复消费所有消息。 消费者同时订阅多个Topic时,部分分区可能无法消费到消息。 解决方法 建议您使用Confluent-Kafka-go作为Kafka客户端库。 以下为您提供常用Golang客户端的对比,具体参见表1。 表1
消费者访问权限 处理方法: 如果业务要求所有消费者在同一个消费组内,即group.id相同,解决方法:为所有消费者授权相同的Topic访问权限。 如果消费者不需要在同一个消费组内,解决方法:修改group.id,让每个消费者单独在一个消费组内。 父主题: Topic和分区问题
问题现象:扩容失败,提示底层ECS/EVS资源不足,但在ECS控制台可以购买对应规格的ECS。 可能原因:底层资源配额与控制台界面显示的可用规格配额存在差异。 解决方法:联系客服增加配额数。 父主题: 实例规格变更问题
消费组问题 Kafka实例是否需要创建消费组、生产者和消费者? 如果消息组中没有在线的消费者(如empty状态),是否14天后会自动被删除? 为什么删除消费组不生效? 实例消费正常,为什么看不到消费者? Kafka可以删除消费组下不用的Topic吗?
可能原因1:消息已被老化。 解决方法:修改老化时间。 可能原因2:消息的createTime时间戳不对。 Console页面是根据时间查询的,所以查不到。时间戳是由客户端生成,不同客户端有不同的处理策略,有的客户端默认值会是0或者-1,则查询不到消息。 解决方法:检查客户端消息的createTime设置是否正确。
监控告警问题 云监控无法展示Kafka监控数据 Kafka监控显示消息堆积数跟实例里的消息数不一致? Kafka的消费组删除了,怎么监控页面还可以看到这个消费组? 为什么磁盘读/写流量、磁盘平均读/写操作耗时和CPU使用率出现明显波动? 为什么JVM堆内存使用率出现明显波动? 生产消息数不为0,为什么生产速率为0?
#”。 Kafka实例中没有创建Topic。 解决方法如下: 删除带特殊字符的Topic。 创建Topic。 消费组监控数据无法展示,可能原因如下: 消费组名称开头包含特殊字符,例如#号“#”。 此消费组从未有消费者连接。 解决方法如下: 删除带特殊字符的消费组。 使用此消费组消费消息。
一轮的Rebalance。 解决方法/排查思路 场景一:未能及时发送心跳请求 排查思路:如果是Java语言客户端,建议排查GC日志是否存在长时间FullGC的情况。该场景可能会导致心跳线程阻塞,服务端检查心跳失败,进入Rebalance状态。 解决方法:如果存在长时间FullGC
登录到Kafka Manager页面,为什么获取不到节点信息? 问题现象:正常登录Kafka Manager页面,但是页面无法显示节点信息,如下所示: 问题原因:这是Kafka开源问题,需要联系客服,重启Kafka Manager。 父主题: Kafka Manager问题
Kafka Manager问题 登录Kafka Manager的账号是否可以设置为只读账号? 登录到Kafka Manager页面,为什么获取不到节点信息? Yikes! Insufficient partition balance when creating topic : p
消息问题 Kafka生产消息的最大长度是多少? 为什么Kafka实例常常发生Rebalance(重平衡),导致消息拉取失败? 为什么Console页面上,消息查询查不到消息? Kafka消息堆积了怎么办? 消息超过老化时间,消息仍存在的原因 Kafka实例是否支持延迟消息? 如何查看堆积消息数?
Kafka实例是否支持跨VPC访问? Kafka实例支持跨VPC访问,您可以通过以下任意一个方式实现跨VPC访问: 创建VPC对等连接,将两个VPC的网络打通,实现跨VPC访问。具体步骤请参考VPC对等连接说明。 利用VPC终端节点在不同VPC间建立跨VPC的连接通道,实现Kaf
此时生产客户端的元数据缓存中保存的分区Leader为旧分区Leader ID,仍然会向旧分区Leader发送消息,导致生产消息失败。 解决方法:在生产客户端配置重试机制。建议设置retries=Integer.MAX_VALUE 父主题: 实例规格变更问题
实例问题 为什么可用区不能选择2个? 创建实例时为什么无法查看子网和安全组等信息? 如何选择Kafka实例的存储空间? Kafka实例的超高IO和高IO如何选择? 如何选择Kafka实例存储容量阈值策略? Kafka服务端支持版本是多少? Kafka实例的ZK地址是什么? 创建的Kafka实例是集群模式么?
连接实例 配置Kafka网络连接 配置Kafka访问控制 配置Kafka客户端 使用客户端连接Kafka(关闭SASL) 使用客户端连接Kafka(开启SASL) 使用控制台连接Kafka
Kafka实例是否支持修改访问端口? Kafka实例的访问端口固定,不支持修改。 如果是访问未开启SASL的Kafka实例 支持的访问方式如下:同一VPC内访问、公网访问、跨VPC访问和DNAT访问。 同一VPC内使用IPv4地址访问,访问端口为9092。 同一VPC内使用IPv6地址访问,访问端口为9192。
Kafka实例是否支持公网访问? Kafka实例支持公网访问。使用公网访问Kafka实例的具体操作,请参考连接实例。 父主题: 连接问题