Dojo
最新
最佳
搜索
订阅
解道Jdon
架构设计
领域驱动
DDD介绍
DDD专辑
战略建模
领域语言UL
领域事件
商业分析
工作流BPM
规则引擎
架构师观点
数据工程
产品经理
系统思维
微服务
微服务介绍
微服务专辑
模块化设计
SOA
API设计
clean架构
SpringBoot
分布式事务
事件溯源
Kafka消息
Kubernetes
DevOps
编程设计
GoF设计模式
模式专辑
面向对象
函数式编程
编程语言比较
编程工具比较
形式逻辑
前端编程
Reactive编程
Jdon框架
Rust语言
人工智能
Web3
模因梗
幽默梗
程序员吐槽
面试技巧
Java入门
数字化转型
认知偏差
道德经
更多话题
在Kubernetes中创建Pod时会发生什么? - daniele
20-09-25
banq
在Kubernetes中创建Pod时会发生什么?一个令人惊讶的简单任务揭示了一个复杂的工作流,涉及集群中的多个组件。
你可能熟悉的前4个步骤:
kubectl将YAML发送到API
Pod存储在etcd中
调度程序分配一个节点,此时Pod是在etcd中,而节点中没有Pod。
kubelet开始创建Pod。
下一步:
kubelet委托CRI创建容器
kubelet委托将容器连接到网络的CNI
CNI分配IP地址
探针Probes被检查
kubelet报告IP地址到控制平面
Pod已创建!除非Pod是服务的一部分,否则Kubernetes会在此处停止。如果Pod属于服务,则Kubernetes会创建一个端点:它连接Pod的IP地址和端口(targetPort)。将端点添加到Endpoint(对象)。
什么是端点endpoint?
在Kubernetes中:
endpoint是10.0.0.2:3000(IP:端口)对
Endpoint是endpoint的集合(IP:端口对的列表)
对于集群中的每个服务,Kubernetes都会创建一个具有endpoint列表的Endpoint对象。令人困惑,不是吗?
端点endpoints (IP:port)用于:
kube-proxy用它设置iptables规则
CoreDNS用来更小DNS条目
Ingress控制器用来设置下游
用于服务网格Service meshes
用于更多运维
一旦端点endpoint被添加了,相应组件会被通知。
广播ednpoint端点(IP:port)后,您终于可以开始使用Pod!
您能猜出删除Pod后会发生什么吗? 与增加Pod有相同的流程,但是相反。这很烦人,因为有一些竞赛条件的机会。
Kubernetes平台