Kubernetes 之资源对象 Pod详解

【云原生之kubernetes】k8s集群核心资源对象之Pod 阅读详情

官网:https://kubernetes.io/docs/concepts/workloads/pods/

简介

Pod 是 Kubernetes 中最小的可部署、可调度单元。 Kubernetes 不是直接管理单个容器,而是管理 Pod。一个 Pod 里面可以有一个容器,也可以有多个紧密协作的容器。这些容器共享存储、网络资源和运行规范;Pod 内的内容会被共同调度到同一台 Node 上运行。

Pod 内部三种容器详解

(1) Pause 基础设施容器(隐形容器,必存在,yaml 不配置)

特点:

  • 镜像:k8s.gcr.io/pause,很小,只有几百 KB
  • 所有 Pod 自动生成,不用在 yaml 定义,看不到配置
  • 整个 Pod 的网络基石

核心作用:

  • 创建 Pod 网络命名空间:pause 占住 net、uts 命名空间,后面所有业务 /init 容器加入这个网络,实现同 Pod 共用一个 IP、localhost互通
  • 共享 PID、挂载命名空间
  • 僵尸进程回收:回收容器产生的孤儿进程,避免容器残留
  • 一句话:Pause=Pod 的网络底座,没有它就没有 PodIP

(2) InitContainer 初始化容器(initContainers 字段配置)

运行规则:

  • 串行执行,从上到下逐个运行,上一个 init 成功退出,才运行下一个
  • 所有 Init 全部正常退出 (exit=0) 之后,才启动业务容器
  • 任意 Init 异常报错退出,Pod 反复重启(CrashLoopBackOff),业务永远起不来

常用场景:

  • 等待依赖服务就绪:等 MySQL、CoreDNS 启动完再启业务
  • 拉取配置文件、解压资源到共享目录
  • 目录权限初始化、预创建文件

简易 yaml 片段 展示具体位置:

spec:
initContainers:
name: init-wait
        image: busybox
        command: ["sh","-c","until nslookup mysql;do sleep 2;done"] #等待mysql解析成功
        containers:

name: nginx
        image: nginx

(3) 业务容器 containers(yaml 的 containers 数组,分两种:主容器 + Sidecar 边车)

Init 全部完成后,所有 containers 里的容器并行同时启动

a.  主业务容器

  • 跑核心业务:Nginx、Java 项目、MySQL,实现产品功能。

b .Sidecar 边车容器(本质还是业务容器,分工辅助)

  • 和主容器同网络、同存储,不处理业务,只做配套运维工作
  • 日志边车:Filebeat 采集主容器日志,推送 ELK
  • 代理边车:Envoy/Istio 做流量管控、熔断限流
  • 配置同步边车:实时同步配置文件
  • 示例:Nginx (主)+Filebeat (边车),共用 emptyDir 日志目录。

完整启动时序总结

  • kubelet 创建 Pause 容器 → 分配 PodIP、初始化网络
  • 依次运行所有 Init 容器,全部执行成功退出
  • 一次性启动所有 containers(主 + 边车)

配置文件 展示:

spec:
  initContainers:    # 初始化容器,串行先跑完
  - name: init-xxx
    image: busybox

  containers:        # 业务+边车全都在这,并行启动
  # 主业务容器
  - name: nginx-main
    image: nginx
    ports:
    - containerPort:80

  # sidecar边车容器(同pod,共享网络/存储)
  - name: filebeat-sidecar
    image: filebeat:7.9
    volumeMounts:
    - name: logdir
      mountPath: /usr/local/nginx/logs


Pod 分类

1 .静态 Pod(Static Pod)    

静态 Pod 是节点 kubelet 直接管理的 Pod,完全不经过 API Server、调度器、控制器,仅靠节点本地 yaml 文件驱动运行

kubeadm 搭建集群时,控制平面组件(apiserver、etcd、scheduler、controller-manager)全部以静态 Pod 运行。目录默认: /etc/kubernetes/manifests 。

静态 Pod 始终都会绑定到特定节点的 Kubelet 上。这些 Pod 在节点的特定目录中定义(默认:/etc/kubernetes/manifests ),kubelet 会监视并管理这些 Pod 的生命周期。

静态 Pod 特性:

  • 无控制器管理:不由 Deployment、ReplicaSet 等控制器管理;
  • 节点级别:仅存在于定义它们的特定节点上;
  • API 服务器可见:可在集群中通过 kubectl get pods 查看;
  • 无法通过 kubectl 管理:只能通过修改节点上的配置文件进行操作;
  • 高优先级:在控制器管理的 Pod 之前启动。
