k8s流程创建清单

节点创建:

apiserver 被调用 → 创建 Deployment/Pod 配置清单(存 etcd)

controller 监听 → 生成 "待创建 Pod" 的请求(提交给 apiserver)

scheduler 监听 → 给 Pod 分配目标节点(更新到 apiserver)

目标节点 kubelet 收到指令 → 拉镜像、创建 Pod 容器 → 调用 Calico 分配 Pod IP

kubelet 把 Pod IP 上报给 apiserver

Endpoint 控制器监听 → 把 Pod IP 加到 Endpoint 里 → 流程完毕。

pod请求

Pod ↔ Pod 直接通信

全程 = Calico 干活

无 VIP、无 kube-proxy、无翻译

Pod ↔ Service 通信

先访问 VIP

→ 本机 kube-proxy 翻译成 一个可用的 Pod IP

→ 再交给 Calico 路由发送

传统 Docker:端口是 "Node 级资源",抢 Node 上的端口用;

K8s+Calico:Pod 有自己的 "网络身份(IP)+ 端口空间",端口是 "Pod 级资源",不用抢 Node 的端口,Calico 只负责让这些 Pod IP 能跨 Node 互通。

场景 IP 分配维度 核心执行者 IP 特性
传统 Docker 容器 Node 级 Docker 本机网桥 仅 Node 内可达,需端口映射
K8s Pod(Calico) Pod 级 Calico(CNI 插件) 集群内可路由,跨 Node 直连

K8s Pod(Calico) Pod 级 Calico(CNI 插件) 集群内可路由,跨 Node 直连

简单说:

Docker 容器 IP 是 "Node 私有的",跨 Node 要借 Node 端口;

K8s + Calico 的 Pod IP 是 "集群公有的",每个 Pod 一个独立 IP,绑定在 pause 上,全集群能直接访问,不用抢 Node 端口。

相关推荐
ZC跨境爬虫2 小时前
跟着 MDN 学JavaScript day_7:数学运算与逻辑判断实战测试
开发语言·前端·javascript·学习·ecmascript
fangdengfu1232 小时前
ES分析系统各个服务日志占用量
java·前端·elasticsearch
mounter6254 小时前
现代 Linux 内存管理的演进与变革:从传统 LRU 到多代架构 MGLRU
linux·服务器·kernel
JustHappy4 小时前
古法编程秘籍(六):程序到底是怎么跑起来的?从 IO 到中断,一次讲明白
前端·后端·全栈
HYCS4 小时前
用pixi.js实现fabric.js(六):从线性代数的角度理解编辑器交互
前端·javascript·canvas
卷帘依旧5 小时前
useImperativeHandle的作用
前端
卷帘依旧5 小时前
Hooks在Fiber上的存储原理
前端
you45805 小时前
学成在线--day02 CMS前端开发(含Vue基础知识得回顾)
前端·javascript·vue.js
The Sheep 20235 小时前
Vue复习
linux·服务器·数据库