HQY

×

OCManager | 腾讯开源的日处理700万条告警的智能管家,究竟是怎样拯救运维团队的?

hqy hqy 发表于2026-06-17 16:29:36 浏览6 评论0

抢沙发发表评论

如果你管过几百甚至上千台的 Linux 服务器,下面这套组合拳应该不陌生:

  • 监控用 Prometheus/Grafana 拼一套

  • 日志用 ELK 拼一套

  • CMDB 自己写一套

  • 主机批量执行用 Ansible/SaltStack

  • 出了问题,几个工具切来切去,凭经验拼凑现场


这套打法在几台、几十机器规模下还能凑合。但当你的机器到了成千上万台量级——每天 700 万条软件包风险告警,2000 起宕机事件,上百种软件版本,几十个 OS 发行版本。人是不够用的,工具链是断的,知识是装在老员工脑子里的。


OCManager 是 OpenCloudOS 团队为这件事给出的答案——一个把集群管理、整机监控、AI 智能运维整合在同一个 Web 控制台的一体化平台。今天我们正式把它开源了。

图片



01



OCManager 是什么

OCManager 是 OpenCloudOS 智能管家,核心解决大规模 Linux 集群"看不全、管不住、查不出、修不快"的闭环问题。

如下图所示,OCManager 采用四层结构:被管主机运行 Agent 插件,通过 mTLS 通道上报数据;后端基于 tRPC-Go 微服务 + Footstone 基础服务(机器管理、权限校验等),存储依赖 MySQL / ClickHouse / Kafka / Redis;前端 Vue2 + TDesign 在 Web 控制台统一交付所有功能。

图片




02



OCManager 模块功能


模块
说明
主机管理
实例导入、状态跟踪、项目分组、批量操作
指标采集
msg-etl 消费 Agent 上报消息,写入 ClickHouse,驱动指标流水线
整机监控
操作系统画像、指标总览
系统诊断
命令助手(远程执行,下游对接数据通道)
运维任务编排
tms/
 数据通道:agent 接入、资产/证书、心跳判活、任务下发、物料分发(详见 docs/architecture/tms-channel.md)
OCAI 智能问答
控制台内嵌 AI 助手前端入口,对接外部 AI 推理服务(详见 docs/architecture/frontend-app.md)
用户与审计
本地账号/JWT 登录、操作记录、浏览日志


总结说来,OCManager 平台包含四大核心特性:

  • 一体化、开箱即用:各核心模块共享同一套机器视图、权限体系和 Agent 通道,无需再“手搓”或拼装。

  • 全 Web管理:从主机纳管到批量操作,从指标看板到异常诊断,从命令执行到 AI 对话,全部在 Web 控制台完成。这将大幅提升使用效率、统一操作入口、可审计可回溯。

  • 多 OS 适配,不锁死:一期支持 OpenCloudOS 9 / OpenCloudOS 8,及其商业版TencentOS 全系。二期会扩展到第三方主流开源 OS;机房里跑什么,OCManager 就能管什么。

  • 大规模业务场景验证:开源前,OCManager 已在腾讯内部跑了三年多,服务 300 万+台异构服务器,日处理 700 万条 CVE/软件包风险告警,自动分析 2000+ 起宕机事件。开源的第一天,它就带着 300 万台机器的生产经验上岗。





03



如何快速部署OCManager


   3.1 Docker 一键部署(官方推荐方式):

1)前置依赖与环境要求
  • Docker 20.10+(含 Compose v2)Go 1.24+deploy.sh 会在本机静态编译后端二进制,再 COPY 进镜像)

  • 当前用户能直接调用 docker(root 或在 docker 组里非 docker 组用户可执行:sudo usermod -aG docker $(id -un) && newgrp docker

  • 当前用户能 sudo

  • 硬件量级(经验级、非 SLA):建议服务器配置至少在 4  / 8 G;含 MySQL、Redis、Kafka、ZooKeeper、ClickHouse、manager 三进程、数据通道七服务时,更稳妥从 8核 / 16 G起做功能验证。

  • 不要在 docker 数据目录的挂载目录里跑脚本——脚本会在 manager/backend/bin/ 写入临时二进制并清理。


2)执行步骤
















# clone 仓库git clone https://gitee.com/OpenCloudOS/ocmanager.git # 进到仓库根目录cd ocmanager # 复制配置文件cp config/env.example config/.env  # 更改配置备注:至少确认 SERVER_HOST。本地体验可直接用默认值,无需修改。如需其他配置,如OCAI-Service要使用的模型时,请注意配置,详见4)vi config/.env   # 一键构建镜像并启动全部服务,脚本会自动构建前后端镜像,并拉起 MySQL / Redis / Kafka / ClickHouse 等所有依赖bash scripts/deploy.sh

完成后访问:




http://127.0.0.1:13070默认账号/密码: admin / Admin123456@# 登录后请立即修改密码

备注:上述一键构建脚本,将按 infra → 数据通道 → manager 顺序拉起全栈(manager 业务侧的 sysdiagnose 通过 .env 里 TMS= 调用 tms/api,所以数据通道必须先于 manager 启动;制品上传也安排在两者之间,让 MD5 在 manager 启动前已经回写到 .env


   3.2 OCAI-Service部署(可选)


OCAI-Service 是控制台内嵌的 AI 助手(详见 docs/architecture/frontend-app.md · OpenCloudOS/OCManager - Gitee.com)。前端已默认集成;AI 后端由独立仓库 ocai-service 提供。若暂不部署 OCAI -Service,保持 ENABLE_OCAI_DEPLOY=false(默认)即可;也可在 Header.vue 中隐藏 <Chatbot/>


一键启用(需先克隆 ocai-service 到 oc-manager 同级目录):







# config/.envENABLE_OCAI_DEPLOY=trueOCAI_JWT_SECRET=your-jwt-secretOCAI_LLM_DEFAULT_API_KEY=sk-your-key bash scripts/deploy.sh up   # 自动拉起 ocai-service + nginx 反代

   3.被关节点上部署Agent

控制平面(infra + 数据通道 + manager)跑起来后只是 服务端——要让被管节点上报数据 / 接收命令,需要在每台目标主机上部署 Agent。Agent 与控制平面(具体是 tms/gateway)走 mTLS 长连接互信,所以必须先把 控制平面对外可达地址 签进 server 证书的 SAN。


详细部署流程见:

https://gitee.com/OpenCloudOS/ocmanager#%E6%96%B9%E5%BC%8F%E4%B8%89%E5%9C%A8%E8%A2%AB%E7%AE%A1%E8%8A%82%E7%82%B9%E4%B8%8A%E9%83%A8%E7%BD%B2-agent


如需更多部署方式,如本地开发部署,请见项目Quickstart 文档:

https://gitee.com/OpenCloudOS/ocmanager/blob/master/docs/QUICKSTART.md



打赏

本文链接:https://www.kinber.cn/post/6636.html 转载需授权!

分享到:


推荐本站淘宝优惠价购买喜欢的宝贝:

image.png

 您阅读本篇文章共花了: 

群贤毕至

访客