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

统信 UOS + 飞腾平台部署 OBSERVE:依赖、服务化与适配要点

在统信 UOS 与飞腾 ARM64 环境部署 OBSERVE 的实操记录:系统依赖安装、systemd 服务化、国产数据库与证书适配,以及启动即退、中文乱码等常见问题的处理办法。

为什么要专门写一篇部署文档

国产化环境的坑不在应用代码,在底层:统信 UOS 的 glibc 版本、飞腾 ARM64 架构的指令兼容、systemd 服务单元的差异,都会让一个“在 x86 上跑得好好的”程序起不来。这篇按实际部署顺序讲,遇到问题照着查就行。

环境与依赖准备

先确认三件事:

uname -m            # 应输出 aarch64
cat /etc/os-release # 确认 UOS 版本
ldd --version       # 确认 glibc 版本

OBSERVE 提供 ARM64 的安装包,安装前先补齐运行时依赖:

sudo apt install -y libc6 libssl3 liblz4-1 ca-certificates tzdata

飞腾 FT-2000/64 和 D2000 都支持 ARMv8,如果用的是较老的 FT-1500A,需要单独确认编译器目标,别直接拿 aarch64 包硬装。

安装与服务化

解压安装包到 /opt/observe,然后把 OBSERVE 注册成 systemd 服务:

[Unit]
Description=JuJing OBSERVE
After=network.target

[Service]
Type=simple
User=observe
ExecStart=/opt/observe/bin/observe-server --config /etc/observe/config.yaml
Restart=on-failure
RestartSec=5s
LimitNOFILE=65535

[Install]
WantedBy=multi-user.target

几个容易漏的点:LimitNOFILE 必须调大,日志采集类服务默认 1024 的文件描述符上限两分钟就耗尽;User 不要用 root,单独建 observe 账号,方便后续做最小权限;Restart 用 on-failure 而不是 always,避免配置错误时陷入重启死循环。

国产化适配要点

数据库。 OBSERVE 的元数据层默认支持达梦 DM8 和人大金仓 KingbaseES,切国产库时把 config.yaml 里的 driver 改成 dm 或 kingbase 即可。注意达梦的字符集要用 UTF-8,长度语义要设成按字符(LENGTH_IN_CHAR=1),否则中文字段会截断。

时间与证书。 信创环境常在内网,NTP 没同步会导致日志时间错乱、告警触发异常。部署前先 ntpdate 或配置 chrony。自签名证书要导入系统的 trust store,否则 OBSERVE 内部组件之间 HTTPS 调用会失败。

性能。 飞腾单核性能弱于主流 x86,日志解析这类 CPU 密集任务要调低并发、开启批处理,必要时把解析放到采集端预处理,减少服务端负载。

常见问题速查

| 现象 | 原因 | 处理 |
| --- | --- | --- |
| 启动即退出 | glibc 版本过低 | 升级 UOS 或使用静态链接版 |
| 日志时间错乱 | NTP 未同步 | 配置 chrony 指向内网时间源 |
| 中文乱码 | 数据库字符集非 UTF-8 | 重建库并设 LENGTH_IN_CHAR=1 |
| 文件描述符耗尽 | LimitNOFILE 未调整 | systemd 里加 LimitNOFILE=65535 |

部署完成后跑一遍自带的健康检查脚本,确认采集、存储、查询三个组件都注册成功,再接入真实业务。