📜  侧重于 AWS Elastic Kubernetes 服务的 Kubernetes 集群组件(1)

📅  最后修改于: 2023-12-03 15:07:00.707000             🧑  作者: Mango

侧重于 AWS Elastic Kubernetes 服务的 Kubernetes 集群组件介绍

什么是 Kubernetes?

Kubernetes(简称 K8s)是一个开源的、可移植的、可扩展的平台,用于管理容器化应用程序和服务。它可以自动化部署、扩展和管理容器化应用程序,使您能够更快地、更有效地运行和管理容器化应用程序。

什么是 AWS Elastic Kubernetes 服务?

AWS Elastic Kubernetes 服务(EKS)是一个托管的 Kubernetes 服务,可以在 AWS 上轻松运行 Kubernetes 应用程序,而无需自己安装和运行 Kubernetes 控制平面。AWS EKS使您可以使用与自托管 Kubernetes 集群相同的API和工具来管理容器化应用程序,同时获得AWS强大的安全和可扩展性的支持。

什么是 AWS EKS Kubernetes 集群组件?

AWS EKS Kubernetes 集群组件由 AWS 提供,它是 AWS EKS 服务的一部分。这个组件包括了 Kubernetes 控制平面和 Kubernetes 工作节点。

Kubernetes 控制平面

Kubernetes 控制平面是 Kubernetes 集群的大脑,它控制着集群的所有组件。AWS EKS Kubernetes 控制平面是被 AWS 托管的,它包括以下组件:

API Server

API Server 是 Kubernetes 集群的核心部分,它提供了 Kubernetes 控制面板的所有 API 功能,包括创建、删除、管理 Pod、Service、Replication Controllers等等。AWS EKS API Server可自动水平缩放,让您无需考虑集群规模和负载均衡。

etcd 存储

etcd 是 Kubernetes 集群的存储单元,保存了所有 API 资源、存储、配置和状态信息。AWS EKS 控制平面使用 AWS 托管的 etcd,实现了高可用性和安全性。

控制器管理器

控制器管理器是 Kubernetes 集群中的一个进程,它监视集群的状态并调节集群行为(如Pod生命周期管理,自动伸缩等等)。AWS EKS 控制器管理器支持自动扩展,以应对不断变化的工作负载。

调度程序

调度程序是 Kubernetes 集群中的另一个进程,它负责将 Pod 分配给工作节点,以确保最大化资源利用率。AWS EKS调度程序支持使用亲和性和反亲和性规则来调度 Pod,并可配置插件来扩展和自定义调度策略。

Kubernetes 工作节点

Kubernetes 工作节点是集群中运行容器的目标主机。AWS EKS 工作节点提供了可扩展、高可用性的基础设施,以便在 Kubernetes 中运行容器。AWS EKS 工作节点包含以下组件:

Kubernetes Kubelet

Kubelet 是 Kubernetes 集群中的一个进程,负责管理 Kubernetes 节点上的 Pod。AWS EKS Kubelet 可以自动缩放,以应对变化的工作负载需求。

Kubernetes 代理

Kubernetes 代理是 Kubernetes 集群中的另一个进程,它负责管理集群中的网络流量。AWS EKS 代理管理网络请求路由、负载均衡和数据传输等等。

容器运行时

容器运行时是 Kubernetes 工作节点上的基础设施软件,负责启动和管理容器。AWS EKS 容器运行时支持Docker和containerd两种容器运行时。

总结

AWS EKS Kubernetes 集群组件是一套可靠、可扩展、高可用的 Kubernetes 集群解决方案。它由 AWS 提供支持,并托管在 AWS 安全、高可用的云环境中,为您的 Kubernetes 应用程序提供了可持续性、可靠性和高性能的运行环境。