架构图
kubernets分为两大部分,分别是master 节点 node 节点
我们来分别详细的说明一下
-
Master
-
apiserver
apiserver K8S 唯一的用户入口,对外暴露了Kubernetes API。它是的 Kubernetes 前端控制层。它被设计为水平扩展,即通过部署更多实例来缩放
-
controller-manager
运行控制器,它们是处理集群中常规任务的后台线程。逻辑上,每个控制器是一个单独的进程,但为了降低复杂性,它们都被编译成独立的可执行文件,并在单个进程中运行。
这些控制器包括:- 节点控制器: 当节点移除时,负责注意和响应。
- 副本控制器: 负责维护系统中每个副本控制器对象正确数量的 Pod。
- 端点控制器: 填充 端点(Endpoints) 对象(即连接 Services & Pods)。
- 服务帐户和令牌控制器: 为新的命名空间创建默认帐户和 API 访问令牌.
-
etcd
用于 Kubernetes 的后端存储。所有集群数据都存储在此处,始终为您的 Kubernetes 集群的 etcd 数据提供备份计划。
-
kube-scheduler
监视没有分配节点的新创建的 Pod,选择一个节点供他们运行,也就是调度器
-
node
-
kubelet
是主要的节点代理,它监测已分配给其节点的 Pod(通过 apiserver 或通过本地配置文件),
-
kube-proxy
通过维护主机上的网络规则并执行连接转发,实现了Kubernetes服务抽象