具有大量状态集和服务的Kubernetes集群的架构建议

时间:2019-08-30 09:25:54

标签: kubernetes google-kubernetes-engine kubernetes-pod

我需要有关在Kubernetes集群中管理数千个服务和状态集(1个pod)的建议。

每个Pod至少需要500mb的内存,并且这些有状态集并不总是处于启动状态,它将关闭一段时间并运行一段时间。

我应该使用哪种节点以及应该使用哪种工具来减少计费?

谢谢

2 个答案:

答案 0 :(得分:3)

您需要使用的节点类型取决于您的pod所执行的工作负载类型。 https://cloud.google.com/compute/docs/machine-types

通过始终最大化资源利用率来减少群集的费用。

集群自动缩放器将帮助您实现相同目标。根据负载增加/减少集群中的节点数。 https://github.com/kubernetes/autoscaler/tree/master/cluster-autoscaler

您还可以使用可抢占的VM 承诺的使用折扣

来减少计费

可抢占的VM ,因为Kubernetes集群中的所有节点都可以被类似的VM代替。 (牛不是宠物!)https://cloud.google.com/compute/docs/instances/preemptible

承诺的使用折扣如果您承诺长时间使用VM,GCP还可以降低VM的成本 https://cloud.google.com/compute/docs/instances/signing-up-committed-use-discounts

答案 1 :(得分:2)

您可以使用https://cloud.google.com/kubernetes-engine/docs/how-to/preemptible-vms,但是请注意,您的应用程序应设计为处理由于可抢占节点的旋转而引起的潜在中断,即应用程序应具有容错性。

您还可以使用群集自动缩放器https://cloud.google.com/kubernetes-engine/docs/concepts/cluster-autoscaler,以便您的群集大小可以适应实际需求。

相关问题