不期而至🎁 惊喜礼盒
🎁 Surprise · 不定期 · 随缘更新


🎁 Surprise · 不定期 · 随缘更新
🎁 SURPRISE
谢谢你停在这里。愿你被温柔以待,也愿你带着一点勇气继续往前——这是我留给访客的小小礼物 🎀✨。
— threetwoa
(=;ェ;=) 客来不妨坐下,落叶声里续一壶茶;猫会自己找你。
走进数字花园K8s 组件名一堆,记不住很正常。这两张图一个讲「请求怎么从 YAML 落到 Pod」,一个讲「出事时按哪七条线查」。下面尽量跟图面走,当可读速查,不当完整教程。
旁链(不硬并):容器层命令见 Docker 命令背会这条线就够日常(待发布);运维工具选型见 运维自动化选型:先摸清这十件工具(待发布)。网络基础旁链文末。

图题:Kubernetes 架构全景图
副标:Kubernetes = API 驱动的分布式资源控制系统
| 层 | 图面内容 |
|---|---|
| 用户接入 | kubectl / UI Dashboard / 其他 API 客户端 |
| Control Plane | API Server、etcd、Scheduler、Controller Manager |
| Worker Nodes | 多节点:kubelet、kube-proxy、Container Runtime(containerd)、Pod |
| 底座能力 | 网络(CNI)、配置管理、存储(Volume)、集群特性 |
Control Plane(控制平面)
| 组件 | 图面职责 |
|---|---|
| API Server | 集群统一入口;认证 / 鉴权 / 校验 / 路由;提供 REST API |
| etcd | 集群状态存储(Key-Value);保存全部状态数据 |
| Scheduler | 决定 Pod 调度到哪个 Node;资源评估 / 负载均衡 / 亲和性等 |
| Controller Manager | 维持期望状态;各种控制器的集合 |
常见控制器(图面列举):Deployment、ReplicaSet、Node、Job、Endpoint……
Worker Node(工作节点)
| 组件 | 图面职责 |
|---|---|
| kubelet | 与 API Server 通信;管理本机 Pod 生命周期 |
| Container Runtime | 真正跑容器(如 containerd) |
| kube-proxy | Service 网络代理与负载均衡 |
| Pod | 最小调度单位;跑一个或多个容器 |
底座四块
| 块 | 图面要点 |
|---|---|
| 网络(CNI) | Pod 互通(扁平网络):Calico / Flannel / Cilium / Weave Net…… |
| 配置管理 | ConfigMap(配置数据)、Secret(敏感数据) |
| 存储(Volume) | emptyDir / hostPath / NFS…… |
| 集群特性 | 自愈;弹性伸缩(HPA/VPA);滚动更新;服务发现(DNS) |
图面七步:
记这条线就够:你交「想要什么」,集群用调和环不停往那个状态靠。
一、核心组件
API Server 统一入口 → etcd 存状态 → Scheduler 选节点 → Controller Manager 做收敛。
二、Worker Node
kubelet 管生命周期;Runtime 跑容器;kube-proxy 做 Service 代理;Pod 是载体。
三、核心对象关系
1Deployment → ReplicaSet → Pod → Container| 对象 | 图面一句话 |
|---|---|
| Deployment | 声明式更新、回滚 |
| ReplicaSet | 保证 Pod 副本数 |
| Pod | 跑容器的载体 |
| Container | 业务容器本身 |
四、网络模型
1Ingress → Service → Pod| 对象 | 图面一句话 |
|---|---|
| Ingress | 七层入口:域名路由、TLS、灰度等 |
| Service | 稳定访问入口 + 负载均衡 |
| Pod | 真实实例;IP 可能变 |
五、存储模型
1PVC → PV → StorageClass| 对象 | 图面一句话 |
|---|---|
| PVC | 存储需求(申请) |
| PV | 持久化存储资源 |
| StorageClass | 存储类;动态供应 |
六、核心思想(图脚)
| 词 | 意思 |
|---|---|
| 声明式 Declarative | 只描述期望状态 |
| 控制循环 Reconcile Loop | 持续向期望收敛 |
| 最终一致性 Eventually Consistent | 告诉 K8s「要什么」,它保证「达到」 |
图脚原句气质:你只需要告诉 K8s「要什么」,K8s 保证「达到期望状态」。

