当前位置: 首页 > news >正文

k8s pod理论

一、Pod概述

1、Pod的定义

Pod是K8S中创建和管理的最小单位。

2、一个Pod至少包含多少容器

1个pause容器(基础容器/父容器/根容器)和 1个或者多个应用容器(业务容器)

通常一个Pod最好只包含一个应用容器,一个应用容器最好也只运行一个应用进程
同一个Pod里的容器都是运行在同一个node节点上的,并且共享 net mnt uts pid ipc 命名空间

3、pause容器的作用

给Pod容器组做环境初始化

作为linux命名空间共享的基础,为Pod里的其它容器提供网络、存储资源的共享
作为pid=1的init管控类进程管理整个Pod容器组的生命周期

二、Pod的3种类型

  • 控制器管理的Pod:

由scheduler调度到node节点运行的;被控制器管理的;有自愈能力,一旦Pod挂掉了,会被控制器重新拉起;有副本管理、滚动更新等功能
创建命令:kubectl create deployment ....     控制器有 deployment  statefulset   deamonset 

  • 自主独立的Pod:

由scheduler调度到node节点运行的;不被控制器管理的;没有自愈能力,一旦Pod挂掉了,不会被重新拉起;没有副本管理、滚动更新等功能
创建命令:kubectl run

  • 静态Pod:

不由scheduler调度到node节点运行的,而是由kubelet自行管理的;始终与kubelet运行在同一个node节点上;通过向apiserver发送请求无法直接删除的
在node节点的/etc/kubernetes/manifests目录中放置Pod的yaml配置文件,kubelet就会自动根据yaml配置文件创建静态Pod

三、Pod中的3种容器

  • pause容器(基础容器/父容器/根容器)

给Pod容器组做环境初始化,作为linux命名空间共享的基础,为Pod里的其它容器提供网络、存储资源的共享,作为pid=1的init管控类进程管理整个Pod容器组的生命周期。pause容器是Pod最先启动的容器。

  • init容器(初始化容器/init container)

可以在应用容器启动前,为应用容器提供运行依赖环境或工具包;还可以阻塞或延迟应用容器的启动
init容器是在pause容器之后启动的;如果Pod定义了多个init容器,它们是串行启动的,即要在上一个init容器成功的完成启动退出后才会启动

  • 应用容器(业务容器/main container)

提供应用程序业务,应用容器是在所有init容器都成功的完成启动退出后才会启动;如果Pod定义了多个应用容器,它们是并行启动

四、Pod容器的3种镜像拉取策略

imagePullPolicy(与image字段同一层级)

IfNotPresent:优先使用node节点本地已存在的镜像,如果本地没有则从仓库拉取镜像。是标签为非latest的镜像的默认拉取策略
Always:总是从仓库拉取镜像,无论node节点本地是否已存在镜像。是标签为latest或无标签的镜像的默认拉取策略
Never:仅使用node节点本地镜像,总是不从仓库拉取镜像。

五、Pod容器的3种重启策略

restartPolicy(与containers字段同一层级)

Always:当Pod容器退出时,总是重启容器,无论容器退出状态码如何。是默认的容器重启策略
OnFailure:当Pod容器异常退出时(容器退出状态码为非0),才会重启容器;正常退出的容器(容器退出状态码为0)不重启
Never:当Pod容器退出时,总是不重启容器,无论容器退出状态码如何

deamonset statefulset控制器的Pod容器重启策略只能设置为 Always,自主类型的Pod容器重启策略可选择 Always OnFailure Never

相关文章:

k8s pod理论

一、Pod概述 1、Pod的定义 Pod是K8S中创建和管理的最小单位。 2、一个Pod至少包含多少容器 1个pause容器(基础容器/父容器/根容器)和 1个或者多个应用容器(业务容器) 通常一个Pod最好只包含一个应用容器,一个应用容…...

智慧应急:构建全方位、立体化的安全保障网络

一、引言 在信息化、智能化快速发展的今天,传统的应急管理模式已难以满足现代社会对安全保障的需求。智慧应急作为一种全新的安全管理模式,旨在通过集成物联网、大数据、云计算、人工智能等先进技术,实现对应急事件的快速响应、精准决策和高…...

国际黄金价格是什么?和黄金价格有何区别?

黄金是世界上最珍贵的贵金属之一,其价值被无数人所垂涎。而国际黄金价格作为市场上的参考指标,直接影响着黄金交易的买卖。那么国际黄金价格到底是什么,与黄金价格又有何区别呢?本文将为您详细解答。 国际黄金价格是指以美元计量的…...

React入门简介

React简介 react是Facebook用来创建用户界面的js库。React不是一个MVC框架,而是一个用于构建组件ui库,是一个前端界面开发工具,所以很多人认为React是MVC中的V(视图)。React的存在能够很好的解决‘构建随着时间数据不断…...

强化学习_06_pytorch-PPO实践(Hopper-v4)

