ELK下Kafka堆积问题分析

type
status
date
slug
summary
tags
category
icon
password
name
😀
项目用到了 ELK 日志系统,利用 kafka 进行缓冲,下面主要是日志无法读写或读写缓慢的问题分析

背景

项目主要分为 UAT 和 QA 两种环境,但是 UAT 环境下的 ES 配置资源有限并且不会进行扩容,时常会发生 CPU 和内存打爆的问题,从而导致 kafka 消费不过来,日志缓慢写入甚至无法写入。
notion image

解决办法

进入 UAT 环境下的 kafka 集群查看现在的消费情况
就可以看到下面分片信息,LAG 表示正在堆积的日志位置也即偏移量
因为Kafka 要求消费者组处于 Empty 或 Dead 状态 才能重置LAG偏移量,这个时候需要将 logstash 进行停止
然后在执行清除的命令
调整完再次查看就可以看到日志堆积已经全部清除了(LAG 为 0)

注意

此方式只用于目前堆积至ES无法写入,且配置无法继续升级的情况,这样清理会导致日志丢失,在资源可以继续扩充的情况下,还是老老实实对 ES 进行升配。
 
Loading...

© Dreamin 2021-2025