英文原文:https://learnk8s.io/blog/kubectl-productivity/
Kubernetes 架构
Kubernetes 由一组独立的组件组成,这些组件在集群的节点上作为单独的进行运行,有些组件在 Master 节点上运行,有一些组件在 Node 节点上运行,每个组件都有一些特定的功能。
Master 节点上最主要的组件有下面几个:
-
etcd: 存储后端,整个集群的资源信息都存在 etcd 里面
-
kube-apiserver: 提供给整个集群的 API 服务,是唯一一个直接和 etcd 进行交互的组件
-
kube-controller-manager: 控制器,主要是确保资源状态符合期望值
-
kube-scheduler: 调度器,将 Pod 调度到工作节点
Node 节点上最重要的组件:
-
kubelet: 管理工作节点上的容器
为了了解这些组件之间是如何协同工作的,我们再来看下上面的例子,假如我们执行了上面的 kubectl create-f replicaset.yaml
命令,kubectl 对创建 ReplicaSet 的 API Endpoint 发起了一个 HTTP POST 请求,这个时候我们的集群有什么变化呢?看下面的演示: