← 返回文章列表
信创 4 分钟阅读 炬鲸团队

炬鲸 OBSERVE 全栈信创部署:从龙芯到达梦的兼容实测

记录炬鲸 OBSERVE 在龙芯 3A5000、鲲鹏 920、统信/麒麟系统及达梦、人大金仓数据库上的部署验证结果与性能数据,附配置要点。

为什么要做信创适配

金融、政务、能源行业的采购清单里,"全栈国产化"已经不只是加分项,而是硬性门槛。日志和监控系统处在基础设施最底层,一旦它不能跑在国产 CPU 和操作系统上,上层应用再"信创"也没用——你连排障的工具都没有。

炬鲸 OBSERVE 从 2024 年起把信创适配作为独立版本线维护,每个季度做一轮全矩阵回归。下面记录最近一轮的实测结果。

硬件与系统兼容矩阵

本轮实测覆盖四类 CPU 和三类操作系统:

| CPU | 架构 | 操作系统 | 结果 |
|-----|------|---------|------|
| 龙芯 3A5000 | LoongArch | 统信 UOS V20 | ✅ 通过 |
| 鲲鹏 920 | ARM64 | 麒麟 V10 SP3 | ✅ 通过 |
| 海光 C86 | x86_64 | 统信 UOS V20 | ✅ 通过 |
| 飞腾 S2500 | ARM64 | 麒麟 V10 SP3 | ✅ 通过 |

单机部署形态(日志采集 + 检索 + 告警一体)在四类硬件上均通过 72 小时稳定性测试,内存占用无泄漏增长。

数据库适配:达梦与金仓

检索层默认用自研存储引擎,但元数据(用户、告警规则、Dashboard 配置)需要关系库。本轮验证了达梦 DM8 和人大金仓 KingbaseES V8:

  1. 达梦 DM8:把连接驱动换成 dm 驱动,compatibleMode=ORACLE 关闭,字符集统一 UTF-8。遇到的最大坑是达梦默认大小写不敏感,建表后字段名会被转成大写,查询要用双引号包字段。
  2. 金仓 KingbaseES V8:兼容 PostgreSQL 模式直接可用,只需把驱动换成 kingbase8,连接串里 compatibleLevel=PG。

两者都建议把元数据库单独放,不要和检索数据混在一个库,避免 I/O 互相争抢。

性能实测

在鲲鹏 920(64 核 256G)单节点上,写入侧稳定在每秒 18 万条日志,检索侧 10 亿条日志带过滤查询 P99 延迟 1.2 秒。相比 x86 平台约有 10% 到 15% 的差距,来源主要是 ARM 上的 JDK 分支预测和 GC 表现,通过加大堆和调整 G1 参数可基本抹平。

部署要点

  • 国产系统默认关闭了部分内核参数,部署前务必确认 vm.max_map_count 和文件句柄数 ulimit -n 足够大,否则写入会报 too many open files。
  • 时间同步用 chrony 指向内网 NTP,不要依赖公网,内网信创环境常常是物理隔离的。
  • 优先用 RPM/DEB 包安装而不是容器,部分信创环境的容器运行时版本较旧。
  • 做等保/密评前,把审计日志和操作日志的留存策略提前配好,实测能省不少整改工作量。