我使用gcloud来配置kubernetes集群,并使用容器引擎来实现。
除了生产集群,我想创建短期集群,用于测试等。
我希望有一个测试集群,并且能够按需停止/启动,而不是重新创建集群。试图在计算引擎上列出的vm实例上点击“停止”将使它们最终重启。
停止和启动测试集群的正确方法是什么?
短期测试集群的动机来自成本考虑。
您可以通过运行以下命令临时将群集中的节点数减少到零:
gcloud container clusters resize $CLUSTER_NAME --size=0
然后通过运行size值为非零的值来稍后重新调整它。
--zone也应指定为能够在gcloud SDK v 2.0.27中将群集节点的大小调整为零
gcloud container clusters resize $CLUSTER --size=0 --zone=$ZONE
这个问题显然需要一个改进的解决方案,因为我仍然必须在Kubernetes Engine - > Clusters下使用GCP控制台。
我将我的群集中运行的节点数更改为0,并将最小节点数更改为0,因为启用了自动缩放,然后它才起作用。
上面的gcloud命令提供了有用的见解,但由于启用了自动缩放功能,它失败了。更好的解决方案是在将群集大小调整为零之前将最小节点数缩减为0,如下所示:
gcloud container clusters update [CLUSTER_NAME] --enable-autoscaling \
--min-nodes 0 --max-nodes 10 --node-pool [NODE_POOL_NAME]
或者您可以完全禁用自动缩放:
gcloud container clusters update [CLUSTER_NAME] --no-enable-autoscaling \
--node-pool [NODE_POOL_NAME] --project [PROJECT_ID]]
然后,您现在可以将群集节点的大小调整为零:
gcloud container clusters resize [CLUSTER_NAME] --size=0
通过单击群集上的“编辑”按钮并将每个节点池的大小设置为0,可以在Web GCP控制台中实现相同的效果。
参考:https://cloud.google.com/kubernetes-engine/docs/how-to/resizing-a-cluster