kubernetes水平吊舱自动标定是反应式方法还是主动式方法?

kubernetes水平吊舱自动标定是反应式方法还是主动式方法?,kubernetes,google-kubernetes-engine,autoscaling,kubernetes-pod,horizontal-pod-autoscaling,Kubernetes,Google Kubernetes Engine,Autoscaling,Kubernetes Pod,Horizontal Pod Autoscaling,我想知道kubernetes中的自动缩放功能是一种反应式方法还是主动式方法,以及它们是否仅基于规则 请让我知道 谢谢你这完全取决于你如何定义反应性和主动性。从一方面来说,我会说,反应性作为衡量标准,自动校准决策是基于,需要达到一定的值,以便自动校准过程可以进行。只有基于对某些事件的预测或预期,例如负载增加,例如,您预计由于下周推出的促销活动,应用程序上的负载将增加约3倍时,操作才是主动的 我鼓励你仔细看看 从最基本的角度来看,水平吊舱自动缩放控制器根据所需度量值和当前度量值之间的比率进行操作:

我想知道kubernetes中的自动缩放功能是一种反应式方法还是主动式方法,以及它们是否仅基于规则

请让我知道


谢谢你

这完全取决于你如何定义反应性和主动性。从一方面来说,我会说,反应性作为衡量标准,自动校准决策是基于,需要达到一定的值,以便自动校准过程可以进行。只有基于对某些事件的预测或预期,例如负载增加,例如,您预计由于下周推出的促销活动,应用程序上的负载将增加约3倍时,操作才是主动的

我鼓励你仔细看看

从最基本的角度来看,水平吊舱自动缩放控制器根据所需度量值和当前度量值之间的比率进行操作:

例如,如果当前度量值为
200m
,则 值为
100m
,副本数量将增加一倍,因为
200.0/100.0==2.0
如果当前值改为
50m
,我们将 复制副本数量减半,因为
50.0/100.0==0.5
。我们跳过 如果比率足够接近1.0(在一年内),则缩放 全局可配置公差,来自
--水平吊舱自动缩放公差
标志,默认为0.1)

如您所见,所需的副本数量是基于当前度量值计算的,并且只有当该值达到某个临界点时,才会触发自动缩放过程。因此,从这个角度来看,它是100%反应性的

从不同的角度来看这个问题,决定使用水平吊舱自动缩放器是一种主动方法。但现在我谈论的是用户管理其基础设施的方法,而不是我上面描述的hpa本身的机制。假设您根本不使用水平吊舱autoscaler,并且您的应用程序正在运行的固定吊舱上有时会出现意外的负载增加,并且由于这些增加,您的应用程序通常变得不可用

如果您手动管理这样的环境,您在这种情况下的反应是关于扩展您的
部署
的决定。你可能会同意我的观点,这是完全被动的方法

但是,如果您决定使用hpa,您将主动预测此类负荷的增加。它使您能够始终领先一步,并在情况发生之前自动做出反应。因此,如果您决定在CPU使用率达到某个treshhold(例如50%(对应用程序来说仍然安全,因此它可以继续运行)时扩展部署,则hpa会根据您的预测自动为您处理情况。然而,水平吊舱自动缩放器的反应是反应性的(对超出的treshhold的反应),同时,此时的基础设施自动缩放是主动的,因为自动缩放器在情况变得危急之前开始行动


我希望这有助于你理解这个问题。

这完全取决于你如何定义反应性和主动性。从一方面来说,我会说,反应性作为衡量标准,自动校准决策是基于,需要达到一定的值,以便自动校准过程可以进行。只有基于对某些事件的预测或预期,例如负载增加,例如,您预计由于下周推出的促销活动,应用程序上的负载将增加约3倍时,操作才是主动的

我鼓励你仔细看看

从最基本的角度来看,水平吊舱自动缩放控制器根据所需度量值和当前度量值之间的比率进行操作:

例如,如果当前度量值为
200m
,则 值为
100m
,副本数量将增加一倍,因为
200.0/100.0==2.0
如果当前值改为
50m
,我们将 复制副本数量减半,因为
50.0/100.0==0.5
。我们跳过 如果比率足够接近1.0(在一年内),则缩放 全局可配置公差,来自
--水平吊舱自动缩放公差
标志,默认为0.1)

如您所见,所需的副本数量是基于当前度量值计算的,并且只有当该值达到某个临界点时,才会触发自动缩放过程。因此,从这个角度来看,它是100%反应性的

从不同的角度来看这个问题,决定使用水平吊舱自动缩放器是一种主动方法。但现在我谈论的是用户管理其基础设施的方法,而不是我上面描述的hpa本身的机制。假设您根本不使用水平吊舱autoscaler,并且您的应用程序正在运行的固定吊舱上有时会出现意外的负载增加,并且由于这些增加,您的应用程序通常变得不可用

如果您手动管理这样的环境,您在这种情况下的反应是关于扩展您的
部署
的决定。你可能会同意我的观点,这是完全被动的方法

然而,如果y
desiredReplicas = ceil[currentReplicas * ( currentMetricValue / desiredMetricValue )]