文章目录

  • 前言
    • k8s 增量更新 po
      • 1. 导出要新建po 的控制器配置
      • 2. 配置详解
      • 3. 重新生效

前言

  如果您觉得有用的话,记得给博主点个赞,评论,收藏一键三连啊,写作不易啊^ _ ^。
  而且听说点赞的人每天的运气都不会太差,实在白嫖的话,那欢迎常来啊!!!


k8s 增量更新 po

1. 导出要新建po 的控制器配置

为了方便,直接导出现有的控制器配置。
查询配置:

kubectl get deploy -n <命名空间> | grep <过滤字符串>

在这里插入图片描述
导出 干净的“可 apply”版本命令:

kubectl get deploy <my-deploy> -n <命名空间> -o yaml \| sed -e '/^  uid:/d' \-e '/^  resourceVersion:/d' \-e '/^  creationTimestamp:/d' \-e '/^  generation:/d' \-e '/^status:$/,/^[^ ]/d' \> deploy_20250905.yaml

额外清理:

  • 删掉 managedFields 整块(这是冗余的操作记录,API 会自己维护)。
  • 删掉 fieldsType / fieldsV1 / manager / operation / time(都属于 managedFields 的子字段)。

2. 配置详解

在这里插入图片描述
脱敏详细配置:

apiVersion: apps/v1
kind: Deployment
metadata:annotations:deployment.kubernetes.io/revision: "7"meta.helm.sh/release-name:demo-service-bjmeta.helm.sh/release-namespace: demo-bjlabels:app:demo-service-bj-taskapp.kubernetes.io/instance:demo-service-bjapp.kubernetes.io/managed-by: Helmapp.kubernetes.io/name: demo-serviceapp.kubernetes.io/version: "2.0"helm.sh/chart: demo-service-0.1.1name:demo-service-bj-tasknamespace: magic2-bj
spec:progressDeadlineSeconds: 600replicas: 1revisionHistoryLimit: 10selector:matchLabels:app:demo-service-bj-taskstrategy:rollingUpdate:maxSurge: 50%maxUnavailable: 50%type: RollingUpdatetemplate:metadata:annotations:kubectl.kubernetes.io/restartedAt: "2025-05-22T09:58:54+08:00"creationTimestamp: nulllabels:app:demo-service-bj-taskspec:containers:- command:- /bin/sh- -c- 'java -Xms1024M -Xmx2024M demo.jar 'env:- name: NACOSURLvalue: yzy:8848image: 镜像imagePullPolicy: IfNotPresentlivenessProbe:exec:command:- /bin/sh- -c- /usr/bin/curl -X GET -s '存活接口(存活探针,检查容器是否健康运行,不健康会被重启)'| grep instanceIdfailureThreshold: 5initialDelaySeconds: 60periodSeconds: 20successThreshold: 1timeoutSeconds: 3name: appports:- containerPort: 8080protocol: TCPreadinessProbe:exec:command:- /bin/sh- -c- /usr/bin/curl -X GET -s '请求接口(就绪探针,检查容器是否可对外服务)'| grep instanceIdfailureThreshold: 3periodSeconds: 10successThreshold: 1timeoutSeconds: 1resources:limits:cpu: "2"memory: 4000Mirequests:cpu: 100mmemory: 500MiterminationMessagePath: /dev/termination-logterminationMessagePolicy: FilevolumeMounts:- mountPath: /etc/localtimename: host-timereadOnly: true- mountPath: /home/app/jarsname: yzydnsPolicy: ClusterFirstnodeSelector:kubernetes.io/hostname: <ip>restartPolicy: AlwaysschedulerName: default-schedulersecurityContext: {}serviceAccount:demo-service-bjserviceAccountName:demo-service-bjterminationGracePeriodSeconds: 30volumes:- hostPath:path: /etc/localtimetype: ""name: host-time- hostPath:path: /data/demo/jarstype: Directoryname: yzy
配置块说明(通用讲解)
apiVersion / kind定义资源类型,这里是 Deployment。
metadata元数据:名称、命名空间、标签、注解(一般用于标识应用、Helm 信息、运维追踪)。
spec.replicas副本数量,决定 Pod 的数量。
spec.selector选择器,Deployment 根据标签找到自己要管理的 Pod。
spec.strategy更新策略,常见是 RollingUpdate(滚动更新),可配置 maxSurge / maxUnavailable。
template.metadata.labelsPod 模板里的标签,要和 selector 匹配。
containers.image容器镜像地址,定义运行环境和应用内容。
containers.command容器启动命令,一般用来启动主程序(如 java -jar xxx.jar)。
containers.env环境变量:可以是固定值(配置中心地址),也可以是动态值(如 Pod 名称)。
containers.ports容器对外暴露的端口。
livenessProbe存活探针,检查容器是否健康运行,不健康会被重启。
readinessProbe就绪探针,检查容器是否可对外服务,失败则不会接收流量。
resources.requests最低资源需求(CPU/内存)。
resources.limits资源上限,防止容器无限占用。
volumeMounts容器内挂载点,通常用于挂载配置文件、日志目录、本地时间等。
volumesPod 使用的存储卷定义(如宿主机目录、ConfigMap、Secret)。
nodeSelector节点选择器,强制 Pod 调度到某些节点上。
serviceAccountNamePod 使用的 ServiceAccount,用于 RBAC 权限控制。
restartPolicy重启策略,Deployment 下通常是 Always。
terminationGracePeriodSeconds优雅关闭等待时间,默认 30 秒。

