K8S - Master 和 Node 组件介绍

master

  • master 可以在集群中任意 node 上运行
  • 通常会在一台单独 node 上启动, 并且不会在该 node 上运行服务 pod

api-server(服务接口)

  • 对外提供 restful 的 k8s api 服务
  • 其他 master 组件通过 api server 提供的 rest 风格接口实现各自的功能
    如: controller 通过 api server 实时监控各个资源的状态

etcd(状态存储)

  • k8s 提供的高可用 kv 数据库, 用于保存所有网络配置和资源对象的状态信息, 也就是保存了整个集群的状态
  • k8s 系统中一共两类服务需要 etcd 来协同和存储配置, 分别是
    • 网络相关
    • k8s 本身各种资源对象的状态和元信息

scheduler(调度器)

  • 监听新的 pod 的信息, 并通过调度算法为该 pod 选择一个最合适的 node
  • 调度成功后
    • 将 pod 与 node 进行绑定
    • 将绑定信息写入到 etcd
  • 绑定成功后, kubelet 组件接手管理 pod 的生命周期
  • k8s 保留了接口, 可以自定义算法

controller Manager(创建完成后管理)

  • controllerManager 负责管理 controller
    包括 Node Controller, NameSpace Controller, Deployment Controller, StatefulSet Controller
  • controller 负责维护集群状态, 如故障检测, 自动扩展, 回滚更新等
    当资源状态因为故障发生改变时, controller 会尝试将系统由现有状态恢复到期待状态, 保证其下每一个 controller 所对应的资源处于期望状态
  • 包括管理控制器(kube-controller-manager)云管理控制器(cloud-controller-manager)

Node

kubelet(agent)

  • 作为 daemonSet 存在于每个 node 上, 负责监听和管理 pod 的生命周期
  • 盗了张大佬的图
    在这里插入图片描述

kube-proxy(请求转发)

  • 负责请求转发
  • 实现 service 的通信与负载均衡机制的重要组件, 将 service 的请求转发到后端 pod 上

runtime(docker/container)

  • 容器运行环境
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值