Deployment 为Pod 和 ReplicaSet 之上,提供了一个声明式定义(declarative)方法,用来替代以前的ReplicationController 来方便的管理应用。
Deployment 升级策略
kubectl explain deploy.spec.strategy 策略订是配置怎么滚动升级的,支持两种策略:
- Recreate 重建式更新,就是删一个建一个。
- rollingUpdate 滚动更新,简单定义 更新期间pod最多有几个等
rollingUpdate 有两种策略
- maxSurge 指定超出副本数有几个,两种方式:1、指定数量 2、百分比
- maxUnavailable 最多有几个不可用
Deployment 历史版本
-
kubectl explain deploy.spec.revisionHistoryLimit
-
最多保存多少个历史版本,默认是10个
案例:
apiVersion: apps/v1
kind: Deployment
metadata:
name: myapp-deploy
namespace: default
spec:
replicas: 2
selector:
matchLabels:
app: myapp
release: dev
template:
metadata:
labels:
app: myapp
release: dev
spec:
containers:
- name: