kubernetes deployment升级和回滚
1.创建deployment pod
kubectl run mynginx --image=docker.io/nginx:1.13 --replicas= --record
准备svc文件
apiVersion: v1
kind: Service
metadata:
name: nginxsvc
spec:
type: NodePort
ports:
- port:
nodePort:
selector:
run: mynginx #修改为需要关联pod的lable参数,'kubectl describe deploy/mynginx'查看

创建nginx-svc
kubectl create -f nginx-svc.yaml
[root@master01 ~]# kubectl get all -o wide
NAME DESIRED CURRENT UP-TO-DATE AVAILABLE AGE
deploy/mynginx 14m NAME CLUSTER-IP EXTERNAL-IP PORT(S) AGE SELECTOR
svc/kubernetes 10.254.0.1 <none> /TCP 1d <none>
svc/nginxsvc 10.254.198.39 <nodes> :/TCP 9m run=mynginx NAME DESIRED CURRENT READY AGE CONTAINER(S) IMAGE(S) SELECTOR
rs/mynginx- 14m mynginx docker.io/nginx:1.13 pod-template-hash=,run=mynginx NAME READY STATUS RESTARTS AGE IP NODE
po/mynginx--0q0cg / Running 4m 172.16.43.4 192.168.29.203
po/mynginx--7g99g / Running 4m 172.16.22.3 192.168.29.202
po/mynginx--bzjn2 / Running 4m 172.16.43.3 192.168.29.203
po/mynginx--g9dd1 / Running 4m 172.16.22.4 192.168.29.202
2.升级mynginx,nginx:1.13 > nginx:1.15
kubectl set image deploy/mynginx mynginx=docker.io/nginx:1.15 #升级
[root@master01 ~]# kubectl get all -o wide
NAME DESIRED CURRENT UP-TO-DATE AVAILABLE AGE
deploy/mynginx 35m NAME CLUSTER-IP EXTERNAL-IP PORT(S) AGE SELECTOR
svc/kubernetes 10.254.0.1 <none> /TCP 1d <none>
svc/nginxsvc 10.254.198.39 <nodes> :/TCP 30m run=mynginx NAME DESIRED CURRENT READY AGE CONTAINER(S) IMAGE(S) SELECTOR
rs/mynginx- 35m mynginx docker.io/nginx:1.13 pod-template-hash=,run=mynginx
rs/mynginx- 2m mynginx docker.io/nginx:1.15 pod-template-hash=,run=mynginx NAME READY STATUS RESTARTS AGE IP NODE
po/mynginx--7h3hc / Running 2m 172.16.43.5 192.168.29.203
po/mynginx--cp080 / Running 2m 172.16.22.2 192.168.29.202
po/mynginx--k6kkb / Running 2m 172.16.43.4 192.168.29.203
po/mynginx--xg6cr / Running 2m 172.16.43.3 192.168.29.203
3.回滚升级
kubectl rollout history deploy/mynginx #查看操作历史
[root@master01 ~]# kubectl rollout history deploy/mynginx
deployments "mynginx"
REVISION CHANGE-CAUSE
kubectl run mynginx --image=docker.io/nginx:1.13 --replicas= --record
kubectl set image deploy/mynginx mynginx=docker.io/nginx:1.15
kubectl rollout undo deploy/mynginx --to-revision=1 #回滚
[root@master01 ~]# kubectl rollout undo deploy/mynginx --to-revision=
deployment "mynginx" rolled back
[root@master01 ~]# kubectl get all -o wide
NAME DESIRED CURRENT UP-TO-DATE AVAILABLE AGE
deploy/mynginx 39m NAME CLUSTER-IP EXTERNAL-IP PORT(S) AGE SELECTOR
svc/kubernetes 10.254.0.1 <none> /TCP 1d <none>
svc/nginxsvc 10.254.198.39 <nodes> :/TCP 35m run=mynginx NAME DESIRED CURRENT READY AGE CONTAINER(S) IMAGE(S) SELECTOR
rs/mynginx- 39m mynginx docker.io/nginx:1.13 pod-template-hash=,run=mynginx
rs/mynginx- 6m mynginx docker.io/nginx:1.15 pod-template-hash=,run=mynginx NAME READY STATUS RESTARTS AGE IP NODE
po/mynginx--4z1f5 / Running 51s 172.16.43.3 192.168.29.203
po/mynginx--f1qzz / Running 52s 172.16.22.4 192.168.29.202
po/mynginx--ks19b / Running 52s 172.16.22.3 192.168.29.202
po/mynginx--xqxj6 / Running 50s 172.16.43.6 192.168.29.203
[root@master01 ~]# kubectl rollout history deploy/mynginx
deployments "mynginx"
REVISION CHANGE-CAUSE
kubectl set image deploy/mynginx mynginx=docker.io/nginx:1.15
kubectl run mynginx --image=docker.io/nginx:1.13 --replicas= --record
kubernetes deployment升级和回滚的更多相关文章
- Docker Kubernetes 容器更新与回滚
Docker Kubernetes 容器更新与回滚 环境: 系统:Centos 7.4 x64 Docker版本:18.09.0 Kubernetes版本:v1.8 管理节点:192.168.1.79 ...
- 022.掌握Pod-Pod升级和回滚
一 deploymentPod升级和回滚 1.1 deployment升级 若Pod是通过Deployment创建的,可以在运行时修改Deployment的Pod定义(spec.template)或镜 ...
- Hadoop HDFS概念学习系列之HDFS升级和回滚机制(十二)
不多说,直接上干货! HDFS升级和回滚机制 作为一个大型的分布式系统,Hadoop内部实现了一套升级机制,当在一个集群上升级Hadoop时,像其他的软件升级一样,可能会有新的bug或一些会影响现有应 ...
- 浅入Kubernetes(12):Deployment 的升级、回滚
目录 更新 上线 会滚 缩放 Deployment 直接设置 Pod 水平自动缩放 比例缩放 暂停 Deployment 上线 本篇内容讨论 Pod 的更新和回滚,内容不多. 更新 打开 https: ...
- kubernetes Pod的升级与回滚
一:Deployment的升级 1.通过kubectl set image命令为Deployment设置新的镜像名称kubectl set image deployment/nginx-deploym ...
- Kubernetes:Pod 升级、回滚
本篇主要讨论如何实现滚动更新和回滚,任意更换版本并且回滚以前的版本(版本更新),而下一章会讨论到 Pod 缩放,根据机器资源自动拓展和收缩应用(自动扩容实例). 本文为作者的 Kubernetes 系 ...
- Docker & Kubenetes 系列四:集群,扩容,升级,回滚
本篇将会讲解应用部署到Kubenetes集群,集群副本集查看,集群自愈能力演示,集群扩容,滚动升级,以及回滚. 本篇是Docker&Kubenetes系列的第四篇,在前面的篇幅中,我们向Kub ...
- k8s学习笔记(3)- kubectl高可用部署,扩容,升级,回滚springboot应用
前言:上一篇通过rancher管理k8s,部署服务应用扩容,高可用,本篇介绍kubectl命令行部署高可用集群节点,测试升级.扩容等 1.测试环境:3节点k3s,使用其中2节点(ubuntunode1 ...
- 9.1 k8s pod版本更新流程及命令行实现升级与回滚
1.创建 Deployment root@k8-deploy:~/k8s-yaml/controllers/deployments# vim nginx-deployment.yaml apiVers ...
随机推荐
- vtigercrm特色功能介绍
1.邮件跟踪 市场营销活动中,我们给客户发出了大量的电子邮件,这些邮件被客户阅读的情况你了解吗?vtiger CRM中独特的邮件跟踪功能,可以让你了解到邮件是否被客户浏览.浏览的次数和时间.通过客户的 ...
- Android8.0通知
android里面经常会使用Notification来显示通知的消息,一般使用NotificationManager来创建通知消息 NotificationManager manger = (Noti ...
- Win10系统盘制作及安装流程
一.下载最新版的 Win10 镜像 1.打开 MSDN 下载 Windows 系统镜像,即 https://msdn.itellyou.cn/ 2.下载的 iso 镜像文件 3.你可以通过双击 ...
- powerDesigner生成数据结构图以及对应sql导出方法
1.下载powerDesigner 链接地址为http://soft.onlinedown.net/soft/577763.htm 2.打开软件,file -> new project,新建一个 ...
- 【Python实践-2】求一个或多个数的乘积
# -*- coding: utf-8 -*- #定义一个函数,可接收一个或多个数并计算乘积 def product(*numbers): s=1 for n in numbers: s=s*n re ...
- C++ 之 简单的五子棋AI程序
本人是大一新生,寒假无聊,抱着试试看的心态(没有想到可以完成),写了C++的简单五子棋程序,开心. 下面是效果图: 一.首先讲讲大致思路. 五子棋实现的基础: ...
- Sublime Text 3下载安装以及安装HTML-CSS-JS Prettify代码格式化插件
版权声明:本文为HaiyuKing原创文章,转载请注明出处! 概述 Sublime Text的安装以及安装插件步骤. 下载Sublime Text 官网地址:http://www.sublimetex ...
- ZooKeeper 02 - ZooKeeper集群的节点为什么是奇数个
目录 1 关于节点个数的说明 2 ZooKeeper集群的容错数 3 ZooKeeper集群可用的标准 4 为什么不能是偶数个节点 4.1 防止由脑裂造成的集群不可用 4.2 奇数个节点更省资源 4. ...
- springboot~thymeleaf页面布局的步骤
参考:https://ultraq.github.io/thymeleaf-layout-dialect/Installation.html 依赖包 注意里面的thymeleaf-layout-dia ...
- JAVA线程池学习,ThreadPoolTaskExecutor和ThreadPoolExecutor有何区别?
初学者很容易看错,如果没有看到spring或者JUC源码的人肯定是不太了解的. ThreadPoolTaskExecutor是spring core包中的,而ThreadPoolExecutor是JD ...