更新时间:2024-10-25 GMT+08:00

采集节点或采集通道故障

问题现象

采集节点状态和采集通道健康状态采用isap-agent定时上报机制,虽然存在一定的延迟(预计一分钟),但是在采集通道下发3分钟后,采集节点和采集通道的“健康状态”依然显示为“故障”,并且该服务器的CPU使用率或内存使用率即将达到100%。

图1 采集节点故障
图2 采集通道故障

可能原因

用户配置的连接器或解析器在语法或者语义上存在错误,导致采集器无法正常运行,不断重启导致CPU、内存被占满。

问题定位

  1. 远程登录采集节点所在的ECS。
    • 您可以登录弹性云服务器控制台,在“弹性云服务器”列表中,单击“远程登录”登录主机,详细操作请参见在云服务器控制台上登录主机
    • 如果您的主机已经绑定了弹性IP,您也可以使用远程管理工具(例如:PuTTY、Xshell等)登录主机,并使用root账号在主机中安装组件控制器。
  2. 执行如下命令,命令查看当前系统的运行状态:

    top

    当显示如下图所示时,则表示ECS中Java进程占用了大量CPU资源。

    图3 运行状态
  3. 执行如下命令,查看采集器运行日志:

    docker logs isap-logstash -f

    通过查看日志,定位到当前采集通道filter部分(解析器)配置有误,如下图所示:

    图4 采集器运行日志
  4. 执行以下命令,进入采集通道配置文件所在路径。

    cd /opt/cloud/logstash/config/files

  5. 执行以下命令,查看filter部分是否存在异常。

    cat 配置文件名

    当出现如下图所示内容时,则表示当前filter部分存在异常:

    图5 filter部分存在异常

处理步骤

  1. 登录安全云脑管理控制台,并进入目标工作空间。
  2. 在左侧导航栏选择设置 > 采集管理,进入采集管理页面后,选择“解析器管理”页签,进入解析器管理页面。
  3. 单击目标解析器所在行操作列的“编辑”,并在编辑页面中,删除错误配置信息,修改为正确的配置信息。

    图6 问题解析器配置
    图7 修改解析器配置

  4. 单击“确定”
  5. 编辑完成后,在上方选择“采集通道管理”页签,并单击目标采集通道操作列的“重启”,重启采集通道。

    图8 重启采集通道

  6. 检查采集通道和采集节点状态。

    • 重启完成后,在“采集通道管理”页面中,检查目标采集通道的健康状态。
      图9 采集通道健康状态
    • 在上方选择“采集节点管理”页签,页面,检查目标采集节点的健康状态。
      图10 采集节点健康状态

    当采集通道和采集节点的“健康状态”均显示为“正常”时,则表示问题处理成功。