计划是再更两篇就完结k8s系列,其中CRD客户端资源定义会单独列一篇,或许会讲一讲operator。不过当前的k8s并没有细讲operator,因为涉及到很多的go语言内容,以及相关的package的方法。

这一部分主要就是讲一讲k8s如何进行监控和升级,以及ETCD备份与恢复,并会讲到Kustomize管理。前两部分的内容都是来维护k8s系统本身的,kustomize管理则是能够更好的管理资源,包括打补丁、定制化等内容。


监控与升级

[1]驱逐主节点的pod

先使用kubectl cordon cka-master用来禁止调度,`cordon`是​临时操作​,通过 API 修改节点状态,而  `NoSchedule`是​持久化污点​。`cordon`​不依赖 Pod 的容忍配置​,`NoSchedule`​需要 Pod 无匹配容忍才会生效​。

使用kubectl drain cka-master --delete-emptydir-data --ignore-daemonsets来驱逐除了daemonset部署的pod,并且删除使用emptydor临时挂载的目录。 `drain`是​命令式操作​,立即触发驱逐,绕过 Pod 的容忍配置。`NoExecute`是​声明式机制​,依赖控制器异步处理,并且​尊重 Pod 的容忍规则​。

[2]升级控制平面

使用kubeadm upgrade plan可以查看可以升级的版本,使用kubeadm upgrade apply v1.30.3 --etcd-upgrade=false可以先将kubeadm 升级到1.30.3,然后禁止etcd升级(升级kube-schedule、kube-apiserver、kube-controller-manage)。

主节点要升级kubectl,使用apt install kubectl=1.30.3-1.1 -y。至于所有节点都需要升级kubelet,如果不行的话,单独升级主机点的kubelet也行。使用apt install kubelet=1.30.3-1.1 -y,保证主节点的Kubelet的版本高于工作节点。

[3]恢复主节点的调度能力

先重新加载一下配置文件,使用systemctl daemon-reload,再使用systemctl restart kubelet.service来重启服务。使用kubectl uncordon cka-master恢复主节点的调度能力,这样被kubectl drain强制驱逐的pod又会重新调度到master节点上。

ETCD备份与恢复

需要单独安装etcd客户端,使用apt install etcd-client -y安装。我们通过etcd快照来备份数据库数据,但是ETCD 快照备份范围​仅包含静态 Pod 的状态,但不包含其本地 YAML 文件。因此我们要单独备份静态节点的yaml文件,然后将备份yaml文件放在指定的配置目录即可。

Kustomize管理

kustomization.yaml 文件是 Kustomize 的核心配置文件,定义了如何生成最终的 Kubernetes。在`base/kustomization.yaml`定义​基础资源的集合(指定资源路径)​,​`overlay/kustomization.yaml`​则定义​如何修改基础资源​,如补丁、命名空间、标签等。

在base目录下的kustomization.yaml文件中通过resources字段在定义 Kubernetes 资源列表,如deployment、service,secrets,configMaps等。overlay目录下的kustomization.yaml文件以base目录作为基础的目录(通过resources字段指定路径),可以包含额外的定制(如patches补丁)。

kustomize.yaml文件可以使用 configMapGenerator 和 secretGenerator(两目录中都能定义),它们可以根据文件或字面值生成 ConfigMap 或 Secret。patchesStrategicMerge 补丁方式使用 YAML 文件来定义,它允许通过metadata.name指定修改对应base中的资源。

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

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

相关文章

c语言之进程函数

1. 进程创建#include <sys/types.h>#include <unistd.h>pid_t fork(void);fork 创建一个新进程fork() creates a new process by duplicating the calling process. The new process is referred to as the child process. The calling process is refe…

学习python第12天

今日任务&#xff1a;DataFrameDataFrame的构造pandas.DataFrame(dataNone, indexNone, columnsNone, dtypeNone, copyFalse)参数说明&#xff1a;data&#xff1a;DataFrame 的数据部分&#xff0c;可以是字典、二维数组、Series、DataFrame 或其他可转换为 DataFrame 的对象。…

C++显示类型转换运算符static_cast使用指南

这是一篇关于 static_cast 用法的文章。本文会从基础概念到常见应用场景全覆盖&#xff0c;并附上代码示例以方便理解。C 中的 static_cast 用法详解 在 C 中&#xff0c;static_cast 是一种显式类型转换运算符&#xff0c;主要用于在编译期进行类型安全的转换。相比 C 风格的强…

es6常用方法来解决功能需求

前言&#xff1a;es6常用方法来解决功能需求。1、出现复杂的json字符串如何去解析&#xff1f;比如&#xff1a;下面这个字符串&#xff0c;如果用json.parse解析发现还是个字符串"\"[{\\\"orgId\\\":\\\"1054021138280960\\\",\\\"orgName…

龙虎榜——20250822

上证指数今天继续创新高收中阳线&#xff0c;量能维持在5天均量线附近&#xff0c;目前均线多头强势的走势&#xff0c;小级别也未出现反转信号&#xff0c;上涨趋势不要轻易看空。深证指数今天延续强势的走势&#xff0c;大涨收光头光脚的阳线&#xff0c;目前均线多头排列&am…

3维模型导入到3Dmax中的修改色彩简单用法----第二讲

目录回顾1 补充信息*stp导出没有颜色怎么办&#xff1f;*2 3Dmax的使用如果颜色丢失了怎么办呢&#xff1f;怎么实现一零件上多个色彩呢&#xff1f;怎么将零件绑到一起呢&#xff1f;怎么将三角形的面变成光滑曲面呢&#xff1f;回顾 上一讲&#xff0c;我们简单的说了一下&a…

