xEc*_*xEc 3 google-cloud-platform kubernetes
我有一个批处理作业,我想在Google Cloud的Kubernetes集群上运行。该工作必须定期运行,例如每周一次,并且需要一天才能完成。从文档:
从Kubernetes 1.7版本开始,您可以为节点池指定最小大小为零。如果不需要运行其中的实例,则可以使节点池完全缩小。但是,尽管节点池可以扩展为零大小,但是整个群集的大小却不能缩减为零节点(因为运行系统Pod始终需要至少一个节点)。
我的问题是,如果将群集缩小到0个节点,使用该群集是否还会产生成本?据我了解,集群规模不会为空,因此仍然会产生成本。
如果是这样,那么将我的成本降至最低的正确方法是什么?我应该在运行作业之前/之后定期创建/删除集群吗?
如果你提供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的类型。
| 归档时间: |
|
| 查看次数: |
1104 次 |
| 最近记录: |