我在GCP中还很陌生,想知道如何安排包含3个GPU机器的GKE群集节点池。 我发现这些机器的运行成本很高,因此我一直在寻找一种解决方案,因为这是一个开发项目,所以它每天晚上都可以自动关闭所有这些机器/池,并每天早晨将它们打开。
答案 0 :(得分:1)
可能的解决方案是创建两个节点池:
-<default-node-pool> for kube-system pods
-<gpu-node-pool>
只有一个节点池不起作用的原因是,一个节点池无法缩小为0,因此kube系统吊舱需要放置在某个地方。
您可以使用node taint的概念来创建带有该标志的gpu节点池
-node-taints cost = high:NoSchedule
然后您可以按以下方式对豆荚施加容忍度
tolerations:
- key: cost
operator: Equal
value: high
effect: NoSchedule
通过这种方式,您可以确保未在GPU节点上调度kube系统吊舱。不管有什么容错,都会有一些可以在节点池上运行的kube系统吊舱。
在启用自动缩放器的情况下,并且如果为node is not needed,则gpu节点池应缩小为0,同时保持kube系统pod的默认节点池为活动状态。