当前位置: 首页 > news >正文

K8s 1.27.1 实战系列(六)Pod

一、Pod介绍

1、Pod 的定义与核心设计

Pod 是 Kubernetes 的最小调度单元,由一个或多个容器组成,这些容器共享网络、存储、进程命名空间等资源,形成紧密协作的应用单元。Pod 的设计灵感来源于“豌豆荚”模型,容器如同豆子,共享同一环境但保持隔离性。其核心设计目标包括:

  • 轻量性:Pod 本身不负责资源分配,仅作为容器的逻辑封装单元,高效利用集群资源。
  • 临时性:Pod 生命周期短暂,故障或任务完成后会被销毁重建。
  • 共享性:容器间通过共享网络(同一 IP/端口)、存储卷(Volume)和进程空间实现协作。

2、Pod 的实现机制

  • 基础容器(Pause 容器)​

    每个 Pod 启动时首先创建 pause 容器,作为网络和存储的共享基础。后续容器通过链接到 pause 容器实现资源共用。例如,多容器 Pod 中,Nginx 和日志采集容器可通过 localhost 直接通信。

  • 多容器协作模式

    • 主从容器(Sidecar)​:如 Web 服务容器与日志采集容器协同工作。
    • 初始化容器(Init Container)​:用于预配置环境(如数据库迁移),完成后才启动主容器。
    • 临时任务容器:处理一次性任务(如数据备份),任务完成后自动终止。

3、网络与存储共享

  • 网络共享
    所有容器共享同一网络命名空间,拥有相同的 IP 和端口空间。例如,一个 Pod 内的 Nginx 容器和调试工具容器可通过 localhost:80 直接通信。
  • 存储共享
    通过 Volume 挂载实现数据持久化与共享。例如,多个容器可同时读写同一 emptyDir 卷中的临时文件。

4、生命周期与重启策略

  • 生命周期阶段

    • Pending:等待调度与资源分配。
    • Running:容器已启动并运行。
    • Succeeded/Failed:任务成功完成或异常终止。
  • 重启策略

    • Always​(默认):容器退出后自动重启,适合长期服务。
    • OnFailure:仅当容器异常退出(非零状态码)时重启,适合批处理任务。
    • Never:不重启࿰
http://www.dtcms.com/a/55862.html

相关文章:

  • Redis7——进阶篇(四)
  • 3.7[Q]CV
  • 使用AI整理知识点--WPF动画核心知识
  • 网络HTTP
  • 深度学习笔记——神经网络
  • 游戏引擎学习第143天
  • Android 存储路径详解
  • 恭喜!《哪吒2》明天将荣登世界影坛第六!目前仅差1.81亿元
  • Java基础关键_018_集合(二)
  • PDF文档中表格以及形状解析-后续处理(长线段根据交点打断成短线段)
  • C++知识整理day12——set容器和map容器
  • Android AudioFlinger(五)—— 揭开AudioMixer面纱
  • 前端安全面试题汇总及参考答案
  • 豆包大模型 MarsCode AI 刷题专栏 002
  • Android 平台架构系统启动流程详解
  • 正则表达式,idea,插件anyrule
  • 003-Boost文件锁
  • ADB 和 Monkey 进行 Android 应用的测试和调试
  • 【Java代码审计 | 第九篇】文件写入漏洞成因及防范
  • Manus是由中国创业公司Monica研发的通用型AI智能体
  • 何有效预防神经性头抖
  • 使用Node.js从零搭建DeepSeek本地部署(Express框架、Ollama)
  • 【C#】async与await介绍
  • JAVASE(一)
  • 计算机视觉|3D卷积网络VoxelNet:点云检测的革新力量
  • Unity组件TrailRenderer屏幕滑动拖尾
  • 策略模式详解:实现灵活多样的支付方式
  • 数据上新 | 专业领域多语种对话语音数据集
  • P63 C++当中的计时
  • 不小心更改了/etc权限为777导致sudo,ssh等软件都无法使用