3. 重新生效

kubectl apply -f deploy_20250905.yaml -n <命名空间>

注:对象存在就 增量更新,不存在就 新建;Deployment 更新会 触发滚动发布。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/bicheng/95899.shtml
繁体地址,请注明出处:http://hk.pswp.cn/bicheng/95899.shtml
英文地址,请注明出处:http://en.pswp.cn/bicheng/95899.shtml

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于stm32的车辆安全驾驶预警系统

若该文为原创文章&#xff0c;转载请注明原文出处。一、 项目背景与引言(一) 研究背景及意义道路交通安全是全球性的重大公共安全问题。据统计&#xff0c;绝大多数交通事故源于驾驶员的危险状态&#xff08;疲劳、分心、健康突发状况&#xff09;和危险驾驶行为&#xff08;超…

React学习教程,从入门到精通, React 新创建组件语法知识点及案例代码(11)

React 新创建组件语法知识点及案例代码 React 是由 Facebook 开发的一个用于构建用户界面的 JavaScript 库。随着 React 的不断发展&#xff0c;创建组件的方式也在不断演进。本文将详细介绍 React 中创建组件的最新语法&#xff0c;包括函数组件&#xff08;Functional Compo…

SQL Server全链路安全防护

SQL Server 的安全性是一个多层次、综合性的体系&#xff0c;旨在保护数据免受未授权访问、篡改和泄露。其核心安全机制可概括为以下几个方面&#xff1a;1. 身份验证&#xff08;Authentication&#xff09; Windows 身份验证&#xff1a; 使用 Windows 账户&#xff08;域/本…

如何利用Web3提升企业竞争力

在这个信息爆炸的时代&#xff0c;Web3技术以其独特的去中心化、透明性和用户主权特性&#xff0c;成为企业提升竞争力的新战场。本文将深入探讨企业如何把握Web3的浪潮&#xff0c;实现业务的飞跃。 1. 把握Web3的核心价值 Web3的核心在于去中心化、透明性和用户主权。这种模式…

HOW - 在浏览器下载一个 Excel 表格文件

文章目录一、技术方案二、前端具体实现代码分析转换逻辑注意事项一、技术方案 后台返回 base64 数据 {code: 0,data: "base64;...", }前端进行数据格式转化并下载成 Excel 文件 这篇文章主要介绍第二个步骤的实现。 二、前端具体实现 代码 src/utils/transform…

【Android】Room数据库的使用

三三要成为安卓糕手 引入 Room是一个抽象层&#xff0c;对SQLite进行了封装&#xff0c;简化了SQLite数据库的操作&#xff0c;让开发者能以更加对象化的方式进行数据库操作&#xff1b;Room解决了SQLite操作繁琐&#xff0c;容易产生错误的问题&#xff0c;让开发者能以更加对…

Next.js 介绍:为什么选择它来构建你的下一个 Web 应用?

Next.js 介绍&#xff1a;为什么选择它来构建你的下一个 Web 应用&#xff1f; 作者&#xff1a;码力无边你好&#xff0c;欢迎来到我们的 Next.js 专栏&#xff01;在接下来的 30 篇文章中&#xff0c;我们将一起踏上一段从入门到精通的旅程&#xff0c;深入探索这个强大而优雅…

开发环境 之 编辑器、编译器、IDE梳理

小生第一次学习编程时&#xff0c;懵懵搞不懂编辑器、编译器、IDE区别&#xff0c;虽然这对前期学习编程语言语法的影响不是很大&#xff0c;但是现在梳理一下&#xff0c;总归心里踏实些。 一、概念及区别 IDE是前面几者的集成&#xff0c;前面几个分别是IDE的子集。对比维度编…

高级RAG策略学习(六)——Contextual Chunk Headers(CCH)技术

Contextual Chunk Headers&#xff08;CCH&#xff09;技术深度解析 第一部分&#xff1a;理论基础与核心原理 一、核心定义&#xff1a;给 “文本块” 加 “上下文标签” Contextual Chunk Headers&#xff08;上下文块标题&#xff0c;简称 CCH&#xff09;本质是为文档拆分后…

