Skip to content

Repository files navigation

AIOps Atlas 智能运维知识库

Quality checks Deploy GitHub Pages

在线站点:启用 GitHub Pages 后访问 https://wlj572831.github.io/-AIOps-Atlas/

这是一个零依赖、可离线使用的中文智能运维学习知识库,以 Ubuntu Server 24.04 LTS 为实验基准,覆盖 Linux、网络、服务运维、容器、Kubernetes、SRE、可观测性、AIOps、LLM 运维助手与 GPU 推理基础设施。它强调建立可验证的排障证据链,不把命令清单当作能力本身。

每个完整条目包含:

  • Ubuntu 安装与准备;
  • 关键配置文件和数据目录;
  • 按机制分组的核心知识清单;
  • 基础命令和 Ubuntu 扩展命令;
  • 典型故障现象与检查路径;
  • 动手任务和学完验收标准;
  • 对应的事实来源与延伸资料。

每个主题同时提供一份“岗位能力手册”,固定包含八个栏目:

  1. 知识点说明:围绕真实机制与故障场景列出需要掌握的能力;
  2. 常用命令:可直接复制,强调观察和验证;
  3. 配置示例:Ubuntu、systemd、Nginx、Docker、Kubernetes、Prometheus 等真实格式;
  4. 典型故障:症状和常见原因;
  5. 排查流程:从影响确认、证据收集到修复验证和复盘;
  6. 实战任务:故障注入、报告和 Runbook 沉淀;
  7. 面试问题:问题与回答要点;
  8. 简历表达:不虚构经历和指标的项目描述模板。

例如 Kubernetes 工作负载专题不是只解释 Pod 定义,而是覆盖 CrashLoopBackOff、ImagePullBackOff、OOMKilled、三类探针、ConfigMap/Secret、资源限制和标准排查报告。

知识工作台

点击主题卡片后进入知识工作台,而不是连续滚动的窄弹窗:

  • 桌面端使用左侧栏目导航和右侧内容面板;
  • 移动端使用全屏窗口和横向栏目标签;
  • 一次只显示一个栏目,降低长文认知负担;
  • 支持上一主题、下一主题、先修知识和继续学习导航;
  • 新增交互式技能图谱,以节点和连线展示前置依赖、后续技能、相关联、知识交叉、典型场景和项目依赖;支持关系/阶段筛选、搜索、缩放、拖拽与知识条目联动;
  • 栏目标签支持方向键、Home、End 键盘切换;
  • 主题卡片直接显示知识点数、证据块数和能力内容完整度。

本地学习进度

首页“今天,从哪里继续?”把知识库变成可持续推进的学习闭环:

  • 主题支持“未开始 / 学习中 / 已掌握”三种状态;
  • 首页汇总总体完成度、学习中主题和六阶段进度;
  • 优先续接最近学习的主题,否则按先修关系推荐下一步;
  • 进度仅写入当前浏览器的 localStorage,不上传、不要求账号;
  • “已掌握”应在完成实操和验收后使用,而不是把“看过”当成“会了”。

RAG / LLM 后续阶段

当前已经生成面向 RAG 的结构化语料层:每个证据块都有稳定 ID、标题路径、类型、意图、先修关系、相关主题、来源、版本、更新时间、质量标记和内容哈希。页面“RAG 检索”支持问题检索、内容类型/学习阶段过滤、证据路径展示,并可导出 JSONL。所有证据块仍处于待人工复核状态。

详细架构与向量数据库、混合召回、重排、上下文构建、LLM 引用和评测路线见 docs/RAG_ARCHITECTURE.md。在接入模型前仍应补充更多真实故障案例、版本差异和人工审核结果,避免模型把泛化模板当成生产事实。

开源学习导航

页面中的“开源学习导航”把 GitHub 资源分成学习路线、渐进课程、练习题库、故障实验、官方课程大纲和官方文档。资源只以人工审核后的元数据、适用主题、建议任务和深链接接入,不镜像第三方正文。

  • 路线类资源用于决定先后顺序和查漏,不作为生产配置依据。
  • 项目官方或基金会官方文档用于核对技术事实、命令语义和版本差异。
  • 社区练习与题库用于形成实验、口述和排障能力,答案需要再次验证。
  • 每个知识主题的“来源与治理”面板会同时显示事实来源与匹配的 GitHub 学习资源;RAG JSONL 通过 learningRefs 保留这两类来源的边界。

