首页 文章

Kubernetes与谷歌容器引擎:如何使用自动缩放?

提问于
浏览
2

我已经使用Kubernetes将应用程序部署到Google Cloud 容器引擎群集 .

我进入了自动缩放,我发现了以下选项:

Kubernetes Horizontal Pod Autoscaling (HPA)

作为explained here,Kubernetes在部署方面提供HPA . 根据docs

Horizontal Pod Autoscaling根据观察到的CPU利用率自动调整复制控制器,部署或副本集中的pod数

Google Cloud Container Cluster

现在,我有一个使用3个实例的Google Cloud Container Cluster,并启用了自动调节功能 . 根据docs

Cluster Autoscaler使用户能够自动调整群集大小,以便所有计划的pod都有一个可以运行的位置 .

这意味着我有两个地方来定义我的自动缩放 . 因此我的问题:

  • Pod是否与我的群集中的VM实例相同,或者可以在单个VM实例中运行多个Pod?

  • 这两个参数是否相同(即在我的集群中创建/删除VM实例) . 如果没有,他们的行为相互比较是什么?

  • 如果发生以下情况会怎样我在 310 之间有一些pod,并且在 13 之间有一个实例数量的集群,并且自动缩放开始了 . 何时以及如何扩展?

非常感谢!

1 回答

  • 3

    Pod是否与我的群集中的VM实例相同,或者可以在单个VM实例中运行多个Pod?

    多个Pod可以运行相同的实例(在kuberenetes中称为节点) . 您可以在部署yaml中定义要为POD使用的最大资源 . 见docs . 这是自动缩放的重要先决条件 .

    这两个参数是否相同(即在我的集群中创建/删除VM实例) . 如果没有,他们的行为相互比较是什么?

    Kubernetes autoscaler将在现有节点中安排其他POD . Google自动识译器会将工作节点(新实例)添加到您的群集中 . Google自动识别器查看无法调度的排队POD,因为群集中没有空间,并且当它发现这些将添加节点时 .

    例如,如果发生我有3到10之间的多个pod和一个实例数在1到3之间的簇,并且自动缩放开始 . 何时以及如何扩展?

    根据您为pod定义的最大资源使用量,google autoscaler将估算运行所有排队的计划pod所需的新节点数 .

    另请阅读article .

相关问题