文章目录
Borg 的研究人员曾经在论文中提到这样一个观点:
运行在大规模集群中的各种任务之间,实际上存在着各种各样的关系。这些关系的处理,才是作业编排和管理系统最困难的地方。
而 k8s 项目所擅长的,正是按照用户的意愿和整个系统的规则,完全自动化地处理好容器之间的各种关系。
这种功能,就是我们经常听到的一个概念:编排。
一、k8s 的设计架构
类似 Borg ,k8s 也由 Master 和 Node 两种节点组成,这两种角色分别对应控制节点和计算节点。
1、控制节点
Master 主要用于编排、管理、调度用户提交的作业。
Master 由三个独立组件组合而成:
1.1 kube-apiserver: 负责 API 服务,整个集群的持久化数据由 kube-apiserver 处理后保存在 Etcd 中。
1.2 kube-scheduler: 负责调度
1.3 kube-controller-manager: 负责容器编排
2、计算节点
计算节点 Node 上最核心的部分,是 kubelet
组件。
2.1 kubelet 主要负责同容器运行时打