k8s拉起一个pod底层是如何运行的

在Kubernetes中,当你尝试启动一个Pod时,底层的运行方式是由Kubelet服务来管理的。以下是Pod启动过程的简化概述:

  1. Kubernetes API Server接收到创建Pod的请求。

  2. API Server将Pod的元数据存储到etcd中,以便于Pod的调度和跟踪。

  3. Scheduler组件基于集群的当前状态(如节点的可用资源)来选择一个合适的节点来运行Pod。

  4. 选定的节点上的kubelet服务定时询问API Server关于Pod的信息,并监控其健康状态。

  5. kubelet通过Docker(或其他容器运行时)来创建和启动容器。

实际的Pod运行代码通常涉及使用kubectl或其他Kubernetes管理工具与API Server交互来创建Pod资源对象。例如,以下是一个简单的Pod定义示例(YAML格式):

apiVersion: v1

kind: Pod

metadata:

name: my-app-pod

labels:

app: my-app

spec:

containers:

  • name: my-app-container

image: my-app-image

ports:

  • containerPort: 80

你可以将这个YAML文件保存,然后使用以下命令来创建Pod:

kubectl apply -f my-app-pod.yaml

相关推荐
Linux-18747 小时前
分布式链路追踪系统之skywalking java agent 的使用、skywalking web界面简介
云原生·skywalking·分布式链路追踪系统·应用程序性能监控·halo博客系统·skywalking java agent·skywalking web 简介
952369 小时前
Docker - 基础
运维·后端·docker·容器
Code_Ignis9 小时前
docker国内可用源(持续维护)
运维·docker·容器
heimeiyingwang15 小时前
【架构实战】云原生架构:容器化与Kubernetes落地之路
云原生·架构·kubernetes
道影子18 小时前
阴阳引力多维基元:超越二进制的计算革命
人工智能·深度学习·微服务·云原生·架构
运维大师18 小时前
【K8S 运维实战】15-链路追踪Jaeger与OTel
运维·容器·kubernetes
zerwave18 小时前
深入理解 Docker 的“层”(Layer)
docker·容器
霁月的小屋19 小时前
Docker 工程化实践(二):理解镜像分层与容器文件系统
运维·docker·容器
潘正翔19 小时前
k8s集群命令使用
linux·运维·docker·云原生·容器·kubernetes
码上上班1 天前
docker课程
java·docker·容器