我们一直在使用 AWS-ECS 来调度我们的容器。我看到的 ECS 最紧迫的问题是“资源碎片”。
假设我有以下具有相应资源要求的任务定义/pod:
POD CPU Desired Total_CPU
- task1 1024 2 2048
- task2 512 4 2048
- task3 256 1 256
(为简单起见,仅保留 CPU 要求)
如果我们考虑可用 CPU=2048 的 VM,我们至少需要 3 个 VM 才能运行上述服务。
更进一步,为了运行 Blue Green 部署,我们理论上只需要一个具有 2048 个 CPU 单元的VM 。
但是,随着部署的进行,容器将分散在所有可用的虚拟机中。由于资源不可用,这将使蓝绿部署花费太多时间(甚至失败)。
因此,要使蓝绿色部署按预期工作,我们需要在集群中增加更多额外的虚拟机(更多 $$$) 。
我想知道 Kubernetes 是否提供了这样一个功能,可以整合 pod 以保持最小的资源碎片。