【发布时间】:2019-05-23 15:23:53
【问题描述】:
自动缩放会根据 CPU 利用率自动向我的实例组添加/删除实例。
GPU 利用率是否也一样?
【问题讨论】:
标签: google-cloud-platform google-compute-engine google-kubernetes-engine
自动缩放会根据 CPU 利用率自动向我的实例组添加/删除实例。
GPU 利用率是否也一样?
【问题讨论】:
标签: google-cloud-platform google-compute-engine google-kubernetes-engine
您忘了提及它是用于 Cluster Autoscaler 还是 Horizontal Pod Autoscaler。您还忘了提及它是在 GKE 还是 GCE 中。
1 - 在 GKE 中,有两种类型的自动扩缩器:
a - Cluster Autoscaler 在需要新节点时添加节点:
Cluster Autoscaler 扩展集群中的节点池。在这种情况下,您必须启动node instances with GPU accelerators。您应该使用 GKE 支持的 Nvidia Tesla GPU。要利用 Cluster Autoscaler,建议在 Cluster 中创建一个单独的 GPU 节点池。如果请求 GPU 的 Pod 不足,GPU 节点将自动缩减,如果请求 GPU 的 Pod 过多,GPU 节点将自动扩展。
b - Horizontal Pod Autoscaler,在需要新 pod 时添加新 pod:
此 Horizontal Pod Autoscaler (HPA) 可缩放 pod 副本的数量。 HPA 使用资源指标 API 来收集指标。使用 HPA,您可以自动缩放 the pods based on custom metrics 和指标 available in Stackdriver。您可以选择 GPU 作为指标之一。如需分步教程,您可以consult this StackOverflow thread.
2 - 在 GCE 中,自动缩放器基于 Autoscaling policy。自动扩缩政策是:
这意味着您可以添加一个策略来根据 Stackdriver Monitoring 指标自动扩展实例。 GPU 没有默认的 Stackdriver 监控指标,但您可以创建一个 custom metric 来监控 GPU 利用率。下一步是根据该自定义指标自动缩放实例组。
这仅适用于托管实例组,并且该策略将基于新创建的自定义自定义指标,该指标将监控 GPU 利用率。我还找到了interesting article,介绍了如何根据 GPU 利用率在 Stackdriver 中创建自定义指标。
【讨论】: