ps:周日是一周难得清醒的日子。。趁着脑子回来,多写点东西

首先从名字上来说,Kubernetes 一共10个字符,撇去头尾两个,中间有8个,所以简称 k8s(别惊讶,老外主导的项目,名称一般都如此任性😂)。k8s 首开先河之后,又有很多跟风小弟——k0s、k3s、k9s 。

一直以来,我们都依赖操作系统来管理硬件资源,使用操作系统提供的抽象来访问硬件资源。在个人领域,单个操作系统就可以满足需要,而在企业领域,已经走到了云计算时代,云时代呼唤它自己的操作系统——就是 k8s。

k8s 由两种类型的节点组成:Master、Worker(从名称就很容易理解:管理层和干活层)。

Master 负责控制,Worker 负责实际负载——也就是运行 Pod。虽然 Master 节点也可以跑负载,但一般不这么干,让各自的职责尽量单一。

Master 上的组件包括:

  • Scheduler,调度器,负责计算 Pod 应该调度到哪个 Worker 上,并更新到 Pod 资源声明中;
  • Controller Manager,控制器管理器,负责运行各种各样的控制器,通常一种资源类型会对应至少一个控制器,比如 Deployment 控制器;
  • API Server,各组件通过 api server 获取、更新集群的状态,只有 api server 能直接访问 etcd。

Worker 上的组件包括:

  • kubelet,注册 node,管理节点上运行的 Pod;
  • kube-proxy,负责维护节点上的网络规则,以转发流量。

还有个特殊的组件 — etcd,它作为 k8s 的大脑,负责记录集群的状态,一般会单独部署,以获得更高的可靠性。

分类: CODE

0 条评论

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注