K8s kubectl命令触发逻辑架构图

从用户执行kubectl命令到k8s集群资源变更的完整触发链路

客户端层

kubectl客户端
命令解析
用户输入解析

配置读取
kubeconfig
集群连接信息

HTTP请求
REST API调用
HTTPS请求构造

控制平面层

API Server
认证授权
身份验证+RBAC
请求处理中心

etcd存储
资源状态持久化
集群数据存储

Controller Manager
控制循环处理
资源状态协调

Scheduler
节点调度分配
Pod资源分配

工作节点层

kubelet
节点代理
Pod生命周期管理

Container Runtime
容器创建运行
Docker/containerd

Pod运行
应用容器运行
业务服务提供

状态反馈链路

状态汇报
kubelet → API
节点状态上报

状态同步
etcd持久化
集群状态一致性

状态查询
kubectl get
实时状态获取

关键API对象传递

Deployment / Pod / Service
ConfigMap / Secret 等

异步处理机制

Watch机制 + 事件驱动
控制器模式 + 状态协调

kubectl命令执行流程说明

1. 客户端层:kubectl解析命令 → 读取kubeconfig配置 → 构造REST API请求发送到API Server

2. 控制平面:API Server进行认证授权 → 将资源状态写入etcd → Controller监听资源变化 → Scheduler进行节点调度

3. 工作节点:kubelet接收调度任务 → 调用容器运行时创建Pod → 持续汇报状态到API Server → 支持kubectl实时查询

关键特性
🔴 红色 = 认证授权安全控制
🟢 绿色 = 资源处理执行
🟠 橙色 = 状态监控反馈
🔵 蓝色 = 客户端交互
虚线 = 异步处理机制

读取配置构造请求HTTPS调用持久化通知变更调度请求节点分配创建容器启动Pod状态上报同步状态状态查询反馈结果API对象流转异步处理