【kube-apiserver】控制面全景:缺口、五轴坐标系与 16 篇路线
相对 etcd/13、distributed/50、k8s-network 补齐 kube-apiserver 生产内核缺口;以 Storage/Watch/Admission/Auth/APF 五轴为坐标系定义 16 篇阅读路线;版本锚定 Kubernetes v1.30.3。
相对 etcd/13、distributed/50、k8s-network 补齐 kube-apiserver 生产内核缺口;以 Storage/Watch/Admission/Auth/APF 五轴为坐标系定义 16 篇阅读路线;版本锚定 Kubernetes v1.30.3。
拆解 kube-apiserver 进程模型与 generic apiserver 框架;钉 HandlerChain 各插槽顺序与失败落点;说明 GVR 路由机制与请求在到达 storage 前可能被拦截的位置。版本锚定 Kubernetes v1.30.3。
拆解 kube-apiserver 的 storage.Interface 契约与 etcd3 实现:codec 序列化、pathPrefix/resourcePrefix、value.Transformer 加密边界、GuaranteedUpdate 乐观并发,以及 Watch 到 etcd3 的完整路径。版本锚定 Kubernetes v1.30.3 / etcd v3.5.33。
钉 Kubernetes resourceVersion 字段与 etcd mod revision 的对应关系;分析 continue token 的分页语义与成本;说明不同 List 路径的一致性期望差异;以及 410 Gone 与 ErrCompacted 的分列。版本锚定 Kubernetes v1.30.3 / etcd v3.5.33。
钉 Kubernetes v1.30.3 cacher 对 storage.Interface 的包装:watchCache 滑动窗口与 Ready 门、bookmark 推送路径、cache miss 打穿 etcd 的触发条件,以及 List 风暴成因与 watch cache SLO 与 compaction 间隔之间的开放问题。
钉 Kubernetes v1.30.3 List 分页的 continue token 编码语义、limit+continue 多轮 etcd Range 行为、resourceVersion 对一致性语义的影响,以及 label/field selector 在 cacher 与 etcd3 路径上的不同成本。
钉 Kubernetes v1.30.3 服务端 Watch 路径:从 REST handler 到 cacher/etcd3 watcher 的建立过程、resourceVersion=0 与具体 RV 的语义差异、410 Gone 与 etcd ErrCompacted 的映射、bookmark 推送与连接生命周期,以及与 client-go Informer 的边界。
钉 Kubernetes v1.30.3 Admission 链的阶段位置、Mutating 与 Validating 两阶段顺序、内置插件注册路径与典型示例、webhook 边界与 timeout 语义,以及 fail-open vs fail-closed 的工程争议。
钉 K8s v1.30.3 的 MutatingWebhookConfiguration / ValidatingWebhookConfiguration v1:timeoutSeconds、failurePolicy、sideEffects、reinvocationPolicy 字段语义;webhook 慢如何表现为写路径延迟而非 etcd lag;生产可用性门选取;CEL ValidatingAdmissionPolicy 作为内置替代路径;排障证据包。
钉 K8s v1.30.3 的认证链:X509、SA token(bound token)、Bearer、OIDC、Webhook token、匿名用户;ServiceAccount bound token 与 TokenRequest 语义;apiserver 认证 flags 边界;401 与存储层故障的分列;AuthZ 路径见第 11 篇。
牛客面试经验
Cloudflare 官方博客中文版,涵盖安全、AI 和开发者相关内容
美团技术团队最近更新内容。
LoRexxar's Blog