极客时间云原生训练营

dfdgg · · 39 次点击 · · 开始浏览    

获课♥》jzit.top/2896/

获取ZY↑↑方打开链接↑↑

Kubernetes控制平面是集群的决策大脑,由"前门"API服务器、"记忆中枢"etcd、"智能分配器"调度器和"自动调节系统"控制器构成,通过多组件协同实现声明式基础设施管理,自动维持应用期望状态,确保百万级容器精准协作如同交响乐团。内容由DeepSeek-R1模型生成

Kubernetes 控制平面组件详解(非代码视角)

Kubernetes 控制平面是集群的大脑,负责维护集群的期望状态并做出全局决策。以下是控制平面的核心组件及其功能:

1. kube-apiserver(API 服务器)

  • 功能:集群的"前门"和管理中枢

    • 暴露 Kubernetes API(RESTful 接口)

    • 处理所有内部组件和外部客户端的请求

    • 验证和配置API对象(如Pods、Services等)

    • 协调集群状态变更

  • 特点

    • 唯一直接与 etcd 通信的组件

    • 支持水平扩展以提高可用性

    • 实现身份验证、授权和准入控制

2. etcd

  • 功能:集群的"记忆中枢"

    • 分布式键值存储数据库

    • 持久化存储整个集群的配置和状态数据

    • 保证数据一致性的CP系统(采用Raft共识算法)

  • 特点

    • 高可用部署通常需要3或5个节点

    • 定期备份至关重要

    • 对性能敏感(SSD存储推荐)

3. kube-scheduler(调度器)

  • 功能:集群的"智能分配器"

    • 资源请求/限制(CPU/内存)

    • 亲和性/反亲和性规则

    • 数据局部性

    • 硬件/软件约束

    • 决定新创建的Pod应该运行在哪个Node上

    • 根据资源需求、策略和约束做出调度决策

    • 考虑因素包括:

  • 特点

    • 可扩展架构(支持自定义调度器)

    • 决策基于当前集群状态

4. kube-controller-manager(控制器管理器)

  • 功能:集群的"自动调节系统"

    • Node控制器:监控Node状态

    • Replication控制器:维护Pod副本数

    • Endpoint控制器:维护Service与Pod的关联

    • Service Account控制器:管理命名空间的默认账户

    • 运行各种控制器进程的守护程序,包括:

    • 通过API服务器持续观察集群状态

    • 驱动实际状态向期望状态收敛

  • 特点

    • 多控制器采用松耦合设计

    • 具备自愈能力的设计核心

5. cloud-controller-manager(云控制器管理器,可选)

  • 功能:与云平台对接的"适配层"

    • Node控制器:检查云平台中节点是否已删除

    • Route控制器:在云基础设施中配置路由

    • Service控制器:管理云负载均衡器

    • Volume控制器:创建/挂载云存储卷

    • 特定于云供应商的控制逻辑

    • 包含的控制器:

  • 特点

    • 使K8s能利用云平台特性

    • 解耦核心代码与云供应商代码

控制平面组件协作流程示例(无代码):

  1. 用户通过kubectl向kube-apiserver提交部署请求

  2. apiserver验证请求并将配置写入etcd

  3. scheduler通过apiserver获取未调度的Pod,选择合适Node并更新etcd

  4. kubelet(工作节点组件)通过apiserver发现需要运行的Pod

  5. 控制器管理器持续监控,确保实际状态与etcd中声明的期望状态一致

高可用部署特点:

  • 多实例部署:apiserver可水平扩展,其他组件通过领导者选举机制避免冲突

  • 分层架构:前端可通过负载均衡器暴露多个apiserver实例

  • 状态分离:只有etcd需要保持数据一致性,其他组件可无状态运行

这些组件共同构成了Kubernetes的决策和协调中心,使集群能够自动维持应用的期望状态,实现声明式的基础设施管理。

39 次点击  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传