从云原生走向 AI 原生:一套面向未来的架构方法论 → 阅读《AI 原生基础设施》

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,包括其核心概念、使用模式、资源共享机制以及与控制器的关系。

Pod 解析

深入了解 Kubernetes Pod 架构、设计理念、生命周期管理和最佳实践,包括 Pod 的创建、调度、终止和故障处理机制。

Pod 的生命周期

详细介绍 Kubernetes Pod 的生命周期管理,包括 Pod 状态阶段、容器探针配置、重启策略以及生命周期的各种实际应用场景。

Init 容器

Init 容器是一种专用的容器,在应用程序容器启动之前运行,用来包含一些应用镜像中不存在的实用工具或安装脚本。本文详细介绍 Init 容器的概念、用法和最佳实践。

Sidecar 容器

介绍 Kubernetes 原生 Sidecar 容器(v1.29 GA)的语义、与传统多容器模式的差异、生命周期与启动顺序、资源计算规则,以及日志收集、服务网格代理等典型用法与最佳实践。

Pause 容器

深入探究 Kubernetes 中 Pause 容器(Infra 容器)的作用与原理,了解它如何实现 Pod 内容器间的网络命名空间共享,以及在 Pod 生命周期管理中的关键作用。

Pod Hook

详细介绍 Kubernetes Pod Hook(钩子)的工作原理、类型配置和调试方法,包括 postStart 和 preStop 生命周期事件的使用场景和最佳实践。

存活和就绪探针

介绍 exec、HTTP、TCP 和 gRPC 四种探针检查机制,存活、就绪与启动三类探针的配置参数与最佳实践。

Pod 中断预算

了解 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 分发、多架构镜像索引以及镜像垃圾回收。

创建于 2022/05/21 更新于 2026/11/01 1302 字 阅读约 3 分钟

提交勘误/建议