检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
本章节介绍在对消费消息实时性要求不高的场景中,如何优化消费者Polling,减少消息较少或者没有消息时的资源浪费。 Logstash对接Kafka生产消费消息 Kafka实例可以作为Logstash输入源,也可以作为Logstash输出源。本章节介绍Logstash如何对接Kafka实例生产消费消息。
到消息? Kafka消息堆积了怎么办? 消息超过老化时间,消息仍存在的原因 Kafka实例是否支持延迟消息? 如何查看堆积消息数? 为什么消息创建时间显示1970? 如何修改message.max.bytes参数? 为什么offset不连续?
被踢出消费组,此时可能会导致消费异常,需要重点关注。 消费者被服务端认为异常从而被踢出消费组的场景如下: 未能及时发送心跳请求。 消费者以设置的heartbeat.interval.ms为间隔向broker发送心跳请求,如果broker在session.timeout.ms时间内
单击Kafka实例的名称,进入实例的“基本信息”页面。 在“公网访问”后,单击,开启公网访问。在“弹性IP地址”中,为每个代理设置对应的弹性IP地址。 如果没有足够数量的弹性IP地址,参考如下步骤设置弹性IP地址。 单击“创建弹性IP”,跳转到“购买弹性公网IP”页面,购买弹性IP地址,具体操作请参考申请弹性公网IP。
在分布式消息服务Kafka版提供的原生Kafka SDK中,消费者可以自定义拉取消息的时长,如果需要长时间的拉取消息,只需要把poll(long)方法的参数设置合适的值即可。但是这样的长连接可能会对客户端和服务端造成一定的压力,特别是分区数较多且每个消费者开启多个线程的情况下。 如图1所示,Top
看已经预定义的标签,或者创建新的标签。 您也可以直接在“标签键”和“标签值”中设置标签。 当前每个Kafka实例最多支持设置20个不同标签,标签的命名规格,请参考配置Kafka实例标签章节。 描述 设置实例的描述信息,长度为0~1024个字符。 表7 Topic参数值 参数名称 单机实例默认参数值
Kafka实例Topic数量计算 Kafka实例对Topic分区数之和设置了上限,当达到上限之后,用户无法继续创建Topic。 所以,Topic数量和实例分区数上限、每个Topic的分区数有关,其中,每个Topic分区数可在创建Topic时设置,如图1,实例分区数上限参考表1。 图1 Topic的分区数
Kafka实例是否支持查看单个Topic占用磁盘空间? Topic是否支持ACL权限配置? 消息被消费后,没有删除,导致Kafka存储空间占满? 如何扩总分区? 修改自动创建Topic的配置,会触发重启吗? 消费者消费Topic失败,提示没有权限? 为什么实例中存在默认名为__trace
user/password:首次开启密文接入时设置的用户名与密码,或者创建用户时设置的用户名和密码。为了确保用户名和密码的安全性,建议对用户名和密码进行加密处理,使用时解密。 caFile:证书文件。如果Kafka安全协议设置为“SASL_SSL”,需要设置此参数。 security.pro
密文接入时设置的用户名与密码,或者创建用户时设置的用户名和密码。为了确保用户名和密码的安全性,建议对用户名和密码进行加密处理,使用时解密。 context.load_verify_locations:证书文件。如果Kafka安全协议设置为“SASL_SSL”,需要设置此参数。使用
backoff.ms=1000。 request.timeout.ms 30000 结合实际业务调整 设置一个请求最大等待时间(单位为ms),超过这个时间则会抛Timeout异常。 超时时间如果设置大一些,如127000(127秒),高并发的场景中,能减少发送失败的情况。 block.on
是否支持跨Region访问? Kafka实例是否支持跨VPC访问? Kafka实例是否支持不同的子网? Kafka是否支持Kerberos认证,如何开启认证? Kafka实例是否支持无密码访问? 开启公网访问后,在哪查看公网IP地址? Kafka支持服务端认证客户端吗? 连接开启SASL_SSL的Kafka实例时,ssl
进入“费用中心 > 续费管理”页面。 自定义查询条件。 可在“到期转按需项”页签查询已经设置到期转按需的资源。 可对“手动续费项”、“自动续费项”、“到期不续费项”页签的资源设置到期转按需的操作。 设置包年/包月资源到期后转按需。 单个资源到期转按需:选择需要更改计费模式的Kafka实例,单击操作列“更多
单击Kafka实例的名称,进入实例详情页面。 在左侧导航栏单击“流控管理 > 流控监控”,进入流控监控页面。 设置查询带宽使用量的参数。 表1 查询带宽使用量的参数说明 参数 说明 统计方式 设置带宽使用量的统计方式。 前n个:统计带宽使用量排名前x个的用户/客户端/Topic,x由您自行输入。
配置发送失败重试:retries=3 发送优化:对于时延敏感的信息,设置linger.ms=0。对于时延不敏感的信息,设置linger.ms在100~1000之间。 生产端的JVM内存要足够,避免内存不足导致发送阻塞。 时间戳设置为与当地时间一致,避免时间戳为未来时间导致消息无法老化。 尽
fetchers)过多,导致CPU繁忙。 分区设置不合理,所有的生产和消费都集中在某个节点上,导致CPU利用率高。 磁盘写满的原因 业务数据增长较快,已有的磁盘空间不能满足业务数据需要。 节点内磁盘使用率不均衡,生产的消息集中在某个分区,导致分区所在的磁盘写满。 Topic的数据老化时间设置过大,保存了过多的历史数据,容易导致磁盘写满。
图1 我的配额 您可以在“服务配额”页面,查看各项资源的总配额及使用情况。 如果当前配额不能满足业务要求,请参考后续操作,申请扩大配额。 如何申请扩大配额? 登录管理控制台。 在页面右上角,选择“资源 > 我的配额”。 系统进入“服务配额”页面。 单击“申请扩大配额”。 在“新建
单击Kafka实例名称,进入实例详情页面。 在左侧导航栏选择“消息查询”,进入消息列表页面。 参考表1,设置查询参数。 表1 查询消息参数说明 参数名称 说明 Topic名称 选择待查询消息的Topic名称。 分区 选择消息所在的分区。 如果未设置具体分区,查询结果显示Topic所有分区的消息。 查询方式 查询方式支持以下两种方式:
如果Topic已经设置了老化时间,此时“配置参数”中的log.retention.hours值将不对此Topic生效。仅在Topic中未设置老化时间时,“配置参数”中的log.retention.hours值才会对此Topic生效。例如:Topic01设置的老化时间为60小时,“配置参数”中的log
Boolean 是否为contoller节点。 version Boolean 服务端版本。 register_time Long broker注册时间,为unix时间戳格式。 is_health Boolean Kafka实例节点的连通性是否正常。 响应示例 { "cluster":