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

麒麟 + 飞腾 + 达梦:信创环境部署可观测平台实录

记录炬鲸 OBSERVE 在国产化环境(麒麟/统信操作系统、飞腾/鲲鹏/海光芯片、达梦/人大金仓数据库)的适配过程,给出具体命令、兼容性验证步骤和踩坑清单。

为什么要单独做信创适配

很多人以为国产化只是换个操作系统,实际是四层同时换:芯片(x86 → ARM)、操作系统(CentOS → 麒麟/统信)、数据库(MySQL → 达梦/人大金仓)、中间件。每一层都有微妙的差异:ARM 的字节序、麒麟的 glibc 版本、达梦的 SQL 方言。可观测平台本身要吞吐海量日志和指标,对 CPU 指令和存储引擎更敏感,不是“能装上”就行。

芯片与操作系统的适配

飞腾(ARM64)和海光(x86)我们都做了原生编译,在麒麟 V10 SP2 和统信 UOS 20 上通过兼容性测试。部署上唯一要注意的是 glibc 版本:麒麟 V10 默认 glibc 2.28,如果采集器是用更高版本 glibc 编译的,会报 GLIBC_2.34 not found。解决办法是静态编译或用 musl 打包,别指望运行时升级 glibc。

# 检查 glibc 版本
ldd --version | head -1
# 检查 CPU 架构
uname -m   # 应输出 aarch64 或 x86_64

数据库适配:达梦与人大金仓

OBSERVE 的元数据和配置存储默认 MySQL,信创环境我们提供达梦 DM8 和人大金仓 KingbaseES V8 的适配。达梦兼容 Oracle 方言,有两处差异要处理:

  1. 分页语法:达梦支持 Oracle 风格分页,和 MySQL 的 LIMIT offset, count 不完全一致,ORM 层要按方言自动切换。
  2. 标识符大小写:达梦默认把未加引号的标识符转大写,建表语句要显式加引号或统一小写,否则查询会报“表不存在”。

迁移用达梦自带的 DTS 工具从 MySQL 全量 + 增量同步,先迁结构再迁数据,最后切读写。

采集端在国产环境的落地

采集器支持麒麟/统信上的 systemd 部署,日志采集兼容 rsyslog、journald 和国产中间件(东方通 TongWeb、宝兰德 BES、金蝶 Apusic)的输出格式。这些中间件的日志格式和 Tomcat 接近但不完全相同,采集配置里要单独写正则,不能直接复用 Tomcat 的模板。

验证清单

部署完按下面顺序验收,别跳步:

  1. 采集器 CPU 架构与操作系统匹配,systemctl status 正常。
  2. 达梦/金仓连接池连通,压测下无连接泄漏。
  3. 日志、指标、链路三类数据在信创浏览器(奇安信/360 信创版)里能正常渲染——信创浏览器内核旧,前端要降级兼容。
  4. 断网演练:数据库短暂不可用时,采集端能本地缓存、恢复后补传,不丢数据。

建议

信创迁移别一步到位。先并行跑两套环境(x86 + 信创),同一批日志双写,对比结果一致性,稳定一个月再切换。数据库方言和浏览器兼容是隐藏成本最高的两块,提前做 POC。