控制器: 用来控制Pod的具体状态和行为
Pod 分类
自主式Pod : Pod退出, 此类型Pod不会被创建.
控制器Pod : 在控制器的生命周期始终维持Pod的副本数量. (就算Pod死亡, 也会自动创建维持Pod的数量)
控制器分类
ReplicationController (RC), ReplicaSet(RS支持集合式的selector): 副本控制器
RS和Deploment关系, => Deploment通过RS来控制Pod
Deployment :
为Pod和ReplicaSet提供一个声明式方法,用来代替ReplicationController来方便管理应用,典型的场景有:
1>定义Deployment来创建Pod和ReplicaSet
2>滚动升级和回滚应用
3>扩容和缩容
4>暂停和继续Deploment
DaemonSet
确保全部(一些)Node上运行一个Pod副本. 当有Node加入集群,会为他们新增一个Pod,删除DaemonSet将会删除它创建的Pod.
使用场景:
运行集群的存储daemon,
每个Node的日志收集, fluentd ,logtash
每个Node的监控程序.
Job
负责批量任务,仅执行一次任务, 保证批处理任务一个或多个Pod成功结束
CronJob
定时调度某个时间执行一次或循环多次执行
StatefulSet
作为Controller为Pod提供唯一的标识 , 证部署和scale的顺序.
StatefulSet用来解决有状态服务的问题, 场景如下:
1>稳定的持久化存储, 即Pod重新调度后能访问持久化数据,基于PCV实现,
2>稳定的网络标识, 即Pod重新调度后PodName和HostName不变, 基于Headless Services(即没有Cluster IP的Service) 来实现.
3>有序部署和有序扩展, 0-> N 下一个执行基于前一个已经Running或Ready, 基于InitC实现
4>有序删除N->0
Horizontal Pod Autosacling
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)