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

信创环境部署实战:麒麟 V10 + ARM 上的炬鲸 OBSERVE

在银河麒麟 V10(飞腾/鲲鹏 aarch64)加达梦 DM8/人大金仓环境部署 OBSERVE 的完整步骤,含数据库初始化、兼容性坑与压测数据。

环境清单

  • 操作系统:银河麒麟 V10 SP1 / SP2(服务器版)
  • CPU:飞腾 FT-2000+ / 鲲鹏 920(aarch64)
  • 数据库:达梦 DM8 或 人大金仓 KingbaseES V8
  • OBSERVE 服务端 + 采集 Agent(均提供 arm64 二进制)

为什么单独讲 ARM 和麒麟

信创环境的难点不在"能不能跑",而在依赖链。glibc 版本、系统库、数据库驱动、编译工具链都可能和 x86 有差异。OBSERVE 服务端用 Go 编译,直接提供 aarch64 静态二进制,不依赖运行时,拷过去就能跑;采集 Agent 同样提供 arm64 版本,避免现场编译。这也意味着部署时不需要在目标机器上装 GCC、Go 工具链,只需要一个能解压 tar 包的环境。

部署步骤

  1. 解压安装包,把二进制放到 /usr/local/jjhub/,并创建运行用户 useradd -r -s /sbin/nologin jjhub
  2. 初始化数据库:达梦和人大金仓都提供 JDBC 驱动,OBSERVE 的初始化脚本 init-dm.sql / init-kingbase.sql 可直接导入;
  3. 修改配置文件 config.yaml,指定数据库连接串:
database:
  type: dm8
  host: 127.0.0.1
  port: 5236
  user: jjhub
  password: "******"
  1. 注册 systemd 服务并启动:systemctl daemon-reload && systemctl start jjhub,用 journalctl -u jjhub -f 看日志确认无报错。

兼容性注意点

  • 达梦:默认大小写敏感,建库时建议选"大小写不敏感",否则表名、字段名要和初始化脚本严格一致;
  • 金仓:兼容 Oracle 模式,连接串里的 schema 参数不要漏;
  • 时区:ARM 服务器 BIOS 时间常见为 UTC,确保 timedatectl 输出与业务一致,否则日志时间会整体偏移 8 小时;
  • GLIBC:麒麟 V10 SP1 部分系统自带 glibc 版本较旧,如果手工升级过内核,确认静态二进制仍可正常加载;
  • SElinux/防火墙:麒麟默认开启防火墙,采集 Agent 的端口(默认 4317/4318)要在 firewall-cmd 里放行,否则采集数据进不来。

高可用与资源规划

生产环境建议至少 3 节点:OBSERVE 服务端做主备或集群,数据库用达梦/金仓自带的主备复制。采集 Agent 分散部署到各业务主机,就近上报。单节点起步时,4 核 16G 可以扛住日均百万级日志写入;数据量上来后,存储节点独立出来,用对象存储做冷数据归档。

压测与结论

在 2 台 4 核 16G 的飞腾服务器上(1 台跑 OBSERVE,1 台跑达梦),单机日志写入吞吐约 3 万条/秒,检索 10 亿级日志的聚合查询 P95 在 3 秒内。信创环境跑可观测平台,性能完全够用,关键是选对架构——aarch64 二进制加国产数据库适配,而不是拿 x86 源码在 ARM 上硬编译。