首页 > 其他分享 >【K8s】专题六(5):Kubernetes 稳定性之重启策略、滚动更新策略

【K8s】专题六(5):Kubernetes 稳定性之重启策略、滚动更新策略

时间:2024-07-08 13:00:56浏览次数:22  
标签:... 策略 Kubernetes 容器 重启 更新 Pod K8s

以下内容均来自个人笔记并重新梳理,如有错误欢迎指正!如果对您有帮助,烦请点赞、关注、转发!欢迎扫码关注个人公众号!

公众号二维码


目录

一、重启策略

1、基本介绍

2、资源清单(示例)

二、滚动更新策略

1、基本介绍

2、资源清单(示例)

3、主要优点


一、重启策略
1、基本介绍

重启策略(Restart Policy)定义了当 Pod 中的容器失败时,Kubernetes 如何响应。

重启策略有 3 种选项:

  • Always:默认策略,无论容器以什么状态退出,Kubernetes 都会尝试重启容器
  • OnFailure:只有当容器以非零状态退出时,Kubernetes 才会重启容器。这可以防止在容器正常退出时不必要的重启
  • Never:无论容器以什么状态退出,Kubernetes 都不会重启容器。这通常用于批处理作业,其中失败的作业不需要重新启动

2、资源清单(示例)
apiVersion: apps/v1
kind: Deployment
metadata:
  nanme: demo-deployment
spec:
...
    spec:
      containers:
      - name: demo-container
...
      restartPolicy: Always
...


二、滚动更新策略
1、基本介绍

Deployment 对象的镜像、env 环境变量等发生变更后,Deployment 控制器会对 Pod 进行更新,有 2 种更新策略可选:

  • Recreate:重新创建,先杀死运行中的 Pod 再创建新的 Pod
  • RollingUpdate:滚动更新,通过 ReplicaSet 控制器对旧 Pod 进行有序替换

滚动更新策略(Rolling Update Strategy)可以通过逐步替换旧版本的 Pod 的方式,来实现应用程序的平滑过渡,确保应用程序的可用性和提供服务的稳定性。

2、资源清单(示例)
apiVersion: apps/v1
kind: Deployment
metadata:
  nanme: demo-deployment
spec:
...
  minReadySeconds: 5                  # 等待设置的时间后开始更新
  revisionHistoryLimit: 10            # 最多保存多少个历史版本
  strategy:
    type: RollingUpdate
    rollingUpdate:
      maxSurge: 25%
      maxUnavailable: 25%
...
    spec:
      containers:
      - name: demo-container
...


标签:...,策略,Kubernetes,容器,重启,更新,Pod,K8s
From: https://blog.csdn.net/2401_82795112/article/details/140213691

相关文章

  • 数字货币高频交易策略解析:深入理解与实践指南
    随着数字货币市场的蓬勃发展,高频交易(High-FrequencyTrading,HFT)逐渐成为投资者关注的焦点。高频交易以其快速的交易执行和微小的利润累积而闻名,是量化交易领域中的一颗璀璨明珠。本文将为读者提供一份深入浅出的高频交易策略解析与实践指南。高频交易的前提条件在数字货币......
  • 手工测试与APPSCAN自动化测试结合的提高效率测试策略
    背景   手工探索性测试(ManualExploratoryTesting,简称MET)是一种软件测试方法,它依赖于测试人员的直觉、经验和即兴发挥来探索应用程序或系统。与传统的脚本化测试相比,手工探索性测试不遵循固定的测试脚本,而是允许测试人员自由地与应用程序交互,以发现潜在的问题和缺陷。以下是......
  • 从 Helm 到 Operator:Kubernetes应用管理的进化
    ......
  • 2.基于Containerd运行时搭建Kubernetes多控制平面集群实践-腾讯云开发者社区-腾讯云
    https://cloud.tencent.com/developer/article/2129846 2.基于Containerd运行时搭建Kubernetes多控制平面集群实践发布于2022-09-2919:27:53 1K0 举报文章被收录于专栏:全栈工程师修炼之路[TOC] 0x00前言简述本章主要讲述,如果使用kubead......
  • 味蕾与理解:应对自闭症儿童挑食的策略与理解
    在星贝育园自闭症康复学校,我们深知饮食习惯对孩子们的成长至关重要,而自闭症儿童的挑食问题往往比同龄儿童更为突出,给家长和照顾者带来了额外的挑战。今天,作为这里的老师,我想与大家分享一些应对自闭症儿童挑食的策略,以及如何以理解和耐心,帮助他们建立更健康的饮食习惯。一、理......
  • kubernetes集群部署:node节点部署和cri-docker运行时安装(四)
    安装前准备同《kubernetes集群部署:环境准备及master节点部署(二)》安装cri-docker在Kubernetes1.20版本之前,Docker是Kubernetes默认的容器运行时。然而,Kubernetes社区决定在Kubernetes1.20及以后的版本中逐步淘汰对Docker的直接支持,一直到Kubernetes1.24版本彻底......
  • Kubernetes——Helm(二)
    我们已经知道了如何将信息传到模板中。但是传入的信息并不能被修改。有时我们希望以一种更有用的方式来转换所提供的数据。一、函数初体验quote函数:把.Values对象中的字符串属性用引号引起来,然后放到模板中。apiVersion:v1kind:ConfigMapmetadata:name:{{.Rele......
  • Kubernetes client-go源码走读
    Informer机制Kubernetes使用Informer代替Controller去访问APIServer,Controller的所有操作都和Informer进行交互,而Informer并不会每次都去访问APIServer。Informer使用ListAndWatch的机制,在Informer首次启动时,会调用LISTAPI获取所有最新版本的资源对象,然后再通过WATCH......
  • Linux容器篇-使用kubeadm搭建一个kubernetes集群
    kubernetes集群架构和组件master节点组件kube-apiserver:KubernetesAPI,集群的统一入口,各组件的协调者,以RESTfulAPI提供接口服务,所有对象资源的增删改查和监听操作都交给APIserver处理后再交给Etcd存储。kube-controller-manager:处理集群中的常规后台事务,一个资源对应......
  • 横截面交易策略:概念与示例
    更多精彩内容,欢迎关注公众号:数量技术宅,也可添加技术宅个人微信号:sljsz01,与我交流。什么是横截面策略横截面交易策略(Cross-SectionalTradingStrategy)是一种金融市场上的交易策略,它是基于不同资产之间的相对价值或其他因子的差异来进行投资决策。这种策略的核心思想是比较和选......