首页
/ ntopng在ClickHouse集群环境下的MITRE表缺失问题分析

ntopng在ClickHouse集群环境下的MITRE表缺失问题分析

2025-06-02 03:30:46作者:庞队千Virginia

问题背景
ntopng作为一款网络流量分析工具,在6.2.240813版本中出现了与ClickHouse数据库集群的兼容性问题。当运行在RHEL 8.10系统上时,系统日志显示无法向mitre_table_info表插入数据,原因是该表在集群环境中未被正确创建。

技术细节

  1. 架构差异

    • 标准ClickHouse环境使用常规建表语句
    • 集群环境需要特殊的分布式表声明方式(使用ReplicatedMergeTree引擎和ON CLUSTER语法)
  2. 根本原因
    项目中的两个SQL模式文件存在差异:

    • 非集群模式(db_schema_clickhouse.sql)包含mitre_table_info建表语句
    • 集群模式(db_schema_clickhouse_cluster.sql)缺少该表定义
  3. 影响范围

    • 所有使用ClickHouse集群部署的用户
    • 涉及MITRE ATT&CK框架相关的安全告警功能
    • 表现为日志中持续出现"Table doesn't exist"错误

解决方案
开发团队已通过提交5768dd8修复该问题,主要变更包括:

  1. 在集群模式SQL文件中添加mitre_table_info表定义
  2. 确保表结构与非集群模式保持一致
  3. 使用适合集群环境的表引擎声明方式

最佳实践建议

  1. 升级到包含修复的版本

  2. 对于自行部署集群的用户,可手动执行以下操作:

    • 检查现有表结构
    • 必要时手动创建缺失表
    • 验证数据插入功能
  3. 定期检查ntopng与数据库的兼容性

  4. 关注日志中的数据库错误信息

技术价值
该案例展示了分布式数据库环境中模式管理的重要性,特别是在安全分析场景下,确保所有组件的数据结构一致性对系统功能完整性至关重要。同时也体现了开源项目通过社区反馈快速响应和改进的优势。

登录后查看全文
热门项目推荐