是否最好让Kubernetes集群的4个节点的资源为4 CPU,16 GB RAM或2个节点的集群的资源为8 CPU和32 GB RAM?
在Kubernetes概念中,如果用户进行水平缩放而不是垂直缩放,将会获得什么好处。我的意思是说,假设我们要运行4个Pod,那么最好是将2个节点的群集资源8 CPU和32 GB RAM或4个节点的群集资源4 CPU和16 GB RAM。
答案 0 :(得分:1)
通常,我会建议使用较大的节点,因为在其上放置容器更容易。
如果您有一个resources: {requests: {cpu: 2.5}}
的Pod,则只能将其中一个放置在4核节点上,将两个放置在2x 4核节点上,但是可以将3放置在单个8核节点上
+----+----+----+----+ +----+----+----+----+
|-WORKLOAD--| | |-WORKLOAD--| |
+----+----+----+----+ +----+----+----+----+
+----+----+----+----+----+----+----+----+
|-WORKLOAD--|--WORKLOAD--|-WORKLOAD--| |
+----+----+----+----+----+----+----+----+
如果您总共分配了16个核心并分配了8个核心,则可能没有单个节点拥有超过2个可用4个4-CPU节点的可用核心,但是可以保证可以将那个Pod与2个8-CPU配合使用节点。
+----+----+----+----+ +----+----+----+----+
|-- USED -| | |-- USED -| |
+----+----+----+----+ +----+----+----+----+
+----+----+----+----+ +----+----+----+----+
|-- USED -| | |-- USED -| |
+----+----+----+----+ +----+----+----+----+
Where |-WORKLOAD--| goes?
+----+----+----+----+----+----+----+----+
|------- USED ------| |
+----+----+----+----+----+----+----+----+
+----+----+----+----+----+----+----+----+
|------- USED ------| |
+----+----+----+----+----+----+----+----+
不过,在您所讨论的特定规模上,我会担心运行2节点集群:如果单个节点死亡,您将失去一半的集群容量。除非我知道我正在运行多个需要2.0 CPU或更多CPU的Pod,否则我可能会倾向于这里的4节点设置,以便在发生节点故障的情况下具有更大的弹性(而实际上确实如此)。
答案 1 :(得分:0)
水平自动缩放
优点
缺点
垂直自动缩放
优点
缺点
通常,您希望同时使用水平和垂直自动缩放。