乱读天书, 不求甚解
周祎骏的个人云笔记
Toggle navigation
乱读天书, 不求甚解
主页
Linux:系统配置
Linux:用户管理
Linux:优化排错
Linux:进程调度
Linux:文件系统
Linux:网络
Linux:系统服务
Linux:安全
Linux:内核
容器:Docker
容器:containerd
容器编排:Kubernetes
IAC:Terraform
大数据:Hadoop
大数据:Zookeeper
大数据:Hbase
消息队列:rsyslog
消息队列:kafka
数据库:MySQL
数据库:MongoDB
搜索引擎:Elasticsearch
时序数据库:OpenTSDB
网站服务:Nginx
编程:Bash
编程:Perl
编程:Python
编程:C
编程:JAVA
编程:Rust
版本控制:gitlab
知识管理:docusaurus
常用小工具
关于我
标签
Kubernetes 02.50 Deployment
2023-05-17 02:21:58
40
0
0
admin
> APIresource: Deployment # 列子 ```yaml apiVersion: apps/v1 kind: Deployment metadata: labels: tag: deployment-tag name: deployment-name spec: replicas: 10 strategy: type: RollingUpdate #也可以是Recreate,杀死所有容器后再启动 rollingUpdate: #只有在RollingUpdate的时候需要 maxSurge: 100% #超过pod 期望副本的最大值,可以是百分比或者数字 maxUnavailable: 0 #不可用容器的最大值,可以百分比或者数字 selector: matchLabels: tag: pod-tag template: # pod info metadata: labels: tag: pod-tag spec: containers: - image: centos:latest name: my-pod-container command: ['/bin/sleep','86400'] ``` ``` # 撤除这个deployment kubectl delete deployment deployment-name ``` # 一些理解 deployment 包装了replicaSet(RS), RS包装了pod RS 负责pod 的扩容 缩容, deployment 负责版本升级会滚 ``` kubectl get deployment kubectl get rs kubectl get pod #列出历史版本 kubectl rollout history deployment/deployment-name #查看某一版本 kubectl rollout history deployment/deployment-name --revision=2 #回滚上一版本 kubectl rollout undo deployment/deployment-name #回滚到指定版本 kubectl rollout undo deployment/deployment-name --to-revision=3 #暂停某一deployment的部署(修改deployment 不触发部署,用在大量修改的时候) kubectl rollout pause deployment/deployment-name #修改deployment 镜像 kubectl set image deployment/deployment-name container_name=new_image #扩容缩容 kubectl scale deployment deployment-name --replicas 5 ```
上一篇:
Kubernetes 02.24 Secret
下一篇:
Kubernetes 02.51 DaemonSet
文档导航