【问题标题】:Is there any way to implement HPA in kubernetes based on multiple pub/sub subscription?有没有办法在基于多个 pub/sub 订阅的 kubernetes 中实现 HPA?
【发布时间】:2020-11-18 21:11:41
【问题描述】:

我正在使用 yaml 根据“subcription1”的单个订阅来扩展我的服务。
我想根据不是主题的订阅列表来扩展我的服务。有什么办法解决吗?

apiVersion: autoscaling/v2beta1
kind: HorizontalPodAutoscaler
metadata:
  name: demo-service-hpa
spec:
  minReplicas: 1
  maxReplicas: 5
  metrics:
  - external:
      metricName: pubsub.googleapis.com|subscription|num_undelivered_messages
      metricSelector:
        matchLabels:
          resource.labels.project_id: <project-id>
          metadata.system_labels.subscription_id: subcription1 #I want to pass multiple subscription here
      targetAverageValue: "1"
    type: External
  scaleTargetRef:
    apiVersion: extensions/v1beta1
    kind: Deployment
    name: hpa-sample-service

【问题讨论】:

    标签: google-cloud-platform google-kubernetes-engine autoscaling


    【解决方案1】:

    我没有测试它,但你可以尝试使用API v2beta2,它允许你定义几个缩放指标

    Kubernetes 1.6 增加了对基于多个指标的扩展的支持。您可以使用 autoscaling/v2beta2 API 版本为 Horizo​​ntal Pod Autoscaler 指定多个指标以进行扩展。然后,Horizo​​ntal Pod Autoscaler 控制器将评估每个指标,并根据该指标提出一个新的比例。建议的尺度中最大的将用作新尺度

    【讨论】:

      【解决方案2】:

      看看KEDA 及其Pub/Sub scaler

      Google Cloud Platform‎ (GCP) Pub/Sub 触发器允许您根据 Pub/Sub 订阅中的消息数量进行扩展。

      【讨论】:

        猜你喜欢
        • 2020-11-22
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-10-26
        • 1970-01-01
        • 2022-01-22
        • 2018-11-13
        相关资源
        最近更新 更多