k8s常见知识
为了工作方便,对一些常见知识点进行梳理,便于沟通
1. Pod原地更新
https://developer.aliyun.com/article/765421
Deployment、statefulset不具备,cloneset和appset具备
原理:k8s支持pod容器原地升级,当只更改容器的env、image、volumemounts等字段时,可以不重建pod,直接升级容器。该过程,pod的网络、ip等都不变化。
cloneset和appset 针对InPlace类型的升级,直接将上述字段变更,patch到pod里面,触发容器升级。
容器升级过程中,kubelet 会感知到这个 容器 的 hash 发生了变化,随即就会停掉对应的旧容器,并用新的容器来拉镜像、创建和启动新容器。
问题1:如何判断Pod原地更新成功?
在更新了 spec 镜像之后,如果观察到 Pod 的 status.containerStatuses[x].imageID 变化了,我们就认为原地升级已经重建了容器。
问题2:如何保证流量无损更新?
正常情况下,pod状态变为ready,service就会认为pod启动成功,挂到ep上,导入流量。
Pod原地更新过程中,涉及容器重建,需要一些机制调整:
1. 更新前,在pod.status.condition的InPlaceUpdateReady condition设置为false,kubelet感知后,让Pod变成NotReady状态,从而从ep上摘除。
2.更新后,InPlaceUpdateReady condition设置为true,触发kubelete将Pod变成Ready状态,重新挂量。
k8s常见知识的更多相关文章
- 《两地书》--Kubernetes(K8s)基础知识(docker容器技术)
大家都知道历史上有段佳话叫“司马相如和卓文君”.“皑如山上雪,皎若云间月”.卓文君这么美,却也抵不过多情女儿薄情郎. 司马相如因一首<子虚赋>得汉武帝赏识,飞黄腾达之后便要与卓文君“故来相 ...
- Kubernetes(K8s)基础知识(docker容器技术)
今天谈谈K8s基础知识关键词: 一个目标:容器操作:两地三中心:四层服务发现:五种Pod共享资源:六个CNI常用插件:七层负载均衡:八种隔离维度:九个网络模型原则:十类IP地址:百级产品线:千级物理机 ...
- ASP.NET Core on K8S深入学习(1)K8S基础知识与集群搭建
在上一个小系列文章<ASP.NET Core on K8S学习初探>中,通过在Windows上通过Docker for Windows搭建了一个单节点的K8S环境,并初步尝试将ASP.NE ...
- http一些常见知识记录
HTTP请求包(浏览器信息) 我们先来看看Request包的结构, Request包分为3部分,第一部分叫Request line(请求行), 第二部分叫Request header(请求头),第三部 ...
- k8s基础知识
k8s部署到云计算上的优势 传统模式: 在k8s外部部署一个外置调度器,请求先到物理node节点ip地址,由物理服务地址再转发代理至service地址,如果node节点也是私网地址呢,就需要再外部部署 ...
- php常见知识
printf("%.nf",&f);这个n代表显示浮点数时,小数点后显示几位:0就是不显示小数点后的数,1就是显示小数点后1位:
- Java常见知识问答
1.String.StringBuilder.StringBuffer (1).String是字符串常量,不允许改变 (2).StringBuffer先开辟了一块空间,可以允许改变,即向这个空间添加值 ...
- Android 常见知识整理(1)
Android Support V4, V7, V13的作用与用法 http://blog.csdn.net/hh2000/article/details/39718623 2. 开源项目 注解 ...
- 网易AI工程师面试常见知识
- Maven常见知识介绍
1)pom详解 2)pom详解 3)测试 4)插件与生命周期 5)maven生命周期 6)范围依赖
随机推荐
- Blazor学习之旅:文章目录索引
1 Blazor学习路径 微软学习社区(Microsoft Learn)早在两三年前就推出了一门学习路径<使用Blazor构建Web应用程序>,我们可以学到如何通过Blazor Web应用 ...
- ai 赋能
独立平台 chatGpt(推荐) 点击这里使用:https://chatgpt.com 排名第一,实至名归,是 OpenAI 公司开发的一种基于 GPT 模型的对话生成系统,主要用于人机交互,如聊天机 ...
- Python 脚本最佳实践2025版
前文 可以直接把这篇文章喂给 AI, 可以放到 AI 角色设定里, 也可以直接作为提示词. 这样, 你只管提需求, 写脚本就让 AI 来. 概述 追求简洁和清晰:脚本应简单明了. 使用函数 (func ...
- C23和C++26的#embed嵌入资源指南
c++26最近刚敲定标准,新增了许多重量级特性. 不过目前能实际上手测试的特性不多,毕竟标准刚刚确定,比较大的变更里只有"资源嵌入"或者用标准文档里英文名"resourc ...
- ItemTouchHelper拖动结束取得目标索引位置
重写 clearView 要想取得目标索引位置,需要找到拖动结束,松开鼠标后的调用方法 //拖动完成之后调用,所操作的viewHolder即为目标位置的项目 @Override public void ...
- OS-Ubuntu-Server-Connect to Wi-Fi using "netplan" From Terminal on Debian 11/10 with WPA Supplicant
0.netplan: netplan generate netplan apply wget https://dl.google.com/linux/direct/google-chrome-stab ...
- 解密prompt系列57. Agent Context Engineering - 多智能体代码剖析
承接上篇对Context Engineering的探讨,本文将聚焦多智能体框架中的上下文管理实践.我们将深入剖析两个代表性框架:字节跳动开源的基于预定义角色与Supervisor-Worker模式的 ...
- 快速认识Delphi--九五小庞
1.什么是Delphi: Delphi 不是一门编程语言,它只是一个IDE,和VS,Eclipse,VSCode,Pycharm... 一样,只是一个编程工具,但他主要是针对Pascal语言编程,因此 ...
- Shader Graph 冲击波特效
冲击波特效 https://www.bilibili.com/video/BV1L341167Y4/?vd_source=106601ca71b1d910c1ac4aa2466b744c https: ...
- 浅析快速傅里叶变换(FFT)
哈喽大家好,我是 doooge,今天给大家来点想看的东西啊. \[\Huge \sf 浅析快速傅里叶变换(FFT) \] 1. 前置知识 工欲善其事,必先利其器,讲 FFT 之前我先将一些废话,如果你 ...