Kubernetes水平Pod自动缩放器(HPA)测试

时间:2020-08-05 14:51:34

标签: kubernetes kubernetes-pod

我们似乎在Web服务API上遇到一些内部服务器错误(500),似乎是在作为自动缩放器配置的一部分引入或删除了新Pod时。

自然,这种事情很难解决,因为您并不总是能够控制吊舱启动和停止的时间。

有没有一种机制可以用来指示集群向上和向下扩展?

我们hpa.yaml的利息。

kind: HorizontalPodAutoscaler
apiVersion: autoscaling/v2beta2
metadata:
  name: xyz
spec:
  minReplicas: 1
  maxReplicas: 12
  scaleTargetRef:
    apiVersion: apps/v1
    kind: Deployment
    name: xyz
  behavior:
    scaleUp:
      stabilizationWindowSeconds: 0
      policies:
      - type: Percent
        value: 100
        periodSeconds: 15
    scaleDown:
      stabilizationWindowSeconds: 300
      policies:
      - type: Percent
        value: 50
        periodSeconds: 60
  metrics:
    - type: Resource
      resource:
        name: cpu
        target:
          type: Utilization
          averageUtilization: 70
    - type: Resource
      resource:
        name: memory
        target:
          type: Utilization
          averageUtilization: 85

1 个答案:

答案 0 :(得分:3)

如果您有兴趣使HPA出于调试目的强行创建或销毁Pod,则可以在Horizo​​ntal Pod Autoscaler .yaml定义中使用自定义指标。

如果问题是新创建的Pod导致错误,则可以在Pod定义中实施准备情况探针,以执行httpGet检查。这样,您可以避免在有问题的Pod上重定向流量,直到探测检查返回状态= 200。