# 00-02-验证矩阵 > 这一页只做一件事:**集中标记每篇关键文档是否已经在真实环境验证过**。 > > **清单位置**:可部署的 Kubernetes YAML 以仓库 [`ansible/files/`](../ansible/files/) 为唯一真源(与 `docs/` 交叉引用);验证时请以该目录下文件为准。 > > 写文档的人、做实验的人,都以这里为准,不用在每篇文档里翻记录。 ## 状态说明 - **❓ 未验证**:内容结构与命令已经写好,但**还没有**在目标环境完整跑通一次。 - **⚠️ 部分验证**:只验证了其中一部分场景(例如只在单节点环境跑过,或只验证了 HTTP 未验证 HTTPS),备注里会写明覆盖范围。 - **✅ 已验证**:按该文档从头到尾在指定环境走完一遍,达到预期结果,备注里会带上环境与日期。 建议习惯: - 真机按文档全部走完后,再把状态从“未验证/部分验证”改成“已验证”,并写清 **OS / K3s 版本 / 时间**。 - 以后如果对文档步骤做了较大调整,记得把这里对应条目先打回“未验证”或“部分验证”,等新流程再跑一遍。 --- ## 1. 主线安装(01-*) - `00-01-k3s-基础概念.md` - 状态:✅ 已验证 - 备注:概念性文档,不涉及命令执行。 - `00-04-部署环境说明.md` - 状态:✅ 已验证 - 备注:说明性文档,描述本仓库验证环境(ylc61~64、Fedora、K3s v1.34.5+k3s1、/storage 等),与当前实际部署一致。 - `01-01-k3s-控制节点含traefik.md` - 状态:✅ 已验证 - 备注:Fedora 43 Server + K3s v1.34.5+k3s1,单控制节点 61,已按文档装机并确认 Traefik 入口 404 可达(2026-03-10 左右)。 - `01-06-节点初始化-ansible-实践.md` - 状态:✅ 已验证 - 备注:Fedora + K3s,4 节点(ylc61~64),Ansible 一键完成初始化、server/agent 安装、firewalld 基线、Traefik 标签及验证输出(2026-03 左右)。 - `01-02-k3s-工作节点.md` - 状态:✅ 已验证 - 备注:在同一环境下成功加入工作节点 62,并通过 `kubectl get nodes` 看到双节点 Ready(2026-03-10 左右)。 - `01-03-armv7-standalone-docker.md` - 状态:❓ 未验证 - 备注:待在实际 armv7 设备上按文档安装 Docker 并跑一两个容器后更新。 `01-07-openwrt-haproxy.md` - 状态:✅ 已验证 - 备注:ImmortalWrt + HAProxy 18080/18443;经 `scripts/01-07-verify-haproxy.sh`(ssh onecloud 第三方 curl)验证;cfg 语法、HTTP/HTTPS 后端正确;可选 `--deploy-matrix http|tls` 一键部署矩阵。 --- ## 2. 简单部署nginx(02-*) - `02-00-nginx-系列说明.md` - 状态:✅ 已验证(说明性文档) - 备注:整理节点调度与 Ingress/IngressRoute 差异,与 02-01~02-04 一并验证。 - `02-01-nginx-control-ingress.md` - 状态:✅ 已验证 - 备注:经 `scripts/02-verify-nginx-matrix-individual.sh` 在 ylc61 上逐个部署,onecloud curl 验证 HTTP(path /demo-m1)与 HTTPS(domain test01.jackadam.top:18443);2026-03。 - `02-02-nginx-control-ingressroute.md` - 状态:✅ 已验证 - 备注:同上,path /demo-m2,IngressRoute 路由链路。 - `02-03-nginx-worker-ingress.md` - 状态:✅ 已验证 - 备注:同上,path /demo-m3,工作节点 Ingress。 - `02-04-nginx-worker-ingressroute.md` - 状态:✅ 已验证 - 备注:同上,path /demo-m4,IngressRoute 变体。 - `02-05-nginx-验证矩阵-一键部署.md` - 状态:✅ 已验证(4 种组合 M1~M4 整合) - 备注:HTTP-only(无域名学习);有域名时用 03-02 升级版。 --- ## 3. k3s 常用配置 - `02-00-nginx-系列说明.md` - 状态:✅ 已验证(说明性文档) - 备注:整理节点调度与 Ingress/IngressRoute 差异(nodeSelector/labels/tolerations 通用排查思路),与 02-01~02-04 一并验证。 - `03-01-k3s-traefik-dashboard.md` - 状态:✅ 已验证 - 备注:在 61/62/63/64 环境各节点启用过 Dashboard 并确认能访问,日志正常。模板:`ansible/files/traefik-dashboard/traefik-dashboard.yaml`。 - `03-02-k3s-traefik-acme.md` - 状态:✅ 已验证 - 备注:02-05 的升级版(TLS 矩阵 + ACME);2026-03 实机跑通。 - `03-03-k3s-traefik-dashboard-acme.md` - 状态:✅ 已验证 - 备注:03-01 Dashboard 与 03-02 ACME 合并配置已核对;模板 `ansible/files/traefik-dashboard-acme/traefik-dashboard-acme.yaml` 正确(已含 local-path persistence)。实机 apply 需确保集群 DNS 可达 Let's Encrypt;可经 `scripts/03-verify-traefik-dashboard-acme.sh` 验证。2026-03。 - `03-04-k3s-cloudflare-tunnel-配置接入.md` - 状态:✅ 已验证 - 备注:本实验室集群完整流程(Zero Trust、Public Hostname、cloudflared Pod、`traefik.kube-system.svc.cluster.local:80`、Dashboard 子域 + `/dashboard/` 访问)已实机跑通(2026-03)。 - `03-05-k3s-local-path-pvc.md` - 状态:✅ 已验证 - 备注:K3s 自带 local-path-provisioner,PVC 本地持久化;待实机验证。 - `03-06-k3s-使用nfs存储.md` - 状态:❓ 未验证 - 备注:待在实际 NFS 服务器 + K3s 集群上完成 PV/PVC + Pod 挂载验证。 - `03-07-k3s-longhorn-持久化存储.md` - 状态:❓ 未验证 - 备注:Longhorn 安装与 PVC 流程待在本环境实机验证。 - `03-08-k3s-ha-集群配置与切换.md` - 状态:❓ 未验证 - 备注:HA 场景步骤已整理,尚未在当前环境完成双 server + 切换演练。 - `03-09-k3s-gitops-集群配置管理.md` - 状态:❓ 未验证 - 备注:框架草案,待选定 Argo CD 或 Flux 后细化。 ### 可选:依赖文档 - `01-04-双控制节点ha.md` - 状态:❓ 未验证 - 备注:文档已拆分安装/配置流程,尚未在双控制节点 + 外部 LB 的完整场景下全链路验证。 - `01-05-armv7-nfs服务安装.md` - 状态:❓ 未验证 - 备注:NFS 安装命令已经过以往经验验证,本仓库对应 armv7 环境需再跑一遍确认导出与权限。 --- ## 4. 高级 Node.js(04-01~04-14) - `04-01-k3s-nodejs-高级部署.md` - 状态:❓ 未验证 - 备注:主入口;具体能力验证依赖 `04-02`~`04-14` 分项。 - `04-02-nodejs-镜像与运行命令.md` - 状态:❓ 未验证 - 备注:镜像 tag/`imagePullPolicy`/`command`/`args` 在实机拉取与启动验证。 - `04-03-nodejs-环境变量与配置注入.md` - 状态:❓ 未验证 - 备注:ConfigMap/Secret 注入与 `printenv`/`curl` 结果一致。 - `04-04-nodejs-端口与Service.md` - 状态:❓ 未验证 - 备注:`targetPort` 与进程监听一致;Endpoints 有地址。 - `04-05-nodejs-资源请求与限制.md` - 状态:❓ 未验证 - 备注:`kubectl top` 与 OOM/节流行为符合预期。 - `04-06-nodejs-探针与健康检查.md` - 状态:❓ 未验证 - 备注:readiness/liveness 与 Endpoint/重启行为验证。 - `04-07-nodejs-调度与亲和.md` - 状态:❓ 未验证 - 备注:`nodeSelector`/亲和/容忍与节点标签实机一致。 - `04-08-nodejs-安全上下文.md` - 状态:❓ 未验证 - 备注:非 root/只读根等策略下应用仍可运行。 - `04-09-nodejs-存储与卷.md` - 状态:❓ 未验证 - 备注:PVC/emptyDir 挂载与读写、配合 `03-05`/`03-07` 存储选型。 - `04-10-nodejs-Ingress与Traefik.md` - 状态:❓ 未验证 - 备注:path/host/入口点注解与 Traefik 路由一致。 - `04-11-nodejs-副本与滚动发布.md` - 状态:❓ 未验证 - 备注:多副本与 `rollout`/`undo` 实机验证。 - `04-12-nodejs-TLS与证书.md` - 状态:❓ 未验证 - 备注:HTTPS 与 `03-02` ACME/Secret 配合验证证书与域名。 - `04-13-nodejs-HPA.md` - 状态:❓ 未验证 - 备注:metrics-server 可用;压测触发扩缩。 - `04-14-nodejs-GitOps与CI流水线.md` - 状态:❓ 未验证 - 备注:流程文档;按 `05-03`/`05-04`/`03-09` 任选一条链路实机跑通后更新。 --- ## 5. 常用应用与监控(05-*) - `05-01-k3s-部署homer首页面板.md` - 状态:❓ 未验证 - 备注:待在集群内按文档部署 Homer,并确认首页可访问。 - `05-02-onenav首页面板.md` - 状态:❓ 未验证 - 备注:包含 armv7 独立部署 + K3s 反向代理两个部分,需分别验证。 - `05-03-k3s-安装gitlab-含runner.md` - 状态:❓ 未验证 - 备注:待完成 GitLab + Runner 安装与基础流水线运行。 - `05-04-k3s-配置gitlab-cicd.md` - 状态:❓ 未验证 - 备注:需在真实仓库上跑通一次 K3s 部署流水线。 - `05-05-prometheus与grafana.md` - 状态:❓ 未验证 - 备注:待完成 kube-prometheus-stack 安装与 Dashboard 访问。 - `05-06-openlist挂载网盘与自动备份.md` - 状态:❓ 未验证 - 备注:待在实际网盘与备份目录上验证周期备份任务。 - `05-07-openclaw应用部署.md` - 状态:❓ 未验证 - 备注:待在 x86 主机用 Docker 部署 OpenClaw,并在 K3s 中完成静态转发验证。 - `05-08-openclaw-k3s-实验部署.md` - 状态:❓ 未验证 - 备注:待在 K3s 内按实验文档直接部署 OpenClaw Gateway,并确认入口可访问。 --- ## 6. 排障与运维(06-*) - `06-01-k3s-networkpolicy-故障排查.md` - 状态:✅ 已验证 - 备注:已在 Fedora 43 + K3s 环境排查并修复过“62:80 不通 / firewalld 拦截 flannel.1 <-> cni0”的问题,脚本与命令均来自实战过程。 - `06-02-运维小结.md` - 状态:❓ 未验证 - 备注:运维建议为经验总结,后续可在日常巡检/备份流程固化后逐条打勾。 --- ## 8. 如何更新本矩阵 - 修改某篇文档的关键步骤(尤其是“操作步骤 / 验证命令 / 预期”)时: - 记得同步更新这里对应条目的“状态”和“备注”。 - 大改后建议先把状态退回“未验证”或“部分验证”,等新流程在实机跑完再改回“已验证”。 - 执行中文文档一键安全对齐或大规模内容调整时,建议把 **验证矩阵** 一起纳入检查范围,避免出现“文档已经改了,但矩阵还显示已验证”的错觉。