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(二进制单位)。
相关推荐
Hui Baby1 小时前
K8S使用CRD和控制器简单应用
云原生·容器·kubernetes
阿里云云原生2 小时前
从“告警驱动”到“巡检驱动”:Agent 智能体如何实现前端体验治理的闭环?
云原生
AOwhisky3 小时前
Python 学习笔记(第十三期)——运维自动化(下·前篇):远程命令执行——paramiko基础篇
运维·python·学习·云原生·自动化·运维开发·paramiko
AOwhisky3 小时前
Python 学习笔记(第十四期)——运维自动化(下·中篇):远程文件传输——paramiko进阶篇
运维·python·学习·云原生·自动化·文件传输·paramiko
做个文艺程序员3 小时前
Linux第22篇:用Docker容器化你的Java SaaS应用:一次构建,随处运行
java·docker·容器
Zhu7586 小时前
在k8s环境部署Apache Superset最新版
容器·kubernetes·apache
小的博客6 小时前
windows下安装Docker Desptop
运维·docker·容器
Zhu7586 小时前
在k8s环境部署Apache zookeeper3.9.5,高可用,多pod
容器·kubernetes·apache
雨声不在7 小时前
macos 12使用docker
macos·docker·容器
云烟成雨TD7 小时前
Micrometer 系列【2】可观测性:指标(Metrics)
java·云原生·micrometer