1. 概述

一个标准的 Kubernetes 集群由控制平面Master 组件)和若干工作节点共同组成,同时支持各类扩展插件丰富集群能力。

在这里插入图片描述

2. ‌控制平面组件

‌控制平面组件负责管理整个集群的全局状态、调度策略、资源管控,是集群的大脑

2.1 kube-apiserver(API 服务网关)

在这里插入图片描述

Kubernetes 集群唯一统一入口、核心网关组件,基于 HTTP/HTTPS 对外提供标准 RESTful API所有集群操作与组件通信均依赖该组件。该组件具备认证、授权、准入校验、数据序列化能力,支持水平扩容,是整个集群安全访问与资源交互的核心枢纽,无任何组件可绕过它直接操作集群数据。

工作机制:依次完成请求认证、授权、准入控制、数据校验、序列化存储,最终写入 etcd 或返回查询结果,支持多实例水平扩容实现高可用。

关键特性:无状态、可扩容、安全可控、统一收口,保障集群操作规范、数据安全一致。

2.2 etcd(集群核心数据库)

在这里插入图片描述

基于 Raft 一致性算法的分布式键值(Key-Value)数据库,是 Kubernetes 集群唯一的持久化存储组件。持久存储集群所有资源数据(节点、Pod、控制器、配置、密钥、状态信息等),维护集群全局状态一致性。

关键特性

  • 强一致性、高可用、可持久化、数据安全,生产环境强制 3/5 节点集群部署,杜绝单点故障。
  • 仅对 kube-apiserver 开放读写权限,其他组件无权直接操作。

2.3 kube-scheduler(集群调度器)

在这里插入图片描述

控制平面核心调度组件,负责集群 Pod 资源的节点分配与资源最优调度。监测所有未绑定节点的新建 Pod,结合节点资源、调度规则,筛选最优工作节点完成调度绑定。

工作机制分为两大核心阶段:

  • 预选阶段过滤不合格节点(资源不足、污点匹配、端口冲突等);
  • 优选阶段对合规节点打分排序,择优分配 Pod

关键特性:支持节点亲和性、Pod 亲和性、污点容忍、资源配额,实现集群资源均衡分配、高效利用,支持自定义调度策略。

2.4 kube-controller-manager(控制器管理器)

在这里插入图片描述

集群自愈核心组件,集成 Kubernetes 所有内置控制器,统一运行管控。持续监控集群资源状态,通过调谐机制修正状态偏差,保障资源运行符合用户期望。

工作机制:循环监听资源当前状态与期望状态,状态不一致时自动触发修复逻辑,实现副本维稳、节点故障驱逐、端点更新、资源生命周期管控。

关键特性:内置多类控制器(副本、节点、端点、命名空间等),是集群自愈、状态稳定的核心载体。

2.5 cloud-controller-manager(云控制器管理器|可选)

在这里插入图片描述

可选控制平面组件,专为云环境设计,打通 Kubernetes 与公有云基础设施资源。实现集群与云厂商资源联动,管理云负载均衡、云硬盘、弹性网卡、节点弹性伸缩等资源。

工作机制:监听集群资源变更,自动调用云厂商 API,完成云资源的创建、绑定、销毁与更新。

关键特性:裸金属/本地机房无需部署,公有云集群必备,适配云原生弹性扩缩、资源托管能力。

3. 节点组件

节点组件会在每个节点上运行,包括 master 节点和 worker 节点,负责维护运行的 Pod 并提供 Kubernetes 运行环境。

3.1 kubelet(节点守护进程)

在这里插入图片描述

所有工作节点必备核心代理进程,是节点与控制平面通信的唯一桥梁。全权管理本机所有 Pod、容器的全生命周期,同步节点与集群状态,执行控制平面下发指令。

工作机制:与 apiserver 保持长连接,接收调度指令,完成镜像拉取、容器启停、健康巡检、异常重启、资源回收、状态上报。

关键特性:单节点独占、自主运维本机资源、实时状态上报,是节点自愈、集群状态同步的基础组件。

3.2 kube-proxy(节点网络代理)

在这里插入图片描述

节点网络核心组件,是一个网络代理程序,运行在集群中的每一个节点上,实现 Kubernetes Service 服务网络模型,保障集群流量正常转发。负责维护节点网络转发规则,实现服务负载均衡、流量调度、端口映射、内外网流量访问。

工作机制:监听 ServiceEndpoint 变更,自动更新节点 iptables/ipvs 转发规则,无需进程转发,内核级高效流转流量。

关键特性:支持 ClusterIPNodePortLoadBalancer 多模式,保障集群 Pod 互通、服务稳定暴露。

3.2 Container Runtime(容器运行时)

容器引擎负责运行容器,Kubernetes 支持多种容器引擎,包括 Docker(原生不再支持)、containerdcri-orktlet 以及任何实现了 Kubernetes 容器引擎接口的容器引擎。

工作机制kubelet 通过 CRI 接口调用容器运行时,间接管控容器,不直接操作底层容器资源。

3. 扩展插件

插件用于拓展 Kubernetes 原生能力,完善集群运维、网络、监控、日志等生态能力。

3.1 集群 DNS

集群必备核心插件,提供全集群统一域名解析服务。自动为 ServicePod 绑定域名,动态更新解析规则,解决容器 IP 动态变更问题,支撑微服务跨节点、跨命名空间稳定互通。

3.2 可视化控制台

官方可视化运维插件,提供网页端集群管理界面。替代命令行操作,图形化查看、编辑、管理集群资源,降低运维门槛,多用于测试环境与日常简易运维。

在这里插入图片描述

重要说明

  • Kubernetes 仪表板已被弃用,不再进行维护。该项目现已归档,不会再进行迭代更新。新环境建议使用 Headlamp 替代。
  • 也要很多其他开源的可视化控制台可选。

3.3 容器资源监控

集群观测核心扩展能力,采集节点、Pod、容器的资源指标与业务指标,实现性能监控、水位观测、过载预警,支撑生产环境稳定性运维与容量评估。

主流方案Prometheus + Grafana

3.4 集群日志收集

中心化日志运维,统一采集、存储、检索容器日志,解决容器销毁日志丢失、日志分散问题,支撑线上故障排查、业务审计。

主流方案EFK/ELKLoki

更多推荐