Kubernetes 集群主要由控制平面组件、Node 组件和插件(Addons) 构成

一、控制平面组件(Control Plane Component)
负责管理集群整体状态,核心组件包括:
- kube-apiserver:公开 Kubernetes HTTP API 的核心服务器,是集群操作的统一入口
- etcd:具备一致性和高可用性的键值存储,用于存储所有 API 服务器的数据
- kube-scheduler:检测未绑定节点的 Pod,并为每个 Pod 分配合适的运行节点
- kube-controller-manager:运行控制器,实现 Kubernetes API 定义的各类行为
- cloud-controller-manager:与底层云服务提供商的驱动集成,适配云环境特性
二、Node 组件
在集群每个节点上运行,维护 Pod 运行状态并提供 Kubernetes 运行时环境:
- kubelet:确保节点上的 Pod 及其包含的容器正常运行,是节点与控制平面通信的关键组件
- kube-proxy:维护节点上的网络规则,实现 Kubernetes 中 Service 的网络功能(如服务发现、负载均衡)
- 容器运行时(Container runtime):负责实际运行容器的软件,文档提供相关链接供进一步了解
- 额外软件:如 Linux 节点上可能需要的 systemd,用于监督节点本地组件
三、插件(Addons)
扩展 Kubernetes 功能,重要插件示例包括:
- DNS:提供集群范围内的 DNS 解析服务,支持 Pod 与 Service 之间的域名访问
- Web 界面(Dashboard):可视化的 Web 管理界面,方便用户进行集群日常管理操作
- 容器资源监控:收集并存储容器的资源使用指标(如 CPU、内存占用),支持资源监控与分析
- 集群层面日志:将集群中所有容器的日志汇总保存到中央日志存储,便于日志查询与问题排查