kubernetes - GKE不会将节点缩减为零

标签 kubernetes google-cloud-platform google-kubernetes-engine autoscaling

GKE群集配置有群集/节点自动配置。

我创建了一个默认的节点池,可以在其上运行系统特定的Pod。每当请求带有GPU的Pod时,GKE都会自动创建新的启用GPU的节点池。

但是,无论何时删除此类Pod,GKE都不会将新创建的节点池缩减为零实例。相反,一个实例保持运行。如果没有请求GPU,则节点池应该达到最小大小,即零。

注意:

  • 对于GPU驱动程序,已在“kube-system” namespace 下创建了一个Daemonset,此Daemonset的Pod在每个启用GPU的节点上运行。

  • 我编辑了此Daemonset,还添加了标签““cluster-autoscaler.kubernetes.io/safe-to-evict”:“true”
    到 pod 。

    有人可以帮助将新创建的节点池缩减为零节点吗?

    更新:

    在新节点上运行的Pod是:

    fluentd-gcp(来自DaemonSet)

    库贝代理

    nvidia-gpu-device-plugin(来自DaemonSet)

    这些 pod 不应该被赶走吗?

    最佳答案

    默认情况下,GKE保留了额外的节点资源以进行快速Pod调度。这是自动缩放策略控制的默认行为。

    可以通过将策略设置为“优化利用”来更改此行为。

    https://cloud.google.com/kubernetes-engine/docs/concepts/cluster-autoscaler

    关于kubernetes - GKE不会将节点缩减为零,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60931160/

    相关文章:

    google-cloud-platform - gcloud auth activate-service-account --key-file 和 GOOGLE_APPLICATION_CREDENTIALS 之间的区别

    java - 为什么 google dataproc 不提取 coreNLP jar,尽管它们包含在 POM 文件中?

    angular - 部署到 GKE 时出现 Cloud Run 错误,适用于托管的云运行

    redis - Redis集群总大小

    kubernetes - Helm Kubernetes-dashboard install删除pod和服务名称中的重复作品

    windows - Minikube 在 Windows 8 中不工作

    google-cloud-platform - 如何处理 Google Cloud Functions 中的 secret ?

    docker - 公共(public) GKE 集群中的 pod 无法访问互联网

    没有负载均衡器的 Kubernetes 入口 Controller

    docker - 在Kubernetes中调度和扩展Pod