K8S中,pod的创建流程

kubelet创建pod流程

流程图

OCI(Open Container Initiative)是一个由docker社区发起的项目,Docker、containerd

CNI(Container Network Interface)网络配置:为容器分配IP地址、配置网络接口、设置路由

CSI(Container Storage Interface),存储卷的创建与删除:支持动态创建和删除持久存储卷。卷的挂载与卸载:将存储卷挂载到容器中,使得容器能够读写数据。

文字版pod创建全流程

  • 用户把资源清单发送到api-server

  • api-server对来源数据进SSL证书验证、语法验证、权限验证(RBAC),验证通过后把相关信息写入到etcd

  • controler-manager通过watch实践监听到了etcd数据的变化,发现有控制器deploy 需要创建

scheduler通过watch监听到etcd数据发生变化,

1.kubelet组件调用 CRI(Container Runtime Interface容器运行接口)

符合cri规范的有:containerddcri-opodmancri-docker (也叫 docker-shim K8S 1.24移除)

2.run创建容器。OCI(开源容器提议),runc符合这一点。大部分CRI底层都是调用的 runc

容器创建阶段:

3.启动 pause 基础架构容器负责网络名称空间初始化

4.如果有初始化容器就会初始化容器

5.启动业务容器后先调用postStart函数;(启动容器时一次性

6.调用startupProbe探针;(启动容器时一次性)

7.周期性调用 livenessProbe 和 readinessProbe(启动容器后周期性执行)

8.当容器退出时,调用preStop函数,该函数必须在优雅终止。(terminationGracePeriodSeconds,若不定义,默认值为30s)之前结束;

相关推荐
深蓝电商API17 分钟前
爬虫+Docker:让你的爬虫项目一键部署、可移植
爬虫·docker·容器
二宝15232 分钟前
黑马商城day3-微服务01
微服务·云原生·架构
ZHE|张恒1 小时前
使用 Docker 容器测试端口开放性
运维·docker·容器
切糕师学AI2 小时前
云原生技术栈解析:宿主机、容器、Docker、Kubernetes 之间的区别于联系
docker·云原生·容器·kubernetes
云雾J视界3 小时前
Linux企业级解决方案架构:字节跳动短视频推荐系统全链路实践
linux·云原生·架构·kubernetes·音视频·glusterfs·elk stack
java_logo4 小时前
Docker 部署 MinIO 全指南
运维·windows·mongodb·docker·容器
李憨憨--4 小时前
掌握 Kubernetes 的可观测性 (Tracestore)、安全性 (OPA)、自动化 (Flagger) 和自定义指标
kubernetes
三坛海会大神5556 小时前
k8s(九)安全机制
安全·容器·kubernetes
三坛海会大神5557 小时前
k8s(十二)Rancher详解
容器·kubernetes·rancher
没有bug.的程序员8 小时前
分布式架构未来趋势:从云原生到智能边缘的演进之路
java·分布式·微服务·云原生·架构·分布式系统