k8s命令实战-Deployment
Deployment:控制pod,提供多副本、自愈、扩缩容等功能
- 创建deployment
kubectl create deployment mytomcat --image=tomcat:8.5.68
- 观察自愈能力
watch -n 1 kubectl get pods -n default -owide #连接1查看pods状态
kubectl delete pod xxxx #连接2删除pod
- 多副本
命令行
kubectl create deployment my-dep --image=nginx --replicas=3
yaml
apiVersion: apps/v1
kind: Deployment
metadata:
labels:
app: my-dep
name: my-dep
spec:
replicas: 3
selector:
matchLabels:
app: my-dep
template:
metadata:
labels:
app: my-dep
spec:
containers:
- image: nginx
name: nginx
- 扩缩容
命令行
kubectl scale --replicas=5 deployment/my-dep
修改yaml配置文件
kubectl edit deploy/my-dep #修改replica字段的值即可
- 自愈&故障转移
停机
删除Pod
容器崩溃 - 滚动更新
kubectl set image deployment/my-dep nginx=nginx:1.16.1 --record
- 版本回退
#历史记录
kubectl rollout history deployment/my-dep
#查看某个历史详情
kubectl rollout history deployment/my-dep --revision=2
#回滚(回到上次)
kubectl rollout undo deployment/my-dep
#回滚(回到指定版本)
kubectl rollout undo deployment/my-dep --to-revision=2
- 扩展-其他工作负载
![]()


浙公网安备 33010602011771号