智慧农业新基建:边缘计算网关在精准农业中的落地实践案例

智慧农业新基建&#xff1a;边缘计算网关在精准农业中的落地实践案例传统农业生产中&#xff0c;水肥管理依赖经验判断&#xff0c;往往造成资源浪费和产量不稳定&#xff1b;同时&#xff0c;恶劣的自然环境也给农业生产带来诸多挑战。而蓝蜂边缘计算网关在精准农业中的应用&a…

llm操控solidworks 画立方体 deepseek

deepseek接入solidowrks画立方体用eval方法链接llm和solidworks pythonwin32接口 离好的效果还差一个有脑子会生成复杂命令序列的ai 参考 基于Python的Solidworks二次开发方法_selectbyray-CSDN博客 Welcome - 2025 - SOLIDWORKS API Help 仓库 llm_sw: llm链接solidworks…

MySQL事务及原理详解

MySQL 事务 事务是一组不可分割的操作集合&#xff0c;这些操作要么同时成功提交&#xff0c;要么同时失败回滚。 acid事物的四大特性 原子性 最小工作单元&#xff0c;要么同时成功&#xff0c;要么同时失败。 例如A转账300给B,A账户-300与B账户300必须满足操作原子性&#xf…

Flutter上手记:为什么我的按钮能同时在iOS和Android上跳舞?[特殊字符][特殊字符]

文章目录&#x1f525; 先解决灵魂拷问&#xff1a;凭啥选Flutter&#xff1f;&#x1f9f1; 解剖Flutter&#xff1a;它肚子里藏着什么黑科技&#xff1f;三层蛋糕架构 &#x1f382;状态管理&#xff1f;江湖门派大战&#xff01; &#x1f94b;&#x1f6e0; 真实项目暴击&a…

单片 、物联网、51单片机、软硬件之基于STM32与蓝牙的仓储管控系统的设计与实现/基于物联网的仓库管理系统

单片 、物联网、51单片机、软硬件之基于STM32与蓝牙的仓储管控系统的设计与实现/基于物联网的仓库管理系统

Product Hunt 每日热榜 | 2025-08-22

1. Mocke 标语&#xff1a;模拟邮件营销&#xff1a;在不发起活动的情况下了解你的回复率 介绍&#xff1a;Mocke AI代理模拟运行电子邮件营销活动&#xff0c;并在一分钟内返回结果&#xff0c;包括邮件的打开率、回复率和退订率。它还会揭示每个潜在客户为何未打开邮件、报…

基于Java+SpringBoot+Vue+HTML5电影评论网站系统(源码+LW+调试文档+讲解等)/电影评论/网站系统/电影/评论/网站/系统/影评网站/电影网站/评论系统/电影评论系统

博主介绍 &#x1f497;博主介绍&#xff1a;✌全栈领域优质创作者&#xff0c;专注于Java、小程序、Python技术领域和计算机毕业项目实战✌&#x1f497; &#x1f447;&#x1f3fb; 精彩专栏 推荐订阅&#x1f447;&#x1f3fb; 2025-2026年最新1000个热门Java毕业设计选题…

家用电器,让现代家庭生活更美好

在现代家庭中&#xff0c;家用电器早已不再是冰冷的机器&#xff0c;而是成为了我们生活中不可或缺的一部分。它们以科技之名&#xff0c;融入我们的日常&#xff0c;让生活变得更加便捷、舒适和美好。 清晨&#xff0c;当第一缕阳光透过窗帘&#xff0c;智能咖啡机已经为您准备…

RabbitMQ延时队列的两种实现方式

目录 一、延时插件实现 1、版本要求 2、为运行新容器时安装 3、为已运行的容器安装 4、验证安装 5、代码编写 1. 配置类 2. 生产者 3. 消费者 二、死信队列实现 1、代码编写 1. 配置类 2. 生产者 3. 消费者 三、踩坑记录 1、发送消息失败 2、消息过期后未能转…

深度学习在股票量化中的应用

深度学习在股票量化中的具体应用&#xff1a;从时间序列预测到Alpha挖掘深度学习并非量化交易的银弹&#xff0c;但它是一套强大的工具集&#xff0c;能够解决传统量化方法难以处理的复杂问题。其核心价值在于从海量、高维、非结构化的数据中自动提取有效特征并发现非线性关系。…

Web 安全之 HTTP 响应截断攻击详解

这不是危言耸听。 在一次安全审计中&#xff0c;某电商平台发现&#xff1a; 用户访问首页后&#xff0c;自动跳转到了赌博网站。 但代码没被篡改&#xff0c;服务器没被入侵&#xff0c;日志一切正常。 最终追查发现—— 罪魁祸首&#xff0c;竟是一个 %0d%0a&#xff08;回车…

Envoy配置ext_proc

介绍 本文将使用gateway api inference extension作为envoy的ext_proc服务端 启动Ext_Proc 基于Gateway API Inference Extension https://github.com/kubernetes-sigs/gateway-api-inference-extension.git 先clone代码到本地 git clone https://github.com/kubernetes-…

echarts关系图(Vue3)

基础版效果图&#xff1a;后期请求接口&#xff0c;接入数据即可用<template><div><v-chartref"vChartRef":option"option"style"width: 100%; height: 800px"></v-chart></div> </template><script lan…

【LeetCode】17. 电话号码的字母组合

文章目录17. 电话号码的字母组合题目描述示例 1&#xff1a;示例 2&#xff1a;示例 3&#xff1a;提示&#xff1a;解题思路算法分析问题本质分析回溯法详解组合生成过程可视化数字映射关系各种解法对比算法流程图边界情况处理时间复杂度分析空间复杂度分析关键优化点实际应用…