第二阶段导读:这批文档怎么读
目录
这一批共 9 篇正文,全部来自同一台学习机 prod102(内网 10.0.1.47,显卡 NVIDIA H20)。 它不是零散的命令记录,而是一条完整的施工顺序:先有机器和集群,再让 GPU 可见、让密钥可控, 然后把服务搬进集群,最后补齐应用、观测、网关和弹性。
每篇都有配套的 config/ 与 scripts/ 附件,正文里贴出的代码与附件里的文件是同一份。 照顺序读,前一篇的产物就是后一篇的前提。
一、阅读顺序
① K8s 从零部署 → ② K8s 探针与密钥 → ③ K8s 迁移 → ④ Dify 与知识库 → ⑤ 可观测 → ⑥ 模型网关 → ⑦ CI/CD 与 GitOps → ⑧ 场景实战
如果只想解决某一个具体问题,也可以直接跳到对应那一篇;但涉及集群行为的判断, 建议至少先读过第 ① 篇,否则容易把环境问题和配置问题混在一起。
二、每一篇讲什么
01 Ubuntu 单机从驱动装到 Kubernetes:H20 上跑 vLLM、Dify 和监控
一台刚装好的 Ubuntu 22.04.5 + H20:从显卡驱动、Docker 装到 Kubernetes 1.37.1,再把 vLLM、Xinference、New-API、Dify、Langfuse 和监控逐个拉起来。
02 用 NVIDIA GPU Operator 暴露 H20:vLLM 探针、本地模型和 Vault 密钥
GPU Operator 让节点报出 nvidia.com/gpu,给 vLLM 加启动 / 存活 / 就绪三类探针,再用 HashiCorp Vault 1.21.2 统一保管环境变量并同步回 Kubernetes Secret。
03 Docker Compose 迁到单节点 Kubernetes:vLLM、Dify、Langfuse 逐个怎么搬
把 Docker Compose 上跑着的 vLLM、Dify、Langfuse、New-API、Prometheus、Grafana、DCGM逐个搬进单节点 Kubernetes,按依赖顺序逐章记录,看清一个运行中的容器怎么变成 Pod。
04 用 Dify 做合同知识库:Qwen 对话、bge 重排和 Langfuse 工具追踪
在 Dify 里搭一套合同条款知识库:Qwen 对话模型、bge-m3 向量与重排、服务器状态工具,以及 Langfuse 上的工具调用追踪,全链路串通。
05 Langfuse 加 DCGM:会话追踪和 GPU 显存、温度、利用率
Langfuse 负责会话与调用链路追踪,DCGM Exporter 采集 GPU 显存、温度、利用率,两者一起接进 Prometheus 与 Grafana 看板。
06 在 vLLM 前面加 New-API:渠道、令牌额度和邀请奖励
在 vLLM 前面加一层网关:建渠道指向本地 vLLM,发令牌、设额度,再把邀请奖励结算并划转到用户余额。
07 用 KEDA 按排队扩容 Worker,并用 GitLab 与 Argo CD 纳管工作负载
KEDA 按 vLLM 排队数把 Dify worker 从 1 扩到最多 3 个副本;Argo CD 把 llm / dify / observability 的工作负载收进 GitLab 私有仓库自动同步。
08 用智能体和工作流把客服、工单、监控和自愈走一遍
在已有的 Dify 上把场景跑一遍:六条智能体(工单分流、监控检查、故障自愈、智能客服、合同问答、运维巡检)与三条工作流(工单分流、监控检查、客服检索)。含 Prometheus 与 vLLM 的只读工具、max_tokens 与 {{#context#}} 两处踩坑记录,以及沙箱代理 NO_PROXY 的 DNS 排查。
三、读的时候注意三件事
第一,所有脚本都在现网上验证过,不要在现网重跑。 多数脚本发现集群或容器已经存在就会 直接退出,这是刻意做的保护,不是失败。复习时看记录和正文即可。
第二,先看正文,再对代码。 正文讲的是"为什么这么做"和"做完怎么验",代码块和附件是 "具体敲什么"。讲读视频里代码不朗读,只提示行数并指路原文,这是有意为之。
第三,凭据集中在一处。 这一阶段把环境变量收进了 Vault,再同步回 Kubernetes Secret。 看到口令出现在正文时,它只是当时的记录值,实际生效值以 Vault 为准。
四、配套产物
- 图文版:完整正文 + 代码块 + 表格 + 配套脚本附件,本文与它内容一致
- 逐字讲读版:把正文叙述完整读一遍,适合通勤时建立整体印象
- 精华版:每篇两到三分钟的要点版,适合复习时快速过一遍