人形机器人控制系统核心芯片从SoC到ASIC的进化路径

目录&#xff1a; 0 前言 1 人形机器人控制系统核心芯片选择ASIC而非SoC的理由 1.1 SoC的架构特征 1.2 ASIC的架构特征 1.3 SoC的优势&#xff08;继承软件生态&#xff09; 1.4 ASIC的优势&#xff08;硬件底层算法就是应用层算法&#xff09; 1.5 人形机器人控制系统核…

linux thread 线程一

thread线程是linux的重要概念。线程不能独立存在&#xff0c;必须在进程中存在。一个进程必须有一个线程&#xff0c;如果进程中没有创建新线程&#xff0c;进程启动后本身就有一个线程。使用getpid、getppid获取进程的进程ID和父进程ID。使用pthread_self获取到当前线程的ID。…

Arduino Nano33 BLESense Rev2【室内空气质量检测语音识别蓝牙调光台灯】

一、硬件介绍 1、产品特点 Arduino Nano 33 BLE Rev2&#xff0c;利用了nRF52840微控制器的先进功能。这款32位Arm Cortex-M4 CPU 64 MHz与MicroPython的兼容性增强了板子的灵活性&#xff0c;该开发板的突出特点是其蓝牙低功耗&#xff08;BLE&#xff09;功能&#xff0c;使…

【问题解决】mac笔记本遇到鼠标无法点击键盘可响应处理办法?(Command+Option+P+R)

背景 如题。鼠标无法点击&#xff0c;但可以移动。触控板能够波动&#xff0c;鼠标翻页能够work&#xff0c;但是点击后无法响应。 根因 电脑缓存问题 解决办法 重置PRAM&#xff1a; 确保电脑关机状态&#xff08;可以先sudo shutdown -t now)&#xff08;一定要确保&#xff…

23ai数据库通过SQLcl生成AWR报告

‌1. 查看现有快照SQL> awr list snap;SNAP_ID DBID BEGIN_INTERVAL_TIME END_INTERVAL_TIME FLUSH_LEVEL __________ _____________ __________________________________ __________________________________ ______________793 …

基于Django+Vue3+YOLO的智能气象检测系统

基于DjangoVue3YOLO的智能气象检测系统 项目简介 本项目是一个集成了人工智能深度学习技术的现代化气象检测系统&#xff0c;采用前后端分离架构&#xff0c;结合YOLO目标检测算法&#xff0c;实现了对气象现象的智能识别与分析。系统提供了完整的用户管理、实时检测、历史记录…

(4)什么时候引入Seata‘‘

非常好的问题&#xff01;这两个问题正是技术选型时需要重点考虑的。什么时候需要引入 Seata&#xff1f;需要引入 Seata 的场景&#xff1a;跨数据库的分布式事务// 订单服务&#xff08;MySQL&#xff09; 库存服务&#xff08;PostgreSQL&#xff09; 账户服务&#xff08…

苹果内部 AI聊天机器人“Asa”曝光,为零售员工打造专属A

MacRumors网站的亚伦佩里斯&#xff08;Aaron Perris&#xff09;透露&#xff0c;苹果正在内部测试一款名为“Asa”的AI聊天机器人。这款工具旨在赋能Apple Store零售员工&#xff0c;帮助他们快速掌握iPhone等产品的特色和差异化使用场景&#xff0c;从而提升与顾客互动时的解…

MySQL常见报错分析及解决方案总结(12)---slave_net_timeout

关于超时报错&#xff0c;一共有五种超时参数&#xff0c;详见&#xff1a;MySQL常见报错分析及解决方案总结(7)---超时参数connect_timeout、interactive_timeout/wait_timeout、lock_wait_timeout、net等-CSDN博客 以下是当前报错的排查方法和解决方案&#xff1a; 在 Wind…

云计算学习笔记——日志、SELinux、FTP、systemd篇

《云计算学习日记Day15》—— 从零开始的云计算之旅 今天是系统学习云计算的第十五天&#xff0c;记录了关于我的云计算学习&#xff0c;后续将每日更新我的笔记。欢迎大家一起来学习&#xff0c;如果内容有遗漏和错误&#xff0c;还请大家多多指正和包涵&#xff0c;谢谢大家 …

3Ds Max Gamma值完全指南:问题识别与正确设置解析

当渲染图像与本地图片相比亮度偏黑或偏白时&#xff0c;很可能是因为Gamma输入输出设置不一致。需要注意的是&#xff0c;Gamma问题通常表现为整体亮度偏差&#xff0c;而非大面积曝光或全黑状况。Gamma设置教程问题一&#xff1a;Gamma校正未开启如果使用VR帧缓冲窗口渲染但未…