图题:Kubernetes 核心知识全景图(7 大核心主题)
Pod 侧(图面清单气质)
kubectl get pod -o widekubectl describe podkubectl logs(含 previous)kubectl execkubectl top podNode 侧
kubectl get node / describe nodedmesg)journalctl -u kubeletcrictl;存储与网络再往下拆常见 Pod 状态(图面)
| 状态 | 含义(图面) |
|---|---|
| Pending | 调度未完成 |
| Running | 正在运行 |
| CrashLoopBackOff | 容器反复启动失败 |
| ImagePullBackOff / ErrImagePull | 镜像拉取失败 / 错误 |
| OOMKilled | 内存溢出被杀 |
| ContainerCreating | 创建中(常伴随拉镜像) |
| Completed | 任务正常结束 |
| Unknown / Error | 未知 / 异常退出 |
| CreateContainerConfigError 等 | 配置或创建阶段出错 |
| 概念 | 图面要点 |
|---|---|
| Taints | 节点排斥某类 Pod;Effect:NoSchedule / PreferNoSchedule / NoExecute |
| Tolerations | Pod 声明容忍,才能上带对应污点的节点 |
| nodeAffinity | 按节点标签硬选 / 软偏好(required / preferred) |
| podAffinity | 倾向和某些 Pod 靠近 |
| podAntiAffinity | 倾向和某些 Pod 远离 |
常用命令气质:
1kubectl taint nodes <node> key=value:NoSchedule2kubectl taint nodes <node> key:NoSchedule-Pod 网络检查线(图面)
get pod -o wide)ping 等)nslookup / dig)curl)常见现象
节点侧常用命令(图面)
ip addr / ip route、ss、ping、traceroute、nslookup、curl、tcpdump
NetworkPolicy:kubectl get networkpolicy / describe networkpolicy
1外部流量2 → Ingress Controller(Nginx / Traefik …)3 → Service(ClusterIP / NodePort / LoadBalancer)4 → 各 Node 上的 Pod每个 Node 上大致有:kube-proxy(iptables / IPVS)、CNI(Calico / Flannel / Cilium…)、Container Runtime、Pod。
Overlay / 底层常见词:VXLAN、BGP、IPIP、路由。
和架构图右侧「Ingress → Service → Pod」是同一条故事,这里多了「进集群后怎么在节点间铺」。
关系(图面)
1Pod → PVC → PV → StorageClass → 后端存储(NFS / 云盘 / 分布式存储…)常见 Volume 类型
| 类型 | 图面说明 |
|---|---|
| emptyDir | 临时;Pod 删则没 |
| hostPath | 挂节点本地路径 |
| nfs | NFS 共享 |
| configMap / secret | 挂配置 / 敏感数据 |
| persistentVolumeClaim | 经 PVC 申请持久卷 |
排查
kubectl get/describe pvc、get/describe pvget/describe storageclass(或 sc)df -h、相关 events常见坑
PVC Pending、PV 未绑定、配置错误、磁盘满、网络存储不可达、权限不够。
图面七步气质:
金三角(图面)
这三问比瞎敲命令有用:先对齐「该什么样」,再找差。
| 格 | 图面条目 |
|---|---|
| 核心资源对象 | Pod、Deployment、Service、Ingress、ConfigMap/Secret、PV/PVC、Job/CronJob、StatefulSet、DaemonSet、HPA、NetworkPolicy、ServiceAccount… |
| 核心组件 | API Server、etcd、Scheduler、Controller Manager、kubelet、kube-proxy、Container Runtime |
| 监控 & 日志 | Prometheus + Grafana;EFK / Loki;Alertmanager |
| 安全 | RBAC、NetworkPolicy、PodSecurity、镜像安全、Secret 加密、Security Context |
| 高可用 & 扩展 | 多 Master、etcd 集群、Cluster Autoscaler、HPA/VPA、CRD、Operator、Metrics Server、Dashboard… |
| 最佳实践 | requests/limits;liveness/readiness;优雅关闭(preStop);反亲和避免单点 |
| 类 | 命令气质 |
|---|---|
| 资源管理 | kubectl get pod -A、get node -o wide、describe <资源> <名> |
| 日志调试 | kubectl logs(含 -p / -c)、kubectl exec -it <pod> -- bash |
| 资源监控 | kubectl top pod、kubectl top node |
| 事件 | kubectl get events -A --sort-by=.lastTimestamp |
| 集群信息 | kubectl version、cluster-info、get cs(组件状态,视版本而定) |
| 节点维操 | cordon / drain --ignore-daemonsets / uncordon |
底部组件关系(图面简化)
1kubectl / UI2 ↓3API Server ←→ etcd4 ↓5Scheduler / Controller Manager6 ↓7kubelet / kube-proxy → Nodes → Pods和架构全景是同一套骨架:所有路都先过 API Server。
| 场景 | 命令 |
|---|---|
| 看 Pod 落点 | kubectl get pod -o wide / -A |
| 看事件 | kubectl describe pod <name>;kubectl get events --sort-by=.lastTimestamp |
| 看日志 | kubectl logs <pod>;挂了加 -p / -c |
| 进容器 | kubectl exec -it <pod> -- bash |
| 看资源 | kubectl top pod / top node |
| 污点 | kubectl taint nodes <node> key=value:NoSchedule |
| 节点封锁/腾空 | cordon / drain / uncordon |
| 存储 | kubectl get pvc,pv,sc + describe |
| 网络策略 | kubectl get networkpolicy -A |
Docker 本机命令不在本篇展开,去旁链 Docker 速查。
| 旁链 | 它管啥 | 别跟本篇混 |
|---|---|---|
| Docker 命令背会这条线就够日常(待发布) | Docker CLI | 单机容器命令 ≠ 集群编排 |
| 运维自动化选型:先摸清这十件工具(待发布) | 运维工具地图 | 工具选型 ≠ K8s 控制面 |
| 网络协议靠谁才能活:一张依赖图(待发布) | 协议依赖 | 协议栈 ≠ CNI/Service 排障 |
| 网卡那四栏到底各自干嘛 | 网络基础四栏 | 基础课 ≠ 集群网络架构图 |
| Linux 目录结构运维速记(待发布) | 主机目录 | Node 侧速记 ≠ 编排模型 |
![] = 2;配图文件 = 2复制链接或生成海报,发给感兴趣的人。

公众号竖版术语海报宣称「100 个」,本批原料只有约 38 条可读条目。当可检索词表用,别当完整百科。
2026-08-11部分内容可能已过时
分享你的想法,与大家交流讨论
像发消息一样写就好:点工具栏插入表情 / 图片,表情会直接显示。插图 ≤5MB。

🎁 Surprise · 不定期 · 随缘更新
🎁 SURPRISE
谢谢你停在这里。愿你被温柔以待,也愿你带着一点勇气继续往前——这是我留给访客的小小礼物 🎀✨。
— threetwoa
有什么想了解的?
我基于博客内容回答