一、PPO优化 PPO的简介和实践可以看笔者之前的文章 强化学习_06_pytorch-PPO实践(Pendulum-v1) 针对之前的PPO做了主要以下优化: batch_normalize: 在mini_batch 函数中进行adv的normalize, 加速模型对adv的学习policyNet采用beta分布(0~1): 同时增加MaxMinScale …...

Scala Intellij编译错误:idea报错xxxx“is already defined as”

今天写scala代码时,Idea报了这样的错误,如下图所示: 一般情况下原因分两种: 第一是我们定义的类或对象重复多次出现,编译器无法确定使用哪个定义。 这通常是由于以下几个原因导致的: 重复定义:在同一个文件…...

面试笔记系列五之MySql+Mybaits基础知识点整理及常见面试题

myibatis执行过程 1读取MyBatis的配置文件。 mybatis-config.xml为MyBatis的全局配置文件,用于配置数据库连接信息。 2加载映射文件。映射文件即SQL映射文件,该文件中配置了操作数据库的SQL语句,需要在MyBatis配置文件mybatis-config.xml中…...

掌握Pillow:Python图像处理的艺术

掌握Pillow:Python图像处理的艺术 引言Python与图像处理的概述Pillow库基础导入Pillow库基本概念图像的打开、保存和显示 图像操作基础图像的剪裁图像的旋转和缩放色彩转换和滤镜应用文字和图形的绘制 高级图像处理图像的合成与蒙版操作像素级操作与图像增强复杂图形…...

React最常用的几个hook

React最常用的几个Hook包括:useState、useEffect、useRef以及useContext。 useState: 用于在函数组件中添加状态管理。它返回一个数组,第一个元素是当前状态的值,第二个元素是更新状态的函数。在使用时,可以通过解构赋…...

自然语言处理Gensim入门:建模与模型保存

文章目录 自然语言处理Gensim入门:建模与模型保存关于gensim基础知识1. 模块导入2. 内部变量定义3. 主函数入口 (if __name__ __main__:)4. 加载语料库映射5. 加载和预处理语料库6. 根据方法参数选择模型训练方式7. 保存模型和变换后的语料8.代码 自然语言处理Gens…...

Windows 10中Visual Studio Code(VSCode)无法自动打开终端的解决办法

1.检查设置: 打开VSCode。点击左侧菜单栏的“文件”(File)。选择“首选项”(Preferences)。点击“设置”(Settings)。在搜索框中输入“shell”,然后点击“settings.json”进行编辑。…...

python dictionary 字典中的内置函数介绍及其示例

