Pod
Pod 是 Kubernetes 世界中承载一切应用与创新的“原子单元”,其精妙设计奠定了云原生架构的坚实基石。
Pod 是 Kubernetes 中最小的可部署单元,理解 Pod 的状态管理和生命周期对于掌握 Kubernetes 至关重要。
本章节将深入探讨以下核心概念:
- Pod 构成与架构 - 了解 Pod 的基本组成和内部结构
- Pod 生命周期管理 - 掌握 Pod 从创建到销毁的完整流程
- 容器启动顺序 - 理解 Init 容器、原生 Sidecar 容器与主容器的启动与退出顺序
- 状态管理机制 - 学习 Pod 阶段、条件、探针与重启策略
- 运行时新能力 - 掌握原地资源调整、Pod 级资源与用户命名空间等近年新增的 Pod 特性
Kubernetes 通过各种控制器(Controller)来管理 Pod 的状态和生命周期。其中,kube-controller-manager 是负责运行各种控制器的核心组件,它确保集群中的 Pod 始终处于期望的状态。
在深入学习各类控制器之前,我们需要先建立对 Pod 本身及其生命周期的全面理解,这是掌握 Kubernetes 工作负载管理的基础。
章节目录
深入了解 Kubernetes 中最基本的部署单元 Pod,包括其核心概念、使用模式、资源共享机制以及与控制器的关系。
深入了解 Kubernetes Pod 架构、设计理念、生命周期管理和最佳实践,包括 Pod 的创建、调度、终止和故障处理机制。
详细介绍 Kubernetes Pod 的生命周期管理,包括 Pod 状态阶段、容器探针配置、重启策略以及生命周期的各种实际应用场景。
Init 容器是一种专用的容器,在应用程序容器启动之前运行,用来包含一些应用镜像中不存在的实用工具或安装脚本。本文详细介绍 Init 容器的概念、用法和最佳实践。
介绍 Kubernetes 原生 Sidecar 容器(v1.29 GA)的语义、与传统多容器模式的差异、生命周期与启动顺序、资源计算规则,以及日志收集、服务网格代理等典型用法与最佳实践。
深入探究 Kubernetes 中 Pause 容器(Infra 容器)的作用与原理,了解它如何实现 Pod 内容器间的网络命名空间共享,以及在 Pod 生命周期管理中的关键作用。
详细介绍 Kubernetes Pod Hook(钩子)的工作原理、类型配置和调试方法,包括 postStart 和 preStop 生命周期事件的使用场景和最佳实践。
介绍 exec、HTTP、TCP 和 gRPC 四种探针检查机制,存活、就绪与启动三类探针的配置参数与最佳实践。
了解 Kubernetes 中 Pod 的自愿和非自愿中断类型,以及如何使用 Pod 中断预算(PDB)来保护关键应用程序的可用性,确保在集群维护和扩缩容等操作中维持服务稳定性。
介绍 Kubernetes v1.35 GA 的 Pod 原地资源调整(In-place Pod Resize):resizePolicy、resize 子资源、PodResizePending/PodResizeInProgress 条件、与 QoS 和 VPA 的关系,以及 v1.34 起 Beta 的 Pod 级资源(spec.resources)。
介绍 Kubernetes v1.36 GA 的 Pod 用户命名空间(hostUsers: false):原理、对容器逃逸的缓解效果、内核与运行时要求、kubelet 的 ID 范围配置、与 Pod 安全标准的联动,以及当前限制与采用建议。
全面讲解 Kubernetes 的容器镜像管理:镜像引用与摘要固定、imagePullPolicy 的默认推导规则、ImagePullBackOff 排障、串行与并行拉取、私有仓库的 imagePullSecrets 与 kubelet 凭据提供者插件(含 ServiceAccount 令牌换取短期凭据)、已拉取镜像的凭据复核、镜像预热与 P2P 分发、多架构镜像索引以及镜像垃圾回收。