会创建Pod的资源

Kubernetes 可创建工作负载的资源类型 完整详解

你想了解的是 Kubernetes 中所有用于创建和管理工作负载(Workload) 的资源类型,K8s 对「工作负载」有官方明确定义工作负载是 Kubernetes 中用于表示并运行容器化应用实例的 API 资源的总称,核心目的是:创建容器 Pod、调度 Pod 到节点、保障 Pod 按预期运行(扩缩容 / 自愈 / 更新)、管理 Pod 生命周期。

✅ 一、K8s 官方「标准原生、稳定可用」的工作负载资源(共 8 类,全部 GA 稳定版,必掌握)

这是 Kubernetes 内核自带、完全标准化、生产环境可直接使用的核心工作负载资源 ,也是你提到的 DeploymentDaemonSet 所属的范畴,这 8 类是真正能「创建工作负载」的核心资源,按「使用频率 + 重要性」排序,每类都标注核心特性 + 用途,方便你区分:

1. Pod (核心基础,最底层工作负载)

  • 核心特性:K8s 中最小的可调度部署单元 ,是所有上层工作负载的「基石」,所有其他工作负载本质都是封装并管理 Pod
  • 核心用途:运行一个或多个紧密协作的容器(共享网络 / 存储),Pod 是原子性的,删除 / 重建即销毁旧实例。
  • 注意:生产中极少直接创建裸 Pod,因为裸 Pod 被删除 / 节点宕机后不会自动重建,所有业务都通过上层工作负载管理 Pod。

2. Deployment (最常用,无状态应用首选)

  • 核心特性:无状态应用的标准工作负载 ,基于 ReplicaSet 封装,支持声明式更新、滚动升级、版本回滚、扩缩容、自愈
  • 核心用途:部署无状态服务(比如微服务、Web 服务、API 服务、前端应用),不需要固定的网络标识、不需要持久化的存储关联、Pod 实例完全等价。
  • 典型场景:90% 的业务服务都用 Deployment 部署。

3. StatefulSet (有状态应用专属)

  • 核心特性:有状态应用的标准工作负载 ,解决 Deployment 无法满足的「有状态需求」,支持:固定的 Pod 名称 / 主机名、固定的 DNS 域名、有序的创建 / 删除 / 扩缩容、有序的滚动更新、持久化存储与 Pod 绑定(PVC 随 Pod 生命周期)
  • 核心用途:部署有状态服务,实例之间有依赖、需要持久化数据、需要固定标识。
  • 典型场景:数据库(MySQL/PostgreSQL)、中间件(Redis 集群 / ZooKeeper/Kafka/Elasticsearch)、分布式存储(Ceph)等。

4. DaemonSet (节点守护进程,每节点必跑一个)

  • 核心特性:确保集群中「所有(或指定)节点上都运行且仅运行一个该 Pod 实例」,节点新增时自动在新节点创建 Pod,节点删除时自动清理 Pod,支持滚动更新 / 回滚。
  • 核心用途:部署节点级的守护进程 / 代理服务,必须在每个节点部署的服务。
  • 典型场景:日志收集(Fluentd/Filebeat)、监控采集(Node Exporter)、网络插件(Calico/Flannel 的节点代理)、存储插件(CSI 节点驱动)等。

5. Job (一次性任务,执行完即结束)

  • 核心特性:运行「一次性、非持续性」的任务 ,创建一个或多个 Pod,确保任务成功完成一次后就终止,Pod 执行成功后不会重启,失败可重试。
  • 核心用途:处理批处理任务、数据迁移、数据备份、一次性计算、初始化任务等「做完就停」的业务。
  • 关键特点:任务完成 → Pod 变为Completed状态,不会被重建。

6. CronJob (定时任务 / 周期性任务)

  • 核心特性:基于时间调度的 Job ,相当于 K8s 中的「Linux Crontab」,支持按固定时间 / 周期性规则创建并执行 Job 任务,可配置执行规则、并发策略、任务保留策略。
  • 核心用途:部署定时批处理、定时备份、定时清理日志、定时数据同步等周期性任务。
  • 语法:和 Linux Crontab 完全兼容(分 时 日 月 周),比如 0 3 * * * 表示每天凌晨 3 点执行。

7. ReplicaSet (副本集,Deployment 的底层依赖)

  • 核心特性:保证集群中始终运行指定数量的 Pod 副本,实现 Pod 的扩缩容、自愈(Pod 挂了自动重建),是 Deployment 的「底层实现组件」。
  • 核心用途:极少直接手动创建,因为 ReplicaSet 只负责「保副本」,不支持版本回滚、滚动更新策略配置,Deployment 完全封装了 ReplicaSet 的能力并做了增强。
  • 关系:Deployment → 管理 ReplicaSet → 管理 Pod,所有 Deployment 的 Pod 都是由其关联的 ReplicaSet 创建的。

8. ReplicationController (旧版副本控制器,已被淘汰)

  • 核心特性:K8s 最早期的副本管理资源,功能和 ReplicaSet 几乎一致,都是保 Pod 副本数。
  • 核心用途:已被 ReplicaSet 完全替代,不推荐在生产中使用,仅用于兼容老旧集群。
  • 区别:ReplicaSet 支持更灵活的 标签选择器(Label Selector),而 ReplicationController 只支持简单的标签匹配。
相关推荐
小陈工10 小时前
Python Web开发入门(十三):API版本管理与兼容性——让你的接口优雅地“长大”
开发语言·前端·人工智能·python·安全·oracle
金士顿10 小时前
CRA 风险评估:STRIDE 和攻击树
安全
Linux运维技术栈10 小时前
Cloudflare 新版安全仪表板 Bot Fight Mode 403 拦截 调URL接口cf-mitigated: challenge报错解决方案
安全·域名·cloudflare
广州创科水利10 小时前
智慧赋能,守护安澜—广州创科助力五华县37宗水库安全监测
大数据·人工智能·安全
见行AGV机器人10 小时前
本质安全型防爆AGV
人工智能·安全·agv·非标定制agv·agv控制器·麦轮agv
roman_日积跬步-终至千里10 小时前
【系统架构设计-案例题-软件系统设计与建模】22年下(2):煤矿建设项目安全预警系统设计案例分析
安全
OPHKVPS11 小时前
微软确认 Windows 11 24H2 高危漏洞:累计更新导致开始菜单与文件资源管理器崩溃
网络·安全
oi..11 小时前
Web 安全入门:XSS 漏洞原理与防护学习笔记 [ OWASP Top10 漏洞原理学习(仅用于合规测试)]
前端·网络·笔记·安全·网络安全·xss
haha74211 小时前
MS15-034 (CVE-2015-1635) 漏洞复现报告(超详细)
安全
广州创科水利11 小时前
四座小水库的“智能体检”:广州创科大亚湾安全监测项目纪实
安全