【问题标题】:How to scale knative service based on custom metrics?如何根据自定义指标扩展 knative 服务?
【发布时间】:2022-01-14 00:53:36
【问题描述】:

我将 Knative 服务与 KPA 一起使用。基于并发和 RPS 的自动缩放在 Knative 中可用。但是我们需要根据队列长度来扩展不同的服务,因为有长时间运行的异步进程。我们有什么方法可以在 Knative 中实现这一点? 我不能使用 Knative HPA,因为我们需要 Knative 的归零功能。 提前致谢!

【问题讨论】:

    标签: kubernetes containers autoscaling knative knative-serving


    【解决方案1】:

    如果您有异步(后台或预定进程),则 Knative 可能不适合您的应用程序。已经对公开 HPA v2 自定义指标扫描选项进行了一些调查(如您所述,这可能会阻止缩放为零),但即使使用 HPA2 缩放,您仍然会遇到问题。

    后台进程的问题在于,Knative 和 Kubernetes 无法了解哪些 Pod 仍在工作,因此它们很可能会像关闭空闲的 Pod 一样关闭正在工作的 Pod .

    一种解决方法是将异步工作移动到与请求同步(可能通过使用事件发送“做工作”事件),然后同步处理这些事件 - 如果发生以下情况,事件代理不会感到不安您的请求需要很长时间才能完成。如果您担心处理时间不统一,您甚至可以运行 Knative 服务的第二个副本来处理长时间运行的请求。

    【讨论】:

      猜你喜欢
      • 2019-06-19
      • 1970-01-01
      • 1970-01-01
      • 2021-11-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-06-14
      • 2021-07-09
      相关资源
      最近更新 更多