k8s(三)pod详解(精简版)

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录


  1. Pod 基础定义:K8s 最小部署单元,代表集群中一个运行进程,可包含一个/多个紧密耦合容器,共享网络、存储资源。
  2. Pod 使用方式
    • 单容器 Pod:最常见,Pod 封装单个容器,K8s 直接管理 Pod;
    • 多容器 Pod:容器共享网络/存储,通过 localhost 通信,适用于紧密耦合场景(如主应用+边车容器)。
  3. Pause 容器(基础容器):每个 Pod 内置的基础设施容器,提供 Linux 命名空间基础,管理 Pod 网络/存储,对用户透明。
  4. Pod 共享资源
    • 网络:Pod 分配唯一 IP,内部容器共享 IP/端口,对外需宿主机端口映射;
    • 存储:Pod 可定义共享 Volume,所有容器可访问,支持数据持久化。
  5. Pod 使用场景:单一进程应用(单容器)、多进程协作(多容器共享资源)。
  6. Pod 类型
    • 自主式 Pod:无自我修复能力,节点故障则被删除;
    • 控制器管理 Pod:由 Deployment/StatefulSet 等管理,支持副本管理、自动修复。
  7. Pod 容器分类
    • 基础容器:维护 Pod 网络/存储,K8s 自动创建;
    • 初始化容器(InitContainer):应用容器启动前运行,需顺序执行且全部成功,用于前置条件准备;
    • 应用容器(MainContainer):核心业务容器,初始化完成后并行启动。
  8. 镜像拉取策略
    • IfNotPresent(默认):本地有镜像则不拉取,缺失时拉取;
    • Always:每次启动 Pod 均拉取镜像;
    • Never:仅使用本地镜像,不拉取。
  9. 重启策略(restartPolicy)
    • Always:容器无论退出码,均重启;
    • OnFailure:仅容器非正常退出(非 0 码)时重启;
    • Never:容器退出后不重启。
  10. 资源请求与限制
    • requests:容器启动所需最小资源(CPU/内存),调度器依据此选择节点;
    • limits:容器可使用的最大资源,超限时会被限制;
    • 单位:CPU 用毫核(m),内存用 Mi/Gi(二进制单位)。
相关推荐
不老刘13 小时前
【Java入门】Java服务部署方式全景对比:从java -jar到K8s
java·kubernetes·jar
mit6.82416 小时前
AKS--Azure Managed Kubernetes
kubernetes·flask·azure
爱莉希雅&&&17 小时前
K8s NFS+StorageClass+PV/PVC+Deployment 实战笔记
笔记·容器·kubernetes
阿里云云原生17 小时前
2026云栖大会定档!
云原生
人间凡尔赛18 小时前
eBPF + WebAssembly 正在重写服务网格数据平面:2026 云原生架构的“去 Sidecar“革命
后端·云原生·架构
一位正在转型AI全栈的前端工程师19 小时前
前端转全栈:从 502 到 200,我的第一个 Docker+Nginx+Node.js 项目
docker·容器
云烟成雨TD20 小时前
Micrometer 系列【33】Spring Boot Micrometer Metrics 自动配置模块解析
spring boot·云原生·micrometer
维核科技20 小时前
大模型私有化部署:Docker与Kubernetes实战避坑
docker·容器·kubernetes
GlueNa2SiO31 天前
07-Docker Compose多容器编排
笔记·学习·docker·容器
SLD_Allen1 天前
Kubernetes + Ray + Volcano:云原生AI训练调度体系
人工智能·云原生·kubernetes