品高软件夜莺监控实践:私有云统一可观测与云平台融合

品高软件 2026-03-18 11:06:30

公司和业务介绍

品高软件是国内专业云计算及行业信息化服务提供商,面向轨交、政府、电信、公安、汽车、金融、教育等行业提供从IaaS基础设施层、PaaS平台层、DaaS数据层到SaaS软件层的全栈云平台和信息化服务,帮助客户实现系统入云、应用入云、数据入云。凭借行业信息化领域积累的多年经验,以行业信息化系统及应用为基础,基于客户现有IT架构,提供相关技术开发和服务,帮助客户实现信息化、数字化业务发展需求。

一句话摘要

在我司云平台场景下,通过夜莺(Nightingale)与我司云平台的深度融合,实现云平台概览、巡检式监控、虚拟机无 Agent 监控、磁盘网卡精确告警及错误日志告警等能力,统一可观测与告警闭环,并为云原生接入做好准备。

一、选型背景与现状

1. 内部现状与痛点

我司云平台产品线既有私有云,又有容器、大数据等多类产品与交付形态,监控对象涵盖传统虚拟化、云管平台、K8s/容器、大数据组件等,体系统一、可观测一致的需求非常突出。若按“老架构用 Zabbix、微服务用 Prometheus、多云用各云厂商监控”的方式建设,会形成多套监控系统并存,运维与研发被迫在多个平台间切换,既难以形成统一视图,也不利于告警闭环与二次开发。

既有方案(如 Zabbix)的局限在我们内部调研中较为突出:

  • 相对固定的数据模型,导致数据表达能力有限,难以同时适应私有云与容器、大数据等现代架构的监控需求。
  • 系统容量有限,趋势数据存储压力大,标签数据存储更是挑战。
  • Dashboard 配置较为麻烦,告警策略配置复杂,门槛较高。
  • 架构设计耦合严重,代码实现复杂,对系统本身进行二次开发较难。
  • 功能丰富但对运维人员能力要求较高,不利于多人协作。

因此我们一直在寻找:一个现代化的、简单好用的监控产品,既能覆盖私有云等传统架构,又能适用容器、大数据及混合云场景,实现一套平台、统一可观测

2. 夜莺监控简介

夜莺监控(Nightingale) 是一款国产、开源的云原生监控分析系统,采用 All-In-One 的设计,集数据采集、可视化、监控告警、数据分析于一体。

  • 从 v5 版本开始与 Prometheus、VictoriaMetrics、Grafana、Telegraf、Datadog 等生态紧密协同集成,提供开箱即用的企业级监控分析和告警能力,已有众多企业选择将「Prometheus + AlertManager + Grafana」的组合方案升级为使用夜莺监控。
  • 夜莺由滴滴开发和开源,其核心开发团队也是 Open-Falcon 项目的原核心研发人员;快猫星云技术团队是夜莺监控的创始团队(小米 → 滴滴 → 快猫创业)。
  • 需要说明的是,Nightingale 并非是 Open-Falcon 设计逻辑的简单延续,可以看作两个不同的软件,夜莺更面向云原生与现代化可观测场景。

在技术栈上,我们已有的认知是:Prometheus 负责收集和存储时间序列数据,适用于监控、性能好、查询效率高;Exporter 负责采集各类 metrics 并提供给 Prometheus;Alertmanager 负责告警去重、分组并路由到邮件、微信、钉钉等接收方;Grafana 负责监控仪表盘与可视化。夜莺在与这套生态协同的同时,把采集、可视化、告警、分析整合在一个产品里,减少了多系统拼凑的维护成本。

3. 为什么选择夜莺

选型时我们的原则是:并不是越炫酷越好,要能发现、解决问题

综合来看,选择夜莺的主要原因包括:

  • 界面:相较于 Zabbix 更简单、好看,符合我们的使用习惯。
  • 插件与扩展:插件丰富,支持二次开发拓展。
  • 日志与告警:支持日志关键字告警和统计数据的阈值告警,便于快速发现应用与系统异常。
  • 可视化:丰富的图表模型,支持 Grafana 常用图表类型;使用 Prometheus 可以灵活绘制自定义图表。

最重要的两点

  1. 借助夜莺的大盘和告警系统,可以很方便地与我司云平台融合,实现云平台级的一体化监控与告警。
  2. 为后续云原生接入做准备,在技术路线和生态上保持一致性。

二、夜莺与我司云平台的融合

1. 融合思路与能力扩展

我们结合我司云平台,融合了 bingoOIP 的特性并对夜莺做了高级扩展,形成「我司云监控」方案。bingoOIP 是我司云平台的运维巡检平台,主要负责节点汇总、巡检报告与运维状态展示等;与夜莺融合后,将巡检能力与实时监控、告警打通,实现了下文中的「巡检报告式实时监控」等能力。主要能力包括:

能力项 说明
高度自动化部署 开箱即用,降低部署与接入成本
云平台概览 全局指标一览,便于管理层与运维整体把握
巡检报告式实时监控 节点汇总视图,类似巡检报告式的实时监控
虚拟机状态 无 Agent 方式监控虚拟机状态,减少对业务虚机的侵入
不一致虚拟机检测 发现与预期状态不一致的虚拟机,便于治理与合规
磁盘网卡故障精确告警 对磁盘、网卡故障做精确识别与告警
云节点详细状态 云节点资源、健康度等详细状态展示
Ceph 存储状态详情 Ceph 集群与存储健康、容量等详情
错误日志告警 结合日志采集与告警,实现错误日志的实时告警

2. 融合后的架构

