当前位置: 首页 > news >正文

app开发开发公司百度关键词优化大

app开发开发公司,百度关键词优化大,网站开发需要具备哪些技术,进入公众号信阳云滚动更新和回滚 实验目标: 学习如何进行应用的滚动更新和回滚操作。 实验步骤: 创建一个 Deployment。更新 Deployment 的镜像版本,观察滚动更新过程。回滚到之前的版本,验证回滚操作。 今天呢,我们继续来进行我们k…

滚动更新和回滚

实验目标:
学习如何进行应用的滚动更新和回滚操作。

实验步骤:

  • 创建一个 Deployment。
  • 更新 Deployment 的镜像版本,观察滚动更新过程。
  • 回滚到之前的版本,验证回滚操作。

今天呢,我们继续来进行我们k8s上的实验:滚动更新和回滚

之前我们在第一篇的实验中创建了3个nginx容器,目前是还在运行状态,今天我们就来模拟更新滚动更新Nginx服务,如果是刚来的朋友请看第一篇文章,如何运行一个简单的应用。

在这里插入图片描述

1、查看原始的yaml文件

因为我们之前起nginx服务的时候并未使用yaml文件,而是直接在容器中运行,虽说kubectl describe 命令也能看到容器的大部分信息,但毕竟不够全面。所以我们先导出一份默认的配置来参考下

kubectl get deployment nginx -n nginx -o yaml > /kubeapi/data/project3/nginx-deployment.yaml

在这里插入图片描述
这里也是发现了镜像版本是:nginx:alpine 是一个小巧轻便的镜像。
为了观察滚动更新的效果,我准们准备了一个小脚本,来对nginx服务进行持续性访问,看是否会影响用户的链接,这里我是新开了一台机器,相当于从外部进行访问

#!/bin/bash# 设置 Nginx 服务器的 URL
url="http://localhost"while true; do# 使用 curl 命令访问 Nginx 服务器curl -s "$url"# 添加延迟以避免过载服务器sleep 1
done

2、滚动更新

可以使用 kubectl set image 命令在更新镜像:

kubectl set image deployment nginx -n nginx nginx=nginx:1.21-alpine# 这里也可以直接使用deployment的yaml文件
# kubectl set image deployment/<deployment-name> nginx=nginx:1.21-alpine

在这里插入图片描述

查看更新状态:

kubectl rollout status deployment nginx -n nginx

在这里插入图片描述

观察在更新中的容器状态:
发现有新的容器正在被创建

kubectl get pods -n nginx

在这里插入图片描述

观察持续访问情况:
用户侧的持续访问并未受影响,在新容器创建过程中一直在接受新的请求
在请求脚本的返回结果中不难看出
在这里插入图片描述

在有新的容器更新完毕后,将会自动加入服务队列,之前更新的容器已被剔除
在这里插入图片描述
同时用户侧的访问信息也发生了变化,说明新的服务已经处于工作状态
在这里插入图片描述
效果非常明显

验证:
更新全部完毕后,我们查看下服务的版本是否为我们计划更新的版本

kubectl describe pod nginx-758dd7897f-bw6sb -n nginx

在这里插入图片描述
更新成功,滚动更新完毕。

回滚操作

可以使用这个命令,修改下目前nginx服务对外的页面,这样能比较清楚的看到回滚的效果

请在不同的工作节点修改pod name后执行一次即可

kubectl exec -it nginx-758dd7897f-bw6sb -n nginx -- sh -c "echo $(hostname) > /usr/share/nginx/html/index.html"

我现在执行访问脚本验证正常:
在这里插入图片描述

接下来进行回滚操作
查看 Deployment 的历史版本

kubectl rollout history deployment/nginx -n nginx

在这里插入图片描述
但是我并没有看到历史版本的修订号,这个问题可能是因为在创建 Deployment 时未指定或记录变更原因,或者可能是历史记录中没有详细的变更原因信息。
不过,不用担心,你仍然可以使用 kubectl rollout undo 命令来回滚 Deployment 到之前的版本,无论是否有变更原因记录。

执行回滚操作
如果有历史版本的修订号,可以通过 --to-revision 参数指定要回滚的版本:

kubectl rollout undo deployment/nginx --to-revision=<revision-number> -n nginx

<revision-number> 替换为你想要回滚到的具体修订号。

如果没有指定 --to-revision 参数,默认会回滚到上一个版本:

kubectl rollout undo deployment/nginx -n nginx

回滚的过程非常之迅速啊
在这里插入图片描述
基本上在执行完命令后,不到10秒钟的时间就已经全部回滚完成了
在这里插入图片描述
观察用户侧的访问情况:
在这里插入图片描述
验证:

在这里插入图片描述
通过详细信息我们不难看出,镜像使用的版本已经回到我们更新前的


总结

  • 滚动更新:使用kubectl edit deployment编辑镜像版本,或者使用kubectl set image命令更新镜像。
  • 回滚:使用kubectl rollout history查看历史版本,然后使用kubectl rollout undo命令回滚到指定的版本。
http://www.hkea.cn/news/95619/

相关文章:

  • 做国珍新时代 网站陕西seo顾问服务
  • 建立网站怎么做关键字搜索引擎营销的作用
  • 广州手机网站建设宁波seo优化费用
  • 怎么设置网站服务器宁德市教育局官网
  • 查看网站源代码建站可以牛排seo系统
  • 政府网站建设的基本原则百度网盘电脑版
  • 张家港网站建设福州百度快速优化
  • 兼职做网站编辑百度搜索推广开户
  • 谁告诉你j2ee是做网站的宁波网站推广找哪家公司
  • 谷歌外贸建站多少钱搭建网站教程
  • 赚钱靠普的网站关键字搜索软件
  • 建设银行深分行圳招聘网站做游戏推广一个月能拿多少钱
  • 北京网站建设及推广招聘关键词排名代做
  • 对网站建设的意见建议网络营销推广的方法有哪些
  • 爬虫网站怎么做怎样才能在百度上面做广告宣传
  • 网站页码南昌做seo的公司有哪些
  • 网络设计方案包括哪些深圳百度推广seo公司
  • 亚马逊跨境电商开店站长工具seo综合查询5g
  • 网站怎么做百度快照logo百度快照优化推广
  • 山西网站建设排名seo技术培训山东
  • 日韩系成人影片成首选网站如何优化推广
  • 网站到期续费通知搜索风云排行榜
  • 网站公司说我们做的网站服务器不够用哪个杭州seo好
  • 类似淘宝网站建设费用杭州哪家seo公司好
  • 装修网站怎样做seo专员很难吗
  • 无锡网站外包如何接广告赚钱
  • 英文网站制作 官网淘宝标题优化网站
  • 电力建设网站网络推广网站的方法
  • 如何做网站窗口网站优化网络推广seo
  • 营销型网站建设效果网络营销策划推广方案