ClickHouse的bitmap使用 ClickHouse的bitmap使用 bitmap的基本使用 在CK中bitmap有两种构建方式,在ClickHouse的官网有说明: (1)一个是由聚合函数groupBitmapState构造的, (2)另一个是由Array Object构造的。同时还可以将位图对象转化为数组对象。 bitmap实战 数据和基本数据表准备 创建一张基本表,一个用户表,有多个描述的维度,每个维度由该维度的唯一id。 CREATE TABLE test02(id UInt16, tag1 UInt8, tag2 UInt8, 阅读详情

相关推荐

PostgreSQL14 离线安装全攻略:从下载到配置详解

本文详细介绍了PostgreSQL14在无网络环境下的离线安装全流程,涵盖RPM包与源码编译两种主流方法。文章重点解析了安装前的系统环境检查、依赖包准备、数据库初始化、远程访问配置以及安装后的关键检查与性能调优,旨在帮助运维和开发人员在离线服务器上高效、稳定地部署PostgreSQL14数据库。

p5l2m9n4o6q的博客 710

Vmware Vcenter7.0证书web续期发生错误

生成证书,选择第三个(PS,如果没有域名的,一定要写IP,不然很容易卡在85%,服务不能起来)这里大概率可能是证书里面的FQDN和主机不匹配,又或者是主机解析FQDN有问题。vCenter _MACHINE_CERT快到期了,通过web界面更新证书失败。vSphere Client 版本 7.0.2.00200。登陆ssh到vcenter,重新生成证书。先关掉HA,不然证书管理会报错。第一步先这样,重新续订一下证书。

m0_74823595的博客 3944

Win11下Android模拟器报HAXM未安装?三步搞定虚拟化配置(附终端命令)

本文详细解析了Win11下Android模拟器HAXM报错的解决方案,从虚拟化配置到终端命令实战。通过检查BIOS设置、调整Windows功能及执行PowerShell命令,三步搞定虚拟化配置问题,有效提升模拟器性能。特别针对Win11与HAXM的兼容性问题提供了专业指导。

weixin_29215815的博客 143

从S参数到SPICE模型:Cadence Sigrity Boardband SPICE完整使用指南

本文详细介绍了Cadence Sigrity Boardband SPICE工具的核心价值与完整使用流程。该工具通过矢量拟合算法,将复杂的多端口S参数文件转化为无源、紧凑且高精度的SPICE等效电路模型,从而极大提升时域仿真效率。指南涵盖了从数据导入、关键参数配置、模型精度验证到集成应用于PowerSI等系统级仿真的全步骤,是信号与电源完整性分析的必备利器。

defi6farmer的博客 432

Claude Code 完整使用教程(2026最新版)

《Claude Code 完整使用教程(2026最新版)》摘要: Claude Code 是 Anthropic 公司推出的智能编程工具,通过自然语言对话实现代码编写、调试和重构。本教程基于 v2.1.101 版本,涵盖安装配置、核心功能及最新特性。主要内容包括: 多平台安装方式(macOS/Linux/Windows) 桌面应用专属功能如并行会话、定时任务和语音模式 模型选择指南(Sonnet/Opus/Haiku) 快速入门示例:5分钟创建Node.js项目 核心功能:代码读写、命令执行、Git集成等

程序猿_三产 2万+

深入解析Linux Suspend/Resume机制——从用户态到内核态的完整流程

本文深入解析Linux Suspend/Resume机制,从用户态触发到内核态执行的完整流程。详细介绍了三种挂起模式(Freeze、Standby、Suspend to RAM)的实现原理,包括系统调用入口、状态验证、设备挂起流程及平台相关操作。同时提供实战调试技巧,帮助开发者解决电源管理中的常见问题。

weixin_29313239的博客 444

运行openclaw gateway install时出现Gateway install failed: Error: schtasks create failed的解决方案

本文主要介绍了运行openclaw gateway install时出现Gateway install failed: Error: schtasks create failed的解决方案,希望能对学习和使用openclaw的同学们有所帮助。 文章目录 1. 问题描述 2. 解决方案

weixin_43178406的博客 11万+

SAP 消息号T-CODE

SAP消息号修改汇总 确实有很多消息是可以修改的 FI: oBA5|oFMG|oFPM MM: oMRM|oKZZ|oMT4|oMCQ|o04C| SD: oVAH(V4)|oVM1(VL) CO:  oPR4_ACT|oPR4_CK|oPR4_CKML|oPR4_CKPF|oPR4_KKA|oPR4_KKP|oPR4_KKS| oPR4_KKS1|oPR4_P

heng0757的专栏 1万+

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

上一篇: Docker的详细安装步骤
下一篇: Linux的基础命令
Host_root
博客等级 码龄1年 6粉丝 15原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值