整体上,夜莺负责统一的采集、存储、告警与大盘;我司云平台侧通过 bingoMS 等组件承担与云平台深度相关的高级扩展,再通过 bingo_categraf 等采集端与夜莺生态对接。

3. 第三方对接

我司云监控支持与现有运维体系、通知渠道、工单等第三方系统对接,便于形成告警闭环。

4. bingoMS:高级扩展

bingoMS 承担了与我司云平台深度结合的高级扩展任务,主要包括:

  • 状态异常实例判断、不一致虚拟机判断。
  • Ceph 详情信息展示与告警。
  • BCC(我司云平台)指标定义与采集。
  • 告警指标的控制与策略管理。
  • 云存储使用情况、云数据库、云服务、时间同步、云节点状态、SDN、虚拟机状态、云资源使用情况、云规模、节点资源情况、磁盘、网卡、存储错误等维度的监控与告警。

5. bingo_categraf:统一采集

Categraf 是夜莺主推的采集器,由快猫研发团队开发,与 Open-Falcon、Nightingale 同源。它是一款 All-in-one 的监控采集 Agent(类似 Telegraf、Grafana-Agent、Datadog-Agent),不仅支持指标采集,还支持日志和调用链路的数据采集。

  • Prometheus 生态中往往「一种监控类型一个 exporter」,生产环境可能部署大量 exporters,管理成本较高。Categraf 采用统一 Agent、多插件的方式,便于部署与维护。
  • 我们基于 Categraf 做了 bingo_categraf 扩展,与我司云监控场景对齐。采集插件的代码位于 inputs 目录,每个插件独立目录,可配套监控大盘 JSON 与告警规则 JSON,便于复用与二次开发。

Categraf 的所有插件代码都在 inputs 目录下,只要把自研的插件代码放进去,然后在 https://github.com/flashcatcloud/categraf/blob/main/agent/metrics_agent.go 通过 import 的方式导入即可整合进去,非常方便。

三、监控能力与主要功能

1. 内部定制的监控范围

我们内部定制的监控范围如下表所示,覆盖 CPU、GPU、内存、磁盘、容器、网络、系统、日志、巡检、BMC、云平台、数据库、网络设备、分布式存储及监控系统自身等类型,对应不同采集插件与监控说明。

2. 仪表盘(大盘)

通过夜莺的仪表盘能力,结合 Prometheus 的灵活查询,我们实现了云平台全局指标、节点汇总、Ceph 存储、虚拟机状态等多类大盘,满足日常运维与巡检需求。

3. 告警管理

告警管理的核心是告警规则:定义触发条件(如指标阈值、持续时长)、告警级别及通知渠道(钉钉、企业微信、邮件等),按主机、磁盘、Ceph、云服务等监控对象与业务重要性配置。规则可按业务组、标签做隔离与复用,告警产生后进入事件列表。

4. 时序指标

通过夜莺与 Prometheus 生态,我们实现了灵活的时序指标查询与展示,支持自定义图表与多维度分析。

四、成果与数据

  • 监控规模:最大规模 500+ 云节点,3000+ 台虚拟机;监控覆盖网卡降速与状态、磁盘坏道、SDN 状态、Ceph 存储详情等等,便于精准发现硬件与网络类故障。
  • 告警规则:240+ 条告警规则,配合订阅规则与多通知渠道使用。

五、经验与避坑(给后来者的建议)

  • 先定模型再上量:先把业务组、数据源、核心告警模型与云平台对象映射关系设计清楚,再大规模接入,避免后期大量调整。
  • 善用订阅规则:用订阅规则满足「按业务接收告警」的需求,让业务方按需接收与自己相关的告警,而不必改动基础告警规则。
  • 与内部系统融合:通过二次定制开发与内部系统进行融合,如 CMDB、工单系统等,实现告警、值班、工单的联动与闭环。
  • 采集端统一:优先考虑 Categraf 等 All-in-one 采集器,减少 exporters 数量,降低部署与升级成本。

六、亮点实践

  • 夜莺与我司云平台深度融合:通过 bingoMS、bingo_categraf 等扩展,实现云平台概览、巡检式监控、无 Agent 虚拟机监控、Ceph 详情、磁盘网卡精确告警、错误日志告警等,与我司云平台场景紧密贴合。
  • 告警订阅规则:订阅规则让业务方按需接收告警,在基础架构统一维护规则的前提下,满足多角色、多业务的告警接收需求。
  • 为云原生做准备:技术路线与 Prometheus/夜莺生态一致,便于后续容器、K8s、微服务等云原生场景的监控接入。

七、建议与期待

  • 巡检报告:希望能更好地引入或与巡检报告能力结合,让监控数据与运维巡检场景更紧密联动,而不仅是单点指标展示。
  • AI 联动分析:期待与 AI 的联动是分析型、场景化的(如根因分析、异常归因、趋势研判),而不是简单生硬地把告警推送给 AI;希望告警与 AI 的结合更智能、更可解释,真正辅助决策。
  • 期待更多行业案例与最佳实践文档,便于企业级落地参考。

八、未来计划

  • 将公司容器云、大数据产品纳入夜莺监控:计划把我司容器云、大数据等产品也统一接入夜莺监控范围内,实现私有云、容器、大数据在一套监控体系下的统一可观测。
  • 深化告警闭环:告警进入事件列表后,与 CMDB 的值班、工单对接形成闭环;并探索与巡检报告、AI 分析能力的结合。
快猫星云 联系方式 快猫星云 联系方式
快猫星云 联系方式
快猫星云 联系方式
快猫星云 联系方式
快猫星云