Kubernetes 的主要组件包括:
-
控制平面组件 (Control Plane Components):这些组件决定了 Kubernetes 集群的整体行为。
- kube-apiserver:提供了 Kubernetes API 的服务。
- etcd:一致性键值存储,用于保存所有集群数据。
- kube-scheduler:监视新创建的、未分配的 Pods,并选择一个 Node 供它们运行。
- kube-controller-manager:运行控制器进程。
- cloud-controller-manager:与底层云提供商交互。
-
节点组件 (Node Components):在每个节点上运行,维护运行的 Pods 并提供 Kubernetes 运行时环境。
- kubelet:确保容器在 Pod 中正常运行。
- kube-proxy:维护节点上的网络规则,允许 Pod 间的网络通信。
- Container Runtime:负责运行容器,例如 Docker 或 containerd。
-
插件 (Add-ons):这些是实现集群功能的 Pod 和 Service。
- DNS:为集群提供 DNS 服务。
- Web UI (Dashboard):提供一个可视化的界面来管理 Kubernetes 集群。
- Container Resource Monitoring:记录中央数据库中的容器的通用时间序列数据。
- Cluster-level Logging:将容器的日志数据保存到中央日志存储。