0

我正在运行一个Kubernetes 水平 pod 自动缩放 器,以根据消费者组滞后来扩展 kafka 消费者。HPA yaml 文件如下所示。

apiVersion: autoscaling/v2beta2
kind: HorizontalPodAutoscaler
metadata:
  name: kafka-consumer-application
spec:
  scaleTargetRef:
    apiVersion: apps/v1
    kind: Deployment
    name: kafka-consumer-application
  minReplicas: 1
  maxReplicas: 10
  metrics:
    - type: External
      external:
        metric:
          name: kafka_consumergroup_lag
        target:
          type: AverageValue
          averageValue:5 

我观察到 HPA 不严格按照公式ceil(currentReplicas * currentMetricValue/desiredMetricValue)缩放副本。

例如,当指标(消费者滞后)为 108 且只有一个副本时,Kubernetes 只扩展了 4 个副本(如下面的屏幕截图所示),而理论上它应该扩展到 10(允许的最大副本数)......

在此处输入图像描述

关于原因的任何想法?我是否遗漏了诸如 HPA 协调循环的每次迭代可以缩放/复制的最大副本数之类的东西?

请注意屏幕截图中的消息“ScalingLimited True ScaleUpLimit 所需的副本数增加的速度快于最大缩放率”是什么意思?

谢谢。

4

0 回答 0