Amazon EKS中使用的基础结构

问题描述 投票:0回答:1

我正在研究基于Amazon kubernetes服务EKS构建的应用程序的演示。但是,由于我无法直接访问AWS,因此我难以理解下面使用了什么基础架构。

我的理解。

  1. 您定义一个集群,无论您是否使用它都是有代价的,所以我怀疑总有一个主节点。
  2. 正在运行作业时,您需要支付VM成本,因此很显然它可​​以在VM上运行

现在我的问题:

当您上下旋转时会发生什么?

首先,VM的速度是否正好降低到您需要的速度,或者总有一部分可以让您快速扩展?

第二,如果VM降速运行,是否意味着实例已终止或刚刚停止。


我注意到扩展在几秒钟内发生,所以这使我怀疑虚拟机实际上是在每次启动时制作的。

kubernetes autoscaling amazon-eks
1个回答
0
投票

您的理解大致正确。有一个由Amazon通过EKS(实际上是kubernetes集群的主节点)管理的“控制平面”。作为AWS账户持有人,这对于您而言是不可见的,您无法亲自访问这些基础计算机。亚马逊对此收取统一费用,您无法将其缩减/缩减以降低成本。

您为创建的每个Amazon EKS集群每小时支付$ 0.20。

您围绕作业运行的第二点不是很清楚。您不必在Kubernetes中运行作业-您可以在pod中运行容器(也可以运行“ jobs”,这些作业也是基于进程完成时间有限的Pod)。

默认情况下,您需要为EKS集群创建“工人组”。如何创建这些取决于您。

[通常,您为每个工作组创建一个自动伸缩组,然后您可以定义自己如何自动伸缩群集中的工作节点。如您所料,这是经典的EC2 VM,您可以使用SSH或以SSM为例。 (由您管理)。

因此,要缩放运行容器工作负载的工作组,您可以手动上下缩放它们,依靠自动缩放组指标来缩放它们,也可以使用定制的解决方案,例如cluster-autoscaler来更智能地缩放根据集群中容器的状态将它们进出。

因此,通常当自动扩展组/工作组扩展时,它将终止EC2实例。当出现一个新实例时,您的工作组的启动配置应具有它需要了解的所有信息,以允许新实例自动加入EKS群集并开始调度Pod。

因此,当工作组向外扩展时,虚拟机的确已创建/启动/配置。如果它们是基于Linux的EKS辅助节点,则这些节点通常会很快启动。 Windows的通常要慢一些。

要回答其他问题-仅在仔细配置扩展机制并满足自己的要求后,VM才可以旋转至所需的状态。 Cluster-autoscaler对此有很大帮助。

希望为您解决问题的方法。

© www.soinside.com 2019 - 2024. All rights reserved.