首页 > 其他分享 >k8s-Pod滚动重启方法

k8s-Pod滚动重启方法

时间:2024-08-04 11:17:30浏览次数:5  
标签:kubectl 滚动 image deployment Pod k8s my

在 Kubernetes 中,有多种方法可以进行滚动重启 Pod。以下是几种常用的方法:

一、通过修改 Pod 的 YAML 部署文件进行滚动更新

通过修改 Pod 的 YAML 部署文件并应用这些更改,可以触发 Pod 的滚动更新。具体步骤如下:

  1. 修改 Pod 的 YAML 文件,使其内容发生变化(例如更新镜像版本或环境变量)。
  2. 使用以下命令应用更新:
    kubectl apply -f your-pod.yaml
    

注意:如果 YAML 文件的内容没有变化,执行 kubectl apply 命令不会触发 Pod 的滚动更新。

二、通过 kubectl set image 命令进行滚动更新

如果不想直接修改 YAML 文件,可以使用 kubectl set image 命令更新镜像,从而触发滚动更新。具体步骤如下:

  1. 使用以下命令设置新的镜像:
    kubectl set image deployment deployment_name pod_name=new_image_name
    

例如,要将 my-deployment 的 Pod 更新为使用新的镜像 my-image:v2,可以执行:

kubectl set image deployment my-deployment my-pod=my-image:v2

三、通过 rollout restart 命令进行滚动更新

1. Kubernetes 1.15 之前的版本

在 Kubernetes 1.15 之前,可以通过修改 Deployment 的 annotations 来触发滚动重启。具体步骤如下:

  1. 使用 kubectl patch 命令修改 annotations:
    kubectl patch deployment deployment_name -p \
      "{\"spec\":{\"template\":{\"metadata\":{\"annotations\":{\"date\":\"$(date +'%s')\"}}}}}"
    

2. Kubernetes 1.15 及之后的版本

从 Kubernetes 1.15 开始,可以直接使用 kubectl rollout restart 命令进行滚动重启。具体步骤如下:

  1. 使用以下命令重启 Deployment:
    kubectl rollout restart deployment your_deployment_name
    

例如,要重启名为 my-deployment 的 Deployment,可以执行:

kubectl rollout restart deployment my-deployment

通过以上方法,可以根据实际情况选择最合适的方式来进行 Pod 的滚动重启,以确保应用的高可用性和持续交付。

本文来自博客园,作者:&UnstopPable 转载请注明原文链接:https://www.cnblogs.com/Unstoppable9527/p/18341558

标签:kubectl,滚动,image,deployment,Pod,k8s,my
From: https://www.cnblogs.com/Unstoppable9527/p/18341558

相关文章

  • WPF【无限滚动图片浏览】自定义控件
    自定义控件自定义控件是我比较陌生的一个主题。我好久没练习过wpf了,需要巩固记忆。我想了一会儿,打开动漫之家,忽然觉得这个看漫画的图片浏览控件有意思。于是特地花了一天做了这个图片控件。我原本以为很容易,但实际上并不简单。这个图片浏览控件比我想象中要难许多,有技术上的难题......
  • 19. rs、deploy和Jenkins集成K8S实现CICD实战
    1.rs控制器1.作用可以实现Pod的副本控制。相比rc资源,其功能性更强且更加轻量级。2.案例1-rs实现类似rc的功能[root@master231rs]#cat01-rs-xiuxian-matchLabels.yamlapiVersion:apps/v1kind:ReplicaSetmetadata:name:rs-xiuxianspec:#指定Pod的副本数量r......
  • 【K8s】专题八:Kubernetes 服务调度详解
    以下内容均来自个人笔记并重新梳理,如有错误欢迎指正!如果对您有帮助,烦请点赞、关注、订阅、转发!欢迎扫码关注个人公众号!目录一、基本介绍二、工作原理三、节点绑定四、亲和性调度1、亲和性类型2、亲和性规则3、NodeAffinity4、PodAffinity五、反亲和性调度1、反......
  • HTML侧边部分内容滑动跟随 左侧跟随滚动模块代码
    网站是左右两列板块布局,左侧规划了客服代码,当鼠标下拉的时候,微信客服代码会出现上移的情况。为了提高转化,希望左侧客服模块跟随内容滚动。网站左侧跟随滚动模块这是截止目前最简单、高效的方法,代码简洁。代码<divid="box"><divid="float"class="div1">在这里放......
  • k8s
    K8sPod:自主式Pod:死亡后没有控制器将其拉起控制器管理的Pod:死亡后控制器能够将其拉起Pod内容器:当一个Pod创建后,会立即在Pod内创建一个pause容器,该Pod内其他容器公用该容器的网络协议栈;因此,一个Pod中两个容器的端口不能相同,一个容器访问另一个容器的端口,直接用l......
  • 更改element-ul的表格底部滚动条
    /*确保表格容器有足够的高度*/::v-deep.el-table.el-table__fixed{overflow:hidden;height:auto!important;bottom:20px!important;}/*普通列的滚动条样式*/::v-deep.el-table__body-wrapper{padding-bottom:10px;/*调整底部padding*/}::v-d......
  • kubeasz 制作k8s 集群离线安装包
    转载:kubeasz制作k8s集群离线安装包kubeasz制作k8s集群离线安装包大家好,欢迎来到运维有术本文介绍了,利用ezdown制作kubeasz离线部署k8s集群所需的离线安装包。使用kubeasz离线安装k8s集群需要下载四个部分:kubeasz项目代码二进制文件(k8s、etcd、container......
  • 低代码如何借助 K8s 实现高并发支持?
    引言在当今这个数字化时代,互联网的普及和技术的飞速发展使得应用程序面临着前所未有的挑战,其中最为显著的就是高并发访问的需求。随着用户数量的激增和业务规模的扩大,如何确保应用在高并发场景下依然能够稳定运行、快速响应,成为了所有开发者和技术团队必须面对的重要课题。Kuber......
  • 无法为 dcc.Dropdown 设置固定的可滚动大小
    我正在用python开发一个DashWeb应用程序,而且我对这个框架还很陌生,所以我正在努力让UI按照我想要的方式运行。基本上我有以下UI,其中有2个下拉菜单,可以让我相应地过滤并重新渲染图表。问题是,当我从下拉列表中选择更多点时,它不可避免地会增长以适应当前所选选项的列表......
  • kubeadm部署k8s集群
    目录1.环境准备2.升级内核3.所有节点安装docker4.安装kubeadm,kubelet和kubectl5.高可用配置6.部署K8S集群7.所有节点部署网络插件flannel8.部署Dashboard可视化面板9.更新k8s证书有效期1.环境准备7-2192.168.9.210master017-5192.168.9.120master027-7192.168.9.......