基于GPU利用率的自动缩放?

时间:2018-12-24 13:03:43

标签: google-cloud-platform google-compute-engine google-kubernetes-engine

自动缩放会根据CPU利用率自动将实例添加/删除到我的实例组中。

GPU利用率是否可​​能相同?

1 个答案:

答案 0 :(得分:0)

您忘记提及是 Cluster Autoscaler 还是 Horizo​​ntal Pod Autoscaler 。您还忘了提及它是在GKE还是GCE中。

1-在GKE中,有两种类型的自动缩放器:

a-集群自动缩放器,可在需要新节点时添加节点:

集群自动缩放器缩放集群中的节点池。在这种情况下,您必须加速node instances with GPU accelerators。您应该使用GKE支持的Nvidia Tesla GPU。要利用Cluster Autoscaler,建议在Cluster中创建一个单独的GPU节点池。如果没有足够数量的Pod请求GPU,GPU节点将自动缩小;如果有太多Pod请求GPU,则GPU节点将自动放大。

b- Horizo​​ntal Pod Autoscaler (水平荚自动缩放器),在需要新容器时添加新容器:

此水平Pod自动缩放器(HPA)缩放Pod副本的数量。 HPA使用资源指标API来收集指标。使用HPA,您可以自动缩放the pods based on custom metrics和指标available in Stackdriver。您可以选择GPU作为指标之一。有关分步教程,您可以consult this StackOverflow thread.

2-在GCE中,自动缩放器基于Autoscaling policy。自动缩放策略是:

  • 平均CPU利用率
  • Stackdriver监控指标
  • HTTP负载平衡

这意味着您可以添加一个策略,该策略将根据Stackdriver Monitoring指标自动缩放实例。没有针对GPU的默认Stackdriver监视指标,但是您可以创建custom metric来监视GPU利用率。下一步是根据该自定义指标自动缩放实例组。

这仅适用于托管实例组,并且该策略将基于新创建的自定义自定义指标来监控GPU利用率。我还发现了interesting article的有关如何基于GPU利用率在Stackdriver中创建自定义指标的信息。