Google Cloud Kubernetes重新调整为0个节点时的成本

xEc*_*xEc 3 google-cloud-platform kubernetes

我有一个批处理作业,我想在Google Cloud的Kubernetes集群上运行。该工作必须定期运行,例如每周一次,并且需要一天才能完成。从文档:

从Kubernetes 1.7版本开始,您可以为节点池指定最小大小为零。如果不需要运行其中的实例,则可以使节点池完全缩小。但是,尽管节点池可以扩展为零大小,但是整个群集的大小却不能缩减为零节点(因为运行系统Pod始终需要至少一个节点)。

我的问题是,如果将群集缩小到0个节点,使用该群集是否还会产生成本?据我了解,集群规模不会为空,因此仍然会产生成本。

如果是这样,那么将我的成本降至最低的正确方法是什么?我应该在运行作业之前/之后定期创建/删除集群吗?

Nic*_*_Kh 5

如果你提供Kubernetes动态集群,至于你可以重建集群环境中,而不在从头开始工作节点的任何依赖关系,Autoscaling下降到零级的节点将是一个很好的解决方案,而Kubernetes主节点(系统吊舱)不带电GKE,根据在价格页面

您可以创建node-pools

gcloud container node-pools create ${CLUSTER_NAME}-pool \
    --cluster ${CLUSTER_NAME} \
    --enable-autoscaling --min-nodes 0 --max-nodes 10 \
    --zone ${INSTANCE_ZONE}
Run Code Online (Sandbox Code Playgroud)

然后强制按需缩小规模:

gcloud container clusters resize ${CLUSTER_NAME} --size=0 [--node-pool=${CLUSTER_NAME}-pool]
Run Code Online (Sandbox Code Playgroud)

还要熟悉本文档,它描述了可以防止Cluster Autoscaler删除Node 的Pod的类型。