Pod和容器的生命周期管理

Pod由一组应用容器组成,其中包含共有的环境和资源约束。在 CRI里,这个环境被称为PodSandbox。Kubernetes有意为容器运行时留 下一些发挥空间,它们可以根据自己的内部实现来解释PodSandbox。对 于Hypervisor类的运行时,PodSandbox会具体化为一个虚拟机。其他例 如Docker,会是一个Linux命名空间。在v1alpha1 API中,kubelet会创建 Pod级别的cgroup传递给容器运行时,并以此运行所有进程来满足 PodSandbox对Pod的资源保障。

在启动Pod之前,kubelet调用RuntimeService.RunPodSandbox来创建

环境。这一过程包括为Pod设置网络资源(分配IP等操作)。 PodSandbox被激活之后,就可以独立地创建、启动、停止和删除不同的 容器了。kubelet会在停止和删除PodSandbox之前首先停止和删除其中的 容器。

kubelet的职责在于通过RPC管理容器的生命周期,实现容器生命周 期的钩子,存活和健康监测,以及执行Pod的重启策略等。

RuntimeService服务包括对Sandbox和Container操作的方法,下面的 伪代码展示了主要的RPC方法:

 

 

原文来自k8s权威指南

posted @   地铁昌平线  阅读(322)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 因为Apifox不支持离线,我果断选择了Apipost!
· 通过 API 将Deepseek响应流式内容输出到前端
点击右上角即可分享
微信分享提示