Python字典内置方法: 本文介绍了Python字典(dictionary)中的内置函数及其用法示例。字典是Python中非常常用的一种数据结构,它允许我们通过键(key)来快速查找、添加、修改或删除值(value&#…...

pdf转word文档怎么转?分享4种转换方法

pdf转word文档怎么转?在日常工作中,我们经常遇到需要将PDF文件转换为Word文档的情况。无论是为了编辑、修改还是为了重新排版,将PDF转为Word都显得尤为重要。那么,PDF转Word文档怎么转呢?今天,就为大家分享…...

深度测试:指定DoC ID对ES写入性能的影响

在[[使用python批量写入ES索引数据]]中已经介绍了如何批量写入ES数据。基于该流程实际测试一下指定文档ID对ES性能的影响有多大。 一句话版 指定ID比不指定ID的性能下降了63%,且加剧趋势。 以下是测评验证的细节。 百万数据量 索引默认使用1分片和1副本。 指定…...

【JGit】 AddCommand 新增的文件不能添加到暂存区

执行git.add().addFilepattern(".").setUpdate(true).call() 。新增的文件不能添加到暂存区,为什么? 在 JGit 中,setUpdate(true) 方法用于在调用 AddCommand 的 addFilepattern() 方法时,将已跟踪文件标记为需要更新。…...

golang学习6,glang的web的restful接口传参

1.get传参 //get请求 返回json 接口传参r.GET("/getJson/:id", controller.GetUserInfo) 1.2.接收处理 package controllerimport "github.com/gin-gonic/gin"func GetUserInfo(c *gin.Context) {_ c.Param("id")ReturnSucess(c, 200, &quo…...

Carla自动驾驶仿真八:两种查找CARLA地图坐标点的方法

文章目录 前言一、通过Spectator获取坐标二、通过道路ID获取坐标总结 前言 CARLA没有直接的方法给使用者查找地图坐标点来生成车辆,这里推荐两种实用的方法在特定的地方生成车辆。 一、通过Spectator获取坐标 1、Spectator(观察者)&#xf…...

HarmonyOS | 状态管理(八) | PersistentStorage(持久化存储UI状态)

系列文章目录 1.HarmonyOS | 状态管理(一) | State装饰器 2.HarmonyOS | 状态管理(二) | Prop装饰器 3.HarmonyOS | 状态管理(三) | Link装饰器 4.HarmonyOS | 状态管理(四) | Provide和Consume装饰器 5.HarmonyOS | 状态管理(五) | Observed装饰器和ObjectLink装饰器 6.Harmo…...

Git 突破 文件尺寸限制

前言 当Git本地存储里右超过50MB,却又确实需要上传的时候,就需要用到了不是 解决 本代码就是把大文件进行拆解成小文件,然后上传。 等到拉取下来的时候,可以直接再进行合并,合并成原文件 代码如下,仅供…...

HarmonyOS开发云工程与开发云函数

创建函数 您可直接在DevEco Studio创建函数、编写函数业务代码、为函数配置调用触发器。 1.右击“cloudfunctions”目录,选择“New > Cloud Function”。 2.输入函数名称后,点击“OK”。 函数名称仅支持小写英文字母、数字、中划线(-&a…...

[2025CVPR]DeepVideo-R1:基于难度感知回归GRPO的视频强化微调框架详解

突破视频大语言模型推理瓶颈,在多个视频基准上实现SOTA性能 一、核心问题与创新亮点 1.1 GRPO在视频任务中的两大挑战 ​安全措施依赖问题​ GRPO使用min和clip函数限制策略更新幅度,导致: 梯度抑制:当新旧策略差异过大时梯度消失收敛困难:策略无法充分优化# 传统GRPO的梯…...

conda相比python好处

Conda 作为 Python 的环境和包管理工具,相比原生 Python 生态(如 pip 虚拟环境)有许多独特优势,尤其在多项目管理、依赖处理和跨平台兼容性等方面表现更优。以下是 Conda 的核心好处: 一、一站式环境管理&#xff1a…...

调用支付宝接口响应40004 SYSTEM_ERROR问题排查

在对接支付宝API的时候,遇到了一些问题,记录一下排查过程。 Body:{"datadigital_fincloud_generalsaas_face_certify_initialize_response":{"msg":"Business Failed","code":"40004","sub_msg…...

黑马Mybatis

Mybatis 表现层&#xff1a;页面展示 业务层&#xff1a;逻辑处理 持久层&#xff1a;持久数据化保存 在这里插入图片描述 Mybatis快速入门 ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/6501c2109c4442118ceb6014725e48e4.png //logback.xml <?xml ver…...

Nuxt.js 中的路由配置详解

Nuxt.js 通过其内置的路由系统简化了应用的路由配置&#xff0c;使得开发者可以轻松地管理页面导航和 URL 结构。路由配置主要涉及页面组件的组织、动态路由的设置以及路由元信息的配置。 自动路由生成 Nuxt.js 会根据 pages 目录下的文件结构自动生成路由配置。每个文件都会对…...

如何将联系人从 iPhone 转移到 Android

从 iPhone 换到 Android 手机时&#xff0c;你可能需要保留重要的数据&#xff0c;例如通讯录。好在&#xff0c;将通讯录从 iPhone 转移到 Android 手机非常简单&#xff0c;你可以从本文中学习 6 种可靠的方法&#xff0c;确保随时保持连接&#xff0c;不错过任何信息。 第 1…...

BCS 2025|百度副总裁陈洋:智能体在安全领域的应用实践

6月5日&#xff0c;2025全球数字经济大会数字安全主论坛暨北京网络安全大会在国家会议中心隆重开幕。百度副总裁陈洋受邀出席&#xff0c;并作《智能体在安全领域的应用实践》主题演讲&#xff0c;分享了在智能体在安全领域的突破性实践。他指出&#xff0c;百度通过将安全能力…...

全志A40i android7.1 调试信息打印串口由uart0改为uart3

一&#xff0c;概述 1. 目的 将调试信息打印串口由uart0改为uart3。 2. 版本信息 Uboot版本&#xff1a;2014.07&#xff1b; Kernel版本&#xff1a;Linux-3.10&#xff1b; 二&#xff0c;Uboot 1. sys_config.fex改动 使能uart3(TX:PH00 RX:PH01)&#xff0c;并让boo…...

推荐 github 项目:GeminiImageApp(图片生成方向,可以做一定的素材)

推荐 github 项目:GeminiImageApp(图片生成方向&#xff0c;可以做一定的素材) 这个项目能干嘛? 使用 gemini 2.0 的 api 和 google 其他的 api 来做衍生处理 简化和优化了文生图和图生图的行为(我的最主要) 并且有一些目标检测和切割(我用不到) 视频和 imagefx 因为没 a…...

Java 与 MySQL 性能优化:MySQL 慢 SQL 诊断与分析方法详解

文章目录 一、开启慢查询日志&#xff0c;定位耗时SQL1.1 查看慢查询日志是否开启1.2 临时开启慢查询日志1.3 永久开启慢查询日志1.4 分析慢查询日志 二、使用EXPLAIN分析SQL执行计划2.1 EXPLAIN的基本使用2.2 EXPLAIN分析案例2.3 根据EXPLAIN结果优化SQL 三、使用SHOW PROFILE…...