Repository Reading Site
K8s-Lab 学习总纲、仓库评估与专家路线图
这份文档回答四个问题: 1. 当前目录里的内容,作为 Kubernetes 学习材料,到底够不够。 2. 这些内容分别在教你什么,为什么这样安排。 3. 如果你的目标不是“会敲命令”,而是“能做架构、能做排障、能带团队搭平台”,还缺哪些关键能力。 4. 你应该怎么学,才能真正把这套内容吃透,而不是学完就忘。 --- 如果你的问题是: “这套内容能不能把我从
K8s-Lab 学习总纲、仓库评估与专家路线图
文档目的
这份文档回答四个问题:
- 当前目录里的内容,作为 Kubernetes 学习材料,到底够不够。
- 这些内容分别在教你什么,为什么这样安排。
- 如果你的目标不是“会敲命令”,而是“能做架构、能做排障、能带团队搭平台”,还缺哪些关键能力。
- 你应该怎么学,才能真正把这套内容吃透,而不是学完就忘。
先给结论
结论一:这套内容“很够入门到进阶”,但“不够直接把你送到 CTO”
如果你的问题是:
“这套内容能不能把我从 K8s 小白带到一个很扎实的云原生工程师起点?”
答案是:能,而且质量不低。
如果你的问题是:
“只靠这一个目录,能不能直接把我带到可以独立负责公司级平台架构、生产事故排查、技术决策和团队治理的 CTO 水平?”
答案是:不能。
这不是因为仓库差,而是因为“专家能力”本来就不只是教程堆出来的。专家能力至少由下面几部分组成:
- 对 K8s 核心机制的理解
- 对 Linux、网络、容器运行时、存储系统的底层理解
- 对真实生产故障的处理经验
- 对高可用、容灾、安全、成本、组织协作的系统化认知
- 对业务平台设计的取舍能力
这个仓库已经覆盖了其中很大一部分,但还没有覆盖全部。
结论二:完整学透这套仓库,你可以达到什么水平
如果你认真学完,并且不是只看文档,而是做到“能复述、能复现、能排障、能解释原理”,你至少可以达到:
- 能独立搭一套单控制面实验集群
- 能理解 Pod / Deployment / Service / Ingress / PVC / RBAC / NetworkPolicy 等核心对象
- 能做常见发布、配置、权限、存储、监控、GitOps 的基础建设
- 能处理一批典型 K8s 故障
- 能开始理解 CRD / Operator 这种更高级的扩展模式
- 能对“一个平台为什么这么设计”形成初步判断
这已经不是“只会敲命令”的水平了,而是有潜力成长为平台工程师、SRE、云原生架构师的起点。
结论三:如果目标是专家,这个仓库应该作为“主训练营”,不是“最终毕业证”
更准确的定位是:
- Phase 0-4:K8s 核心知识 + 生产常见能力 + 故障排查方法论
- ml-platform:把 K8s 用到真实业务场景里,接触 Operator 思维
- saas-platform:把“集群能力”上升为“平台能力”和“业务架构能力”
也就是说,这个仓库不是一个碎片化笔记仓库,而是一个相对完整的训练营骨架。
我对这个仓库的总体评分
下面的评分不是“绝对标准”,而是从“培养专家能力”的角度做的评估。
| 维度 | 评分(5 分) | 评价 |
|---|---|---|
| K8s 架构入门 | 4.5 | 架构图、组件职责、声明式思想、控制循环都有覆盖 |
| 集群搭建与前置条件 | 4.5 | 包含 OS、containerd、WireGuard、kubeadm、CNI,且有原因解释 |
| 工作负载与服务发现 | 4.0 | Deployment、Service、StatefulSet、Job 等核心对象覆盖完整 |
| 配置与权限 | 4.0 | ConfigMap、Secret、RBAC 都有,适合从零建立正确习惯 |
| 调度、网络、存储 | 4.0 | 已覆盖常见生产主题,但深度还可以继续增强 |
| 可观测性 | 3.5 | 指标、日志、HPA 有了,但 Tracing、SLO、告警治理还不够深 |
| Helm / Harbor / GitOps | 4.0 | 很适合建立现代平台交付思维 |
| CRD / Operator | 4.5 | 不只是概念,还带了真实代码和业务案例 |
| 故障排查训练 | 4.0 | 场景化排查已经很有价值,但还没覆盖更底层的复杂事故 |
| 高可用与容灾 | 2.5 | 提到了 etcd 备份和升级,但 HA、恢复演练、灾难切换不够系统 |
| 安全体系 | 3.0 | PSS、RBAC 有了,但证书、Secret 治理、策略引擎、供应链安全仍不足 |
| 企业平台治理 | 3.0 | saas-platform 提供了架构设计视角,但更多是方案,缺少落地代码与运维闭环 |
一句话概括:
这套内容对“小白到中高级候选人”非常有价值,但对“成熟专家”还缺高可用、深度排障、底层机制、组织治理四大块。
当前目录到底都有什么,它们分别在教你什么
1. README.md
这是全仓库的“地图”。
它的作用不是讲细节,而是让你先知道:
- 整体目标是什么
- 实验环境长什么样
- 学习路线怎么分阶段
- 每一阶段大概解决什么问题
原理上,这一步非常重要。
一个小白最容易犯的错误,不是“不会命令”,而是“没有全局地图”。没有地图的人,会把 Kubernetes 学成几十个零散命令和 YAML 字段,最后脑子里没有系统。
2. phase-0/
这是整个仓库里最关键的一阶段,因为它回答的是:
“为什么 K8s 能跑起来?”
这一阶段覆盖了:
- K8s 组件架构
- Linux 系统前置条件
- Swap、内核模块、sysctl、containerd
- WireGuard 组网
- kubeadm 初始化
- 节点标签、taint、kubeconfig
这里最有价值的地方不是“怎么装”,而是“为什么一定要这样装”。
例如:
- 为什么要关 swap
- 为什么 containerd 要配
SystemdCgroup=true - 为什么 kubelet 的
--node-ip会影响后续kubectl logs/exec - 为什么
controlPlaneEndpoint配错会导致 join 异常 - 为什么没有 CNI 时节点会
NotReady
这部分决定你以后排障时是不是只会重装。
3. phase-1/
这是 K8s 最核心的资源对象阶段。
你会学到:
- Deployment / ReplicaSet / Pod
- Service / NodePort
- ConfigMap / Secret
- StatefulSet / DaemonSet / Job / CronJob
- RBAC / ServiceAccount / 最小权限
这一阶段解决的是:
- 应用怎么被调度和维持副本数
- 服务怎么互相访问
- 配置和敏感信息怎么注入
- 什么应用适合有状态,什么适合无状态
- 权限为什么不能乱给
如果这一阶段只学“字段名”,你会觉得 K8s 很碎。 如果这一阶段学“每个对象解决了什么问题”,你会开始建立平台工程直觉。
4. phase-2/
这是从“会用 K8s”进入“会做平台”的阶段。
覆盖了:
- 高级调度
- 存储与 NFS 动态供给
- Ingress 与 NetworkPolicy
- Prometheus / Grafana / Loki / HPA / etcd 备份
这是很多人第一次感受到 K8s 真正复杂度的地方,因为这里涉及的不再只是资源对象,而是:
- 资源如何落到合适的节点
- 网络流量如何进入、如何隔离
- 数据如何持久化
- 如何知道系统现在是不是健康
平台能力的本质不是“部署应用”,而是:
在规模、隔离、持久化、观测、恢复之间做系统性的设计。
5. phase-3/
这是偏生产工程化的阶段。
覆盖了:
- Helm 包管理
- Harbor 镜像仓库
- ArgoCD GitOps
- Pod Security Standards
- CRD / Operator
- etcd 备份恢复
这一阶段很重要,因为它把“资源对象”升级成了“交付体系”和“平台治理”:
- Helm 解决复用和参数化
- Harbor 解决镜像生命周期和供应链入口
- GitOps 解决变更审计、回滚和集群漂移
- PSS 解决基础安全准入
- CRD/Operator 解决把业务能力封装成平台原语
这一步开始,你不再只是“会部署服务”,而是开始思考“平台怎么让别人更容易部署服务”。
6. phase-4/
这是“从会搭到会救火”的阶段。
这里的价值非常大,因为真正区分初学者和工程师的,不是能不能创建 Deployment,而是:
- 出问题时能不能快速缩小范围
- 能不能根据现象推导出故障层次
- 能不能从 Pod、Node、网络、存储、权限多个维度定位
排障能力的核心不是记住答案,而是建立分层思维:
- 是应用层问题?
- 是 Pod 生命周期问题?
- 是调度问题?
- 是 Service/Endpoints 问题?
- 是节点问题?
- 是 kubelet / containerd / CNI / DNS / etcd 问题?
phase-4 已经开始训练这条思路。
7. ml-platform/
这是本仓库非常加分的部分。
它不是再讲一遍 K8s 名词,而是把 K8s 用到了一个“真实业务管控场景”里:
- 训练作业
- 推理服务
- 自定义资源
MLModel - Controller 监听资源变化并创建 Deployment / Service
这一部分的学习意义在于:
- 你会知道 CRD 不是为了考试,而是为了把业务对象变成平台对象
- 你会理解 Reconcile Loop 不是抽象概念,而是平台自动化的核心
- 你会开始接触“业务平台化”的视角
这一步对想走架构方向的人很重要。
8. saas-platform/
这部分更偏“平台架构设计说明书”。
它的主要价值不是教你 kubectl,而是教你:
- 技术选型为什么这样做
- 多租户、计费、模型、训练、数据、运营模块怎么拆
- 模块之间如何协作
- SaaS 平台要考虑哪些业务流转和治理问题
如果你只想当使用者,这部分可能觉得“太虚”。 但如果你目标是架构负责人,这部分反而是必须补的,因为专家不只是解决技术问题,还要设计系统边界和演进路径。
9. SERVICE-ACCESS.md
这是一份实验环境接入说明。
它的价值是:
- 统一记录集群、节点、服务、端口、凭据
- 方便你把实验环境作为长期练习环境使用
但同时它也暴露了一个非常重要的专家级意识:
明文凭据不应该长期直接放在普通文档中。
如果这个目录会被分享、备份、同步或者公开,这会成为安全风险。
作为“想成为 CTO 的学习者”,你必须从现在就建立这种敏感度。
这套内容为什么值得学
1. 它不是只教命令,而是在讲设计动机
从抽样内容看,这个仓库大量使用了下面这种结构:
- 先说问题是什么
- 再说为什么会有这个组件/命令/参数
- 最后才给操作和验证
这很关键。
Kubernetes 最难的从来不是命令本身,而是“为什么这里会失败、为什么这个配置必须这样写、为什么这类资源要存在”。
2. 它不是只有资源对象,还在训练“系统观”
很多入门资料只讲:
- Pod
- Deployment
- Service
但这个仓库已经扩展到:
- 组网
- 存储
- 可观测
- GitOps
- Operator
- 故障场景
- 业务平台架构
这说明它不是单纯的语法教程,而是在往系统工程方向靠。
3. 它包含真实代码和真实业务映射
只会写 YAML,不足以成为专家。
ml-platform 的价值在于,它把 K8s 资源和代码、业务、控制器联系起来了。你会看到:
- 自定义资源类型如何定义
- Controller 怎样读取期望状态
- 怎样创建 Deployment / Service
- 为什么 OwnerReference、状态回写、Probe 会重要
这比只读概念强很多。
4. 它有排障训练,不是只追求“成功截图”
优秀的 K8s 学习材料,必须包含失败案例。
因为生产环境里你遇到的不是“kubectl apply 成功”,而是:
PendingCrashLoopBackOffImagePullBackOffNode NotReady- PVC 绑定失败
- Service 不通
- 监控缺数据
一个只展示 happy path 的教程,对工作帮助有限。
但如果目标是“专家/架构负责人”,这套内容还缺什么
下面这些缺口,不是说仓库完全没提,而是说还不够构成专家级闭环。
1. 控制面高可用和生产级生命周期管理不够深
当前材料更多是单控制面实验集群视角。
如果你要负责公司平台,必须补齐:
- 3 Master / 5 etcd 的高可用拓扑
- 外部负载均衡器
- API Server 高可用接入
- 控制面证书轮转
- 组件版本升级策略
- 回滚策略
- 故障域设计
为什么重要:
单 Master 学的是“能跑起来”,HA 学的是“不能轻易挂掉”。
2. 对 Linux / 容器运行时 / 内核机制的深度还不够
真正的复杂问题,常常会落到 K8s 下面那一层:
- cgroups
- namespaces
- overlayfs
- veth pair
- bridge
- iptables / nftables / IPVS
- conntrack
- containerd / shim / runc
如果你不懂这些,很多故障会停留在“kubectl 看不出来,但就是不通/不稳”的水平。
3. 网络深度还可以再提升一大截
当前仓库已经覆盖:
- Ingress
- NetworkPolicy
- Calico
- WireGuard
但真正专家还需要理解:
- Pod 到 Pod 的完整报文路径
- 跨节点封装方式
- kube-proxy 的 iptables / IPVS 差异
- CoreDNS 的解析链路
- DNS 故障定位
- eBPF / Cilium 的基本思想
- Gateway API
- Service Mesh 何时值得引入
4. 存储深度偏入门到中级,离生产复杂场景还有距离
NFS 动态供给适合教学,但生产里你还需要理解:
- CSI 架构
- 块存储 vs 文件存储 vs 对象存储
- Ceph / Rook
- local PV
- 数据库为什么不应该轻易放在 NFS 上
- IO 延迟对应用的影响
- 快照、备份、恢复一致性
5. 安全只覆盖了“基础准入”,还没有形成完整体系
还需要补:
- Secret 加密与轮换
- cert-manager
- External Secrets
- 镜像签名与供应链安全
- Admission Webhook
- OPA Gatekeeper / Kyverno
- 审计日志
- 多租户安全边界
- 节点加固和基线检查
6. 可观测性还需要升级到 SRE 视角
现有内容已经很好地覆盖了 metrics 和 logs。
但如果你想做平台负责人,还需要补:
- Tracing
- SLI / SLO / Error Budget
- 告警降噪
- 可观测数据保留策略
- 根因分析流程
- 事故复盘机制
7. 真实生产排障还需要更多复杂故障
当前排障实验很适合入门和面试,但还可以继续扩展:
- CNI 故障
- DNS 故障
- kubelet 证书失效
- etcd 空间不足
- inode 打满
- conntrack 打满
- CPU steal 高
- 时钟漂移导致证书/调度问题
- 节点磁盘压力驱逐
- API Server 延迟飙高
8. 组织治理和平台治理还需要实战化
一个 CTO 或平台负责人,不只是会搭技术组件,还要能回答:
- 多团队 namespace 怎么划分
- RBAC 按人、按团队、按环境如何设计
- 发布流程如何管控
- 谁能改生产
- Secret 和证书谁负责
- 故障值班制度怎么落地
- 成本如何核算
- 技术债如何治理
saas-platform 已经有架构思路,但还缺“运维制度 + 平台治理规则 + 运行指标”的落地实践。
对你来说,这套内容“够不够”的准确答案
如果你的目标是“入门 + 进阶 + 找到方向”
够。
而且比市面上很多只讲零散命令的视频课程更好,因为它已经把架构、实战、排障和平台化思维串起来了。
如果你的目标是“独立负责一个中小团队的 K8s 平台原型”
大体够,但你需要把这套内容真正跑通,并补上少量增强项:
- HA 控制面
- Secret 治理
- 告警体系
- 备份恢复演练
- 更严格的生产安全策略
如果你的目标是“成为专家 / 技术负责人 / CTO”
不够单独完成目标,但它绝对值得作为主线起点。
更直接地说:
学透这个仓库,你能拥有一个非常像样的基础盘。 但专家不是靠“学完一个仓库”产生的,而是靠“学透基础盘 + 深挖底层 + 反复实战 + 经历故障 + 做系统取舍”成长出来的。
你应该怎么学,才不会变成“照着敲完就结束”
学习原则一:每个对象先问“它解决什么问题”
例如学 Deployment,不要先背字段。
应该先问:
- 为什么需要副本控制
- 为什么需要滚动更新
- 为什么 Pod 不直接自己管理自己
- 为什么要有 Controller
如果问题没想明白,字段记住也会很快忘。
学习原则二:每个命令都要知道“它在和谁说话”
这是从“小白”变成“能排障的人”的关键。
例如:
kubectl get pod:本质是在请求 API Server 获取对象状态kubectl describe pod:本质是在查看资源对象 + Eventskubectl logs:请求经 API Server 转发,最终拿到节点上的容器日志kubectl exec:请求经 API Server 和 kubelet,进入容器进程命名空间kubectl apply:是在提交“期望状态”
你要把每个命令背后的链路想清楚,而不是只记语法。
学习原则三:必须做“验证”和“破坏”
只做成功路径,学不出真本事。
每学完一个主题,至少做两件事:
- 验证它真的生效了
- 故意制造一个故障,再排回来
例如学 Service:
- 成功验证:Pod 能通过 Service 被访问
- 故障验证:故意改错 selector,观察 Endpoints 为空,再排查
学习原则四:每一章都要输出自己的“讲解稿”
你说想成为专家、想成为 CTO,那么从现在开始就要练“讲清楚”。
每学完一篇文档,都要自己写出三段话:
- 这个机制是什么
- 它解决了什么问题
- 它失败时我怎么排
如果你说不清楚,说明其实还没学透。
学习原则五:只背命令一定会失败,必须建立分层模型
建议你在脑子里长期保持下面这几层:
- Linux 与网络基础层
- 容器运行时层
- Kubernetes 控制面层
- Kubernetes 数据面层
- 应用与业务层
- 平台治理与组织流程层
以后遇到任何问题,都先判断问题落在哪一层,再往上或往下追。
建议的学习顺序
第一阶段:先建立“地图”和“控制面直觉”
按这个顺序:
README.mdphase-0/01-k8s-architecture.mdphase-0/02-os-preparation.mdphase-0/04-cluster-init.mdphase-0/03-wireguard-network.mdphase-0/05-node-labels-kubeconfig.md
这一阶段你必须掌握的,不是所有命令,而是这些问题:
- API Server、etcd、Scheduler、Controller Manager、kubelet 分别做什么
kubectl apply之后资源如何一步步跑起来- 为什么 kubeadm 能把控制面拉起来
- 为什么没有 CNI 就不 Ready
- kubelet 的
node-ip为什么关键
第二阶段:把核心对象学透
按这个顺序:
phase-1/01-workloads-and-services.mdphase-1/02-configmap-secret.mdphase-1/03-statefulset-daemonset-job.mdphase-1/04-rbac.md
这一阶段你要形成下面的判断能力:
- 什么应用该用 Deployment,什么该用 StatefulSet
- Service 解决的是“稳定入口”,不是“进程发现”
- Secret 默认并不等于安全
- RBAC 设计的核心是最小权限,不是“先给 admin 跑通”
第三阶段:进入平台能力
按这个顺序:
phase-2/01-scheduling-advanced.mdphase-2/02-storage-nfs.mdphase-2/03-ingress-networkpolicy.mdphase-2/04-monitoring-observability.md
这一阶段你要有三个升级:
- 从“应用能跑”升级到“资源怎么分配”
- 从“Pod 互通”升级到“流量怎么治理”
- 从“出问题再看”升级到“平时就能观测”
第四阶段:进入生产工程化
按这个顺序:
phase-3/01-helm-harbor.mdphase-3/02-argocd-gitops.mdphase-3/03-security-crd-advanced.md
这一阶段最重要的不是学工具,而是理解:
- 为什么 GitOps 比手工
kubectl apply更适合团队协作 - 为什么平台应该提供可复用模板和自动化能力
- 为什么 Operator 是“把经验写进控制器”
第五阶段:练排障和表达
按这个顺序:
phase-4/01-troubleshooting-lab.mdphase-4/02-interview-guide.md
这一阶段的目标不是准备面试,而是把前面的知识串成“能说、能排、能判断”的能力。
第六阶段:进入“平台化思维”
按这个顺序:
ml-platform/docs/ml-pipeline.md- 阅读
ml-platform/operator/代码 - 阅读
saas-platform/docs/technical-architecture.md - 再按模块阅读
saas-platform/docs/
这一阶段你会完成认知升级:
- 从“资源对象”升级到“平台抽象”
- 从“部署服务”升级到“设计平台”
- 从“命令执行者”升级到“系统设计者”
每个阶段你必须达到的学习产出
| 阶段 | 你必须交出的成果 |
|---|---|
| Phase 0 | 画出 K8s 核心架构图;口头讲清 kubectl apply 的完整链路;能解释 kubeadm、CNI、kubelet、containerd 的关系 |
| Phase 1 | 自己写一套 Deployment + Service + ConfigMap + Secret + RBAC 的示例,并能解释每个字段为什么存在 |
| Phase 2 | 能独立设计一个带调度约束、存储、Ingress、监控的业务部署方案,并讲清流量和数据路径 |
| Phase 3 | 能解释 Helm、Harbor、ArgoCD、PSS、CRD、Operator 在平台里的角色分工 |
| Phase 4 | 面对 CrashLoopBackOff、Pending、Service 不通、Node NotReady、OOMKilled 等问题,能给出标准排查顺序 |
| ml-platform | 能从代码里讲清 Reconcile Loop、OwnerReference、Deployment/Service 自动创建、状态回写 |
| saas-platform | 能讲清一个 AI SaaS 平台为什么这样拆模块、如何做多租户、计费、训练、推理和运营治理 |
如果这些成果你做不到,就不要急着往下走。
你必须掌握的关键命令,以及背后原理
下面不是完整命令大全,而是你必须真正理解的几类命令。
1. 查询类命令
典型命令:
kubectl getkubectl describekubectl get eventskubectl top
原理:
- 这些命令大多在查询 API Server 里的集群状态
get偏结构化、便于列表查看describe偏详细、会把 Events、Conditions、挂载、探针等信息串起来events是资源行为时间线top不是查 Prometheus,而是查 metrics-server
你必须知道:
- 为什么
get适合先看全局 - 为什么
describe是排障第一站 - 为什么
top看不到历史趋势
2. 日志与进入容器
典型命令:
kubectl logskubectl logs --previouskubectl exec -it
原理:
logs看的是真正容器标准输出日志--previous对排查反复重启的容器非常关键exec不是“登录服务器”,而是进入容器命名空间执行命令
你必须知道:
- CrashLoop 时为什么当前日志可能来不及看
- 为什么容器里有的命令不存在
- 为什么很多镜像里没有
bash
3. 生命周期与发布类命令
典型命令:
kubectl applykubectl rollout statuskubectl rollout undokubectl set image
原理:
apply是提交期望状态,不是立即保证成功rollout status看的是控制器滚动过程是否完成undo依赖 Deployment 的历史版本记录set image是在修改 Deployment 模板
你必须知道:
- 为什么
apply成功不等于 Pod 一定能启动 - 为什么 Readiness Probe 会影响滚动更新节奏
4. 权限与安全类命令
典型命令:
kubectl auth can-ikubectl create serviceaccountkubectl create role
原理:
- 所有 API 操作都要经过认证和授权
- RBAC 的本质不是用户体验,而是边界控制
- “能用”不等于“该给”
你必须知道:
- 为什么不要随便给
cluster-admin - 为什么 ServiceAccount 是工作负载身份的核心
5. 节点与系统级命令
典型命令:
systemctl status kubeletjournalctl -u kubeletsystemctl status containerdip addrss -lntupsysctl -a
原理:
- K8s 不是漂浮在空中的,它最终跑在 Linux 上
- kubelet、containerd、WireGuard 都是宿主机服务
- 网络、端口、内核参数问题,最终都要靠系统命令定位
你必须知道:
- 为什么
kubectl看不出所有问题 - 为什么节点故障最终要回到宿主机日志
6. etcd 与控制面相关命令
典型命令:
etcdctl snapshot savekubeadm initkubeadm joinkubeadm upgrade plan
原理:
kubeadm管的是控制面初始化和生命周期etcdctl直连 etcd,是控制面状态的底层操作工具- 备份 etcd 不是“可选项”,而是集群生命线
你必须知道:
- etcd 丢了意味着什么
- 为什么恢复 etcd 不是简单把文件拷回去
作为专家候选人,你现在就应该建立的安全意识
1. 文档中出现了明文凭据
SERVICE-ACCESS.md 中包含:
- 登录地址
- 用户名
- 密码
这在实验环境里方便,但从工程治理角度看存在风险。
更好的实践是:
- 把敏感信息放密码管理器
- 如果必须落文档,至少做访问控制
- Git 仓库中用密文方案而不是明文
- 对外分享前先脱敏
2. 顶层 manifests/ 和 scripts/ 目录目前是空的
这说明当前仓库更像“学习主线文档 + 局部实战案例”,而不是一个完全整理好的统一工程入口。
这不影响学习,但说明后续如果你要把它进化成长期平台仓库,最好补齐:
- 统一 manifests 目录规范
- 统一脚本入口
- 统一环境变量和参数说明
3. 当前目录不是 Git 仓库
这意味着:
- 当前目录可能只是一个普通文件夹副本
- 变更历史不可追踪
- 后续如果你要长期维护,建议初始化 Git
对专家来说,技术文档和平台资产本身也应该纳入版本管理。
我建议你后续补齐的“专家路线图”
这里不是泛泛而谈,而是基于当前仓库的自然延伸给出的补强路线。
路线一:把单控制面实验升级成 HA 控制面
建议补:
- 3 Master
- 外部 LB 或 Keepalived + HAProxy
- stacked etcd 与 external etcd 的差异
- 控制面故障演练
为什么:
这会让你从“能搭起来”走向“懂高可用”。
路线二:补容器与 Linux 底层
建议专题学习:
- namespace
- cgroup v2
- containerd / runc
- overlayfs
- veth / bridge
- iptables / nftables / conntrack
为什么:
K8s 的很多问题,本质上是 Linux 问题在 K8s 里的表现。
路线三:补网络深潜
建议专题学习:
- kube-proxy
- CoreDNS
- Calico 数据路径
- Cilium / eBPF 入门
- Gateway API
为什么:
很多“服务不通”“偶发超时”“跨节点异常”最后都要回到网络路径分析。
路线四:补存储深潜
建议专题学习:
- CSI
- Ceph / Rook
- Local PV
- Snapshot / Restore
- 数据一致性与备份策略
为什么:
真正难伺候的生产系统,往往不是无状态服务,而是数据库、消息队列、搜索、对象存储。
路线五:补安全治理
建议专题学习:
- cert-manager
- External Secrets
- OPA Gatekeeper 或 Kyverno
- 镜像漏洞扫描与签名
- 审计日志
为什么:
生产平台最大的风险不只是宕机,还有越权、泄密和供应链攻击。
路线六:补 SRE 体系
建议专题学习:
- SLI / SLO
- 告警设计
- 容量规划
- 故障复盘
- 值班体系
为什么:
平台负责人不只是“把系统搭起来”,还要“让系统长期稳定运行”。
路线七:补业务架构治理
建议结合 saas-platform 继续做:
- 环境分层设计
- 多租户隔离策略
- 成本归因
- 发布治理
- 团队职责边界
为什么:
到了 CTO 视角,技术平台一定和业务模型、组织边界、成本结构绑定。
给你的最终建议
建议一:不要急着“学更多”,先把这套内容学透
很多人最大的误区是:
- 学了很多主题
- 看了很多视频
- 收藏了很多仓库
- 但没有一套真正学透
你当前目录里的材料已经够你深挖很久。
先把它学透,再扩展,会比四处撒网有效得多。
建议二:每学一章都要写自己的笔记和复盘
至少写三类内容:
- 这个机制是什么
- 它解决什么问题
- 它挂了我怎么排
这会极大提升你的理解密度。
建议三:以后你看到任何命令,都要追问“底层发生了什么”
这才是从使用者走向专家的开始。
建议四:把“复现成功”升级为“设计 + 排障 + 讲解”
如果你想走到 CTO,不要把目标定成“我能跑起来”。
你的目标应该是:
- 我能自己设计这套东西
- 我能解释为什么这样设计
- 我能在它坏的时候修好
- 我能教会别人
一句话总结
当前目录里的内容,足够成为一套非常好的 Kubernetes 主学习营,能把你从小白带到扎实的进阶水平,并初步触达平台化、Operator 和架构思维。
但如果你的目标是专家或 CTO,它还不是终点,而是非常值得深耕的起点。真正的下一步,是把这套内容学透、跑透、讲透、拆透、排透,再沿着高可用、底层机制、安全治理和 SRE 体系继续升级。