快速开始

要求 Node.js 20 或更高版本。克隆仓库并启动本地静态服务:

git clone git@github.com:wlj572831/-AIOps-Atlas.git
cd -AIOps-Atlas
npm start

然后访问 http://127.0.0.1:8765。也可以直接打开 index.html;本地服务主要用于获得稳定的资源加载和剪贴板体验。

运行完整验证:

npm test

部署

仓库已配置 GitHub Pages 自动部署:推送到 main 后先运行测试,再发布静态站点。首次使用需要在仓库 Settings → Pages 中将 Source 设为 GitHub Actions

完整的本地运行、GitHub Pages、Nginx、其他静态托管平台和回滚步骤见 部署指南

项目结构

.
├── index.html               # 页面入口
├── assets/                  # 样式、界面逻辑与检索模块
├── data/                    # 知识主题、图谱、手册与资源数据
├── docs/                    # 架构、抽取器与部署文档
├── tests/                   # 内容、图谱、检索与 UI 契约测试
├── .github/workflows/       # 质量检查与 Pages 部署
├── serve.mjs                # 零依赖本地静态服务器
└── SOURCES.md               # 招聘样本与资料来源

检索

  • 在搜索框输入多个词时执行 AND 检索,例如 kubernetes dns
  • 搜索范围包括标题、摘要、知识点、标签、练习命令和动手任务。
  • Ctrl+K 聚焦搜索框。
  • 点击阶段标签过滤;点击卡片查看完整条目并复制命令。
  • 每个主题都有 #topic=<id> 深链接,可收藏或分享。

招聘 JD 技能抽取

页面中的“JD 抽取”模块支持:

  • 手动粘贴一份或多份 JD;多份文本使用独占一行的 --- 分隔;
  • 导入 .txt.md.markdown.json 文件,可一次选择多个;
  • JSON 可以是对象、对象数组,或包含 jobs / items 数组;岗位文本字段支持 descriptionjdcontenttextrequirements
  • 按基础运维、容器云、监控告警、日志链路、自动化运维、数据库/中间件、DevOps、AIOps / AI 工具分类;
  • 统计技能提及次数、JD 覆盖率、命中别名和证据片段;
  • 生成岗位能力矩阵、学习优先级以及“市场需求 → 知识点 → 学习任务 → 项目实践”映射;
  • 导出 Markdown 报告和完整 JSON 数据。

所有分析均在浏览器本地完成,不会上传 JD 内容。

JSON 输入示例

{
  "jobs": [
    {
      "title": "云原生运维工程师",
      "company": "示例公司",
      "source": "manual",
      "url": "https://example.com/job/1",
      "description": "要求熟悉 Linux、Docker、Kubernetes、Prometheus 和 Python。"
    }
  ]
}

后续数据源接口

爬虫或招聘 API 不需要修改抽取引擎,只需注册适配器:

JDAnalyzer.registerSourceAdapter("example-api", {
  async load(options) {
    // 返回 [{ title, company, source, url, text }],或可被 parseJson 识别的数据。
    return fetchJobsFromApi(options);
  }
});

const documents = await JDAnalyzer.loadFromSource("example-api", options);
const report = JDAnalyzer.analyze(documents);

推荐学习法

  1. 先按“学习路线”完成依赖顺序,不要从 Kubernetes 命令背诵开始。
  2. 在可重建的实验环境执行相关命令,先写预期结果,再解释实际输出;不要盲目复制整段命令。
  3. 完成动手任务,保留操作记录、故障证据和复盘。
  4. 用三个贯穿实验组成作品集:Linux 故障诊断、Kubernetes 发布、可观测与告警降噪。
  5. 每两周回看岗位方向,根据目标岗位和当前短板调整学习顺序。

内容边界

  • 命令优先用于本地实验环境;带占位符的命令需替换后执行。
  • 生产环境操作前必须确认上下文、权限、影响范围、回滚和审批。
  • 岗位方向来自少量公开招聘样本的定性归纳,条形长度只表示相对学习优先级,不代表市场占比。
  • 命令、默认值和支持矩阵会随版本变化;实际使用时应核对条目来源,并在目标版本中验证。

扩展内容

基础知识数据位于 data/knowledge.js,Ubuntu 深度内容按领域拆分在 data/ubuntu-*.js。按现有对象结构新增主题即可自动进入全文检索,无需修改界面代码。

About

No description, website, or topics provided.

Resources

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages