我正在尝试 Openshift Origin 版本 3(使用 Docker 和 Kubernetes),但我找不到如何自动化水平 pod 扩展。我知道垂直缩放是自动的,水平缩放是可能的(例如:oc scale test frontend --replicas=3)
我想要的是在应用程序负载上升时创建额外的副本(pod),并且在负载下降时终止这些副本。
有谁知道该怎么做?
我正在尝试 Openshift Origin 版本 3(使用 Docker 和 Kubernetes),但我找不到如何自动化水平 pod 扩展。我知道垂直缩放是自动的,水平缩放是可能的(例如:oc scale test frontend --replicas=3)
我想要的是在应用程序负载上升时创建额外的副本(pod),并且在负载下降时终止这些副本。
有谁知道该怎么做?
它还没有 - 现在正在 Kubernetes 中完成初步工作(https://github.com/GoogleCloudPlatform/kubernetes/blob/master/docs/proposals/autoscaling.md和https://github.com/GoogleCloudPlatform/kubernetes /拉/9612)。
现在从 OC v 3.1 开始支持水平自动缩放
要求: 1- 需要启动水平自动缩放 HorizontalPodAutoscaler 对象 2- 通过 Heapster 启用指标
自动缩放当前使用 CPU 利用率来决定 Pod 是否需要放大或缩小。要创建一个自动缩放对象,我们需要一个 yaml 文件,如下所示:
apiVersion: extensions/v1beta1
kind: HorizontalPodAutoscaler
metadata:
name: frontend-scaler
spec:
scaleRef:
kind: DeploymentConfig
name: welcome-php
apiVersion: v1
subresource: scale
minReplicas: 1
maxReplicas: 10
cpuUtilization:
targetPercentage: 70
在上面的示例中,目标百分比设置为 70% CPU 利用率,如果 pod 达到此限制,则水平自动缩放将启动一个新 pod。下一步是创建对象:
$ oc create -f scaler.yaml
horizontalpodautoscaler "frontend-scaler" created