版本说明
当前版本 1.5.9。升级方式:单机改 ops.yaml 顶部 x-ops-image 的 tag,执行 docker compose -f ops.yaml pull && up -d;Kubernetes 重新下载清单覆盖 apply。数据卷不变,监控历史与告警配置保留。
从 1.4.x 升级前必读
- 数据源只认 UI「数据源」页。
ops.yaml/ ConfigMap 里的ENV_MYSQL_*、ENV_REDIS_*、ENV_KAFKA_ENDPOINTS、ENV_ELASTICSEARCH_*、ENV_MONGODB_URI、ENV_PROMETHEUS_HOST、ENV_FLINK_URL等不再被读取(启动日志会列出)。已有数据源不受影响,把这些行删掉即可。 - 日志与链路需两个不同的 bucket(
ENV_S3_BUCKET_LOKI/ENV_S3_BUCKET_TEMPO),且须在部署前建好;ENV_S3_ENDPOINT填host:port,不带http://。 - 已在运行的 实例不要跟随新文档改数据卷路径,
/data/mdis/的新布局仅用于全新安装。
v1.5 · 2026 年 7 月
配置入口收敛到界面,Kubernetes 监控与对象存储可用性成型。
新增
- 数据源批量导入 / 导出。「数据源」页支持 YAML / JSON 批量导入(可下载带注释模板),按「类型 + 名称」幂等,同一份文件可反复导入;导入时逐条校验并探测连接,可先「仅校验」预检。同时支持一键导出为同格式的 YAML,用于备份、重装恢复、复制到另一套环境,分「不含密码」与「含明文密码」两档。也开放接口
POST /api/alert/sources/import。 - 「测试连接」会一并核验是否真的采到数据。端口可达、鉴权通过,与「面板上有图」之间还隔着采集目标下发、采集进程、指标抓取三道。现在会同时查询平台 Prometheus 中是否已有该数据源的指标,区分「连接成功,已在采集」与「连接成功,但还没采到数据」,后者附带原因与可自查的查询语句;列表「状态」列同步显示
连通·采集中/无数据。 - Kubernetes 采集组件模式。被监控集群内只装 Prometheus + kube-state-metrics 作为采集器,指标经
remote_write推回平台,由此支持「平台在集群外」与「一个平台监控多个集群」两类场景。采集全部发生在 集群内部,被监控集群无需暴露 apiserver / kubelet / kube-state-metrics 任何端口,只需能出站访问平台。面板顶部提供「集群」下拉切换。 - 网关新增 Bearer 鉴权的指标与日志写入入口(
ENV_PROMETHEUS_REMOTE_WRITE_TOKEN/ENV_LOKI_PUSH_TOKEN),多集群纳管与跨集群日志推送由此可用。
变更
- 数据源只有一个入口:UI「数据源」页(不兼容,详见页首提示)。慢查询诊断目标改由勾选了「诊断」用途的 MongoDB 提供;MongoDB 不再是「内置」数据源,可正常编辑删除,「内置」现在只剩 Prometheus。
- Kubernetes 监控要求平台部署在被监控集群内(
incluster),或在被监控集群装采集组件。此前需要 Bearer Token 加三个 NodePort 的集群外抓取方式(static)及「Kubernetes 集群」数据源类型已移除。 - 日志与链路改用两个独立 bucket;各组件数据目录统一为
/data/mdis/<组件>;集群清单给出示例桶名mdis-loki/mdis-tempo。 - 命名空间、节点标签与污点键统一为
hap-ops。 - K8s 面板的「Limits Ratio」是容器 limits 与节点可分配量之比,Kubernetes 本就允许超卖,不再按使用率阈值标红。
修复
- Kubernetes 部署后监控为空的几处根因:网关 Service 未暴露 ops-server 的 8081 且缺
ENV_OPS_SD_URL,采集端取不到服务发现数据;ops-agent的 Service 需为 headless,否则动态端口一律被拒;单文件ops.yaml未创建命名空间、缺 ServiceAccount / ClusterRole 与 kube-state-metrics。清单与文档均已修正,kubectl apply -f ops.yaml一条命令装完即有数据。 - K8s 面板的「集群」「命名空间」下拉取不到值,连带容器、Pod 下拉与相关面板为空。集群标识改为在采集配置中直接注入,命名空间改用新版 kube-state-metrics 始终暴露的指标。
- MongoDB 数据源采不到指标的三种成因:界面填写的账号密码未传给采集进程;多节点副本集写法与采集进程的直连模式互斥;采集进程开启了需要额外库权限的采集项,权限不足时整个指标接口中断。均已修复,升级即恢复。
- 主机监控面板整页无数据(1.5.8 期间)。主机面板的一个隐藏筛选条件被 K8s 集群标识连带选中,而主机指标不带该标签。指标本身一直是好的,升级到 1.5.9 即恢复,无需改配置。
- 慢查询相关的三处误导:勾选「诊断」用途后需重启网关才生效(现在立即生效);目标库开启慢查询失败时界面却显示「已开启」(现如实提示权限不足并给出手工命令);任何异常都统一提示「未开启慢查询识别策略」(现按「未指定目标库 / 账号无权限 / 读不到状态 / 确实未开启」分别提示)。
- 采集状态显示不准:主机类恒显示「未采集」(主机由平台 Prometheus 直抓、不经 ops-agent,现改为查询实际抓取结果);采集进程仍在运行却提示「进程已退出」(现按端口未监听 / 响应中断 / 抓取超时 / 无数据四种区分,并给出该看的日志文件);Flink 在列表里看不出通不通(现已纳入连通性检测)。
- Kubernetes 下不再刷
docker.sock连接报错。ops-alloy 现按是否存在该 socket 决定是否采集 Docker 日志。若此前为消除该报错手工把宿主机docker.sock挂进 ops-alloy,请撤掉——那样采到的是宿主机容器日志,不是 Pod 日志。 - 采集组件的
remote_write示例地址补上/prometheus/server/前缀(原示例会 404,且只在容器日志里静默重试);两套 K8s 清单不再把指标推给平台自己。
本系列包含的补丁版本(1.5.0 – 1.5.9)
| 版本 | 主要内容 |
|---|---|
| 1.5.9 | 主机面板回归修复、数据源配置导出、连接测试核验采集实况 |
| 1.5.8 | K8s 集群标识改为采集期注入、慢查询目标热生效、Flink 连通状态 |
| 1.5.7 | 单文件 ops.yaml 补齐 K8s 采集所需对象、Bearer 写入入口 |
| 1.5.6 | 多节点副本集 MongoDB 采集 |
| 1.5.5 | MongoDB 采集凭据传递、Kubernetes 采集组件模式 |
| 1.5.4 | Kubernetes 下按需启用 Docker 日志采集、集群清单开放下载 |
| 1.5.3 | Kubernetes 监控收敛为 incluster |
| 1.5.2 | 数据目录统一为 /data/mdis/<组件> |
| 1.5.1 | 日志与链路拆分独立 bucket |
| 1.5.0 | 数据源单一入口、批量导入 |