我可以自动缩放 Kind : Pod 吗?
Posted
技术标签:
【中文标题】我可以自动缩放 Kind : Pod 吗?【英文标题】:Can I autoscale Kind : Pod? 【发布时间】:2021-08-14 08:17:48 【问题描述】:apiVersion: autoscaling/v1
kind: HorizontalPodAutoscaler
metadata:
name: testingHPA
spec:
scaleTargetRef:
apiVersion: apps/v1beta1
kind: Deployment
name: my_app
minReplicas: 3
maxReplicas: 5
targetCPUUtilizationPercentage: 85
以上是正常的 hpa.yaml 结构,是否可以将 kind 用作 pod 并自动缩放它??
【问题讨论】:
简答,否 您不能使用 pod kind 并自动缩放它。 HPA 是为自动缩放 pod 创建的。为什么不想使用 HPA? 我想使用它,因为每当我删除 pod 时,它们都会重新创建,因为它们在部署控制器下。是否有任何政策可以阻止正在部署的 Pod 重新启动? ..在某些情况下我们可能需要这样做! 【参考方案1】:正如其他人已经指出的那样,不可能将Pod
设置为Kind
对象作为HPA 的目标资源。
document describes HPA 为:
Horizontal Pod Autoscaler 自动缩放 Pod 的数量 在复制控制器、部署、副本集或有状态集中 基于观察到的 CPU 利用率(或者,使用自定义指标支持,在 一些其他应用程序提供的指标)。请注意,水平吊舱 自动缩放不适用于无法缩放的对象,因为 例如,DaemonSets。
该文档还描述了该算法在后端是如何实现的:
desiredReplicas = ceil[currentReplicas * ( currentMetricValue / desiredMetricValue )]
并且由于 Pod
资源没有将副本字段作为其规范的一部分,因此我们可以得出结论,使用 HPA 的自动缩放不支持相同的字段。
【讨论】:
【参考方案2】:一个 Pod 永远只是一个 Pod。它没有任何水平缩放机制,因为它是其他一切的机制。
【讨论】:
以上是关于我可以自动缩放 Kind : Pod 吗?的主要内容,如果未能解决你的问题,请参考以下文章