Administrator
发布于 2026-08-12 / 2 阅读
0
0

第一章.k8s介绍说明-k8s组件

来源链接:https://www.bilibili.com/video/BV1PbeueyE8V?spm_id_from=333.788.videopod.episodes&vd_source=0e85828f19fba96334ebaebea2da3e2f&p=4

1. Kubernetes 宏观架构

  • 核心角色划分为两类:Master 节点(管理端/控制器端)、Node 节点(业务实际运行端)

  • Master 节点数量规范:高可用场景下官方建议部署 3/5/7/9 个 Master 节点,均为大于 1 的奇数,该规范源于 RAFT 选举算法,可在保证高可用性的同时尽可能减少资源浪费

  • Node 节点特性:数量无高可用限制,可部署 1 到上百个,节点数量越多集群可承载的业务任务量越大,整体集群性能越强

2. Kubernetes 微观架构(核心组件)

2.1 Master 节点核心组件

  • API Server:

  • 是整个集群的唯一交互入口,所有请求(kubectl 命令行、Dashboard 图形界面、其他集群组件请求)都统一发送至 API Server

  • 采用 RESTful 接口设计风格:RESTful 是一种接口设计思想,通过同一 URL 下不同的 HTTP 方法(GET/POST/PUT/DELETE)区分操作类型(查询/新增/修改/删除),降低接口复杂度,无需记忆不同功能对应的不同 URL

  • 核心作用:接收请求后校验操作权限,校验通过后将请求数据存储至后端 etcd 集群

  • etcd:

  • 是 CoreOS 开发的基于 RAFT 协议的键值对(key-value)数据库,是集群的核心存储组件

  • 存储整个集群的所有配置、状态信息,所有集群数据持久化保存在 etcd 中

  • Master 节点的高可用本质是 etcd 集群的高可用,多节点部署 etcd 可避免单点故障,保证集群数据不丢失

  • Scheduler(调度器):

  • 核心作用是为未绑定节点的 Pod 选择最合适的 Node 进行绑定,决定承载业务容器的运行节点

  • 会定期监听 API Server,获取待调度的任务,后续会单独章节讲解详细调度逻辑

  • Controller Manager(控制器管理器,旧版本称 kube-controller-manager,可理解为「集群管家」):

  • 核心作用是定期检查集群运行状态,和预期状态进行比对,保障集群整体可用性

  • 例如容器异常终止时,会自动创建新的容器替换,保证业务稳定运行,同时负责对 Node 节点的管理

2.2 Node 节点核心组件

  • kubelet:

  • 是承上启下的核心组件,本身不直接创建容器,而是监听 API Server,获取本节点需要创建的容器任务

  • Kubernetes 属于 PaaS(平台即服务) 层,通过容器方案封装运行业务,kubelet 会调用 CRI(容器运行时) 接口(如 Docker、containerd、Podman 等)实际完成容器的创建、删除等生命周期管理

  • kube-proxy:

  • 监听 API Server,处理节点上的防火墙规则、负载均衡规则,解决节点网络层面的转发、负载均衡问题,保障 Service 的网络能力正常

  • Pod 与 Container:

  • Pod 是 Kubernetes 中最小的调度单元,一个 Pod 可包含多个 Container,是实际运行业务的载体

3. Kubernetes 生态扩展模块分类

k8s 生态中除了核心组件外,还分为插件、附件两类扩展模块:

3.1 插件

  • 定义:k8s 官方提供了标准扩展接口,通过接入接口即可扩展集群核心功能,属于可插拔的功能模块

  • 常见插件:

  • CRI 类容器运行时:Docker、containerd、Podman 等,负责实际创建运行容器,kubelet 通过 CRI 接口调用

  • CoreDNS:提供集群内部私有域名解析服务,支持集群内服务通过域名访问,是集群内部服务发现的核心组件

  • Ingress Controller:提供七层负载均衡能力,k8s 官方默认的 Service 仅支持四层负载均衡(类似 LVS),需要七层负载均衡时可安装 Ingress Controller 扩展功能

3.2 附件

  • 定义:独立于 k8s 核心组件,不属于核心组成部分,也不通过官方标准接口连接,仅作为集群的辅助管理工具存在

  • 常见附件:

  • Prometheus(普罗米修斯):当前主流的监控方案,可为 k8s 集群提供完整的监控能力

  • Dashboard:官方开发的图形化管理界面,提供可视化的集群管理能力,默认不安装,可自行部署

  • Federation:提供多 Kubernetes 集群的跨集群管理能力,支持统一管理多个 k8s 集群

AI 总结

本节课系统讲解了 Kubernetes 的架构体系,明确了 Master(管理控制端)与 Node(业务运行端)的角色定位,详细梳理了 6 个核心组件的功能与协作逻辑,同时厘清了生态中「核心组件、插件、附件」三类扩展模块的定义与常见示例,帮助学习者建立对 k8s 整体架构的初步认知,为后续学习核心原理与实操打下基础。


评论