kubernetes资源对象--deployment

本文深入探讨Kubernetes Deployment,包括其概念、功能、使用场景和优势。Deployment提供滚动升级、回滚、暂停等高级功能,确保服务稳定。通过maxSurge和maxUnavailable参数控制升级过程,借助livenessProbe和readinessProbe保障Pod健康。文章还介绍了创建、查看和管理Deployment的命令。
摘要由CSDN通过智能技术生成

本文基于kubernetes 1.5.2版本编写

概念

Deployment(中文意思为部署、调度)提供了一种更加简单的更新RC和Pod的机制,K8S版本1.2实现的。通过在Deployment中描述所期望的集群状态,Deployment Controller会将现在的集群状态在一个可控的速度下逐步更新成所期望的集群状态。Deployment主要职责同样是为了保证pod的数量和健康,90%的功能与RC完全一样,可以看做新一代的RC。

功能

Deployment集成了上线部署、滚动升级、创建副本、暂停上线任务,恢复上线任务,回滚到以前某一版本(成功/稳定)的Deployment等功能,在某种程度上,Deployment可以实现无人值守的上线,大大降低上线过程的复杂沟通、操作风险。

RC全部功能:Deployment继承了RC全部功能。

事件和状态查看:可以查看Deployment的升级详细进度和状态。

回滚:当升级pod镜像或者相关参数时发现问题,可以使用回滚操作回滚到上一个稳定的版本或者指定的版本。

版本记录:每次对Deployment的操作,都能保存下来,给予后续可能的回滚使用。

暂停和启动:对于每一次升级,都能够随时暂停和启动。

多种升级方案:Recreate--删除所有已存在的pod,重新创建新的; RollingUpdate--滚动升级,逐步替换的策略,同时滚动升级时,支持更多的附加参数,例如设置最大不可用pod数量,最小升级间隔时间等等。

使用场景

使用Deployment来启动(上线/部署)一个Pod或者RS

检查一个Deployment是否成功执行

更新Deployment来重新创建相应的Pods(例如,需要使用一个新的Image)

如果现有的Deployment不稳定,那么回滚到一个早期的稳定的Deployment版本

暂停或者恢复一个Deployment


  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值