本帖最后由 gaoxing 于 2023-12-28 11:58 编辑
[color=rgb(63, 63, 63) !important]kube-apiserver: - kube-apiserver 是 Kubernetes 集群的中央控制点,提供了 RESTful API 接口供用户和内部组件操作集群资源。
- 用户可以通过 API 对象(如 Deployment、Pod、Service 等)进行 CRUD(创建、读取、更新、删除)操作。
- kube-apiserver 负责验证和授权请求,确保只有合法的操作能够被执行,并将变更持久化到 etcd 数据存储中。
[color=rgb(63, 63, 63) !important]etcd: - etcd 是一个高可用的键值存储系统,用于保存 Kubernetes 集群的所有配置数据和状态信息。
- 所有集群的元数据,如节点信息、Pod 状态、部署配置等,都会被以键值对的形式存储在 etcd 中。
- 当集群中的其他组件需要获取或更新配置时,它们会通过 API 与 kube-apiserver 通信,然后 kube-apiserver 会与 etcd 进行交互。
[color=rgb(63, 63, 63) !important]kube-scheduler: - kube-scheduler 是 Kubernetes 集群中的一个组件,负责决定将 Pod 分配到哪个工作节点(Node)上运行。
- 在接收到一个新的 Pod 创建请求后,kube-scheduler 会根据一系列预定的调度策略和约束(如资源需求、亲和性和反亲和性规则)来评估每个节点的适用性,并选择最适合的节点进行分配。
- kube-scheduler 的目标是最大化集群资源的利用率,同时保证服务的高可用性和性能。
|