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(二进制单位)。
相关推荐
QWsin17 小时前
【k8s】为什么statefulSet初始化pod需要service name
云原生·容器·kubernetes
youxiao_9018 小时前
kubernetes 插件、操作管理(二)
云原生·容器·kubernetes
NineData18 小时前
NineData云原生智能数据管理平台新功能发布|2025年12月版
数据库·云原生·数据库管理工具·ninedata·数据库迁移·数据库迁移工具·智能数据管理平台
Mr_sun.20 小时前
Day03——微服务网关与配置中心
微服务·云原生·架构
huaweichenai1 天前
docker部署kkFileView实现文件预览功能
运维·docker·容器
叫致寒吧1 天前
k8s部署
云原生·容器·kubernetes
叫致寒吧1 天前
k8s操作(三)
网络·容器·kubernetes
oMcLin1 天前
如何在 Red Hat Linux 8 上实现 Kubernetes 自定义资源管理器(CRD)扩展,支持微服务架构
linux·架构·kubernetes
DeepFlow 零侵扰全栈可观测1 天前
3分钟定位OA系统GC瓶颈:DeepFlow全栈可观测平台实战解析
大数据·运维·人工智能·云原生·性能优化