Knative Serving的Activator如何拦截按比例缩小版本的请求?

问题描述 投票:2回答:1

here所述,Knative的激活器接收并缓冲对无效修订的请求。

如何执行此路由?我在应用程序的名称空间中看到的只是一个VirtualService,它将请求路由到修订版,因此我看不到进入网格的流量如何重定向到Activator。

本地服务版本:0.9.0

kubernetes istio envoyproxy knative knative-serving
1个回答
1
投票

Knative具有称为无服务器服务的新概念(CRD),它是为每个Knative服务创建的。

无服务器服务将创建两个Kubernetes服务:

  • << [Private service定位您的应用程序容器。需要发现Pod IP。
  • 入口网关
  • 公共服务
  • 正在成为目标,并且根据它所处的模式(稍后将对其进行详细说明),它将指向与第一个服务相同的终结点或指向该终结点激活程序服务。
无服务器服务模式

无服务器服务可以处于以下模式之一:

    服务
  • 代理
  • 服务模式

    无服务器服务处于服务模式,只要有正在运行的应用程序的pod实例。这样,您的公共服务便配置有来自私有服务的端点,这意味着入口网关转发的请求将到达您的应用程序,如下图所示:

    Serving Mode for Knative serverless controller

      hello-go-pb-是公共服务。
  • hello-go-pr-是私有服务。
  • 代理模式

    当应用程序的实例由自动缩放器按比例缩小时,无服务器服务将更新公共服务,以使用激活器服务发现的IP进行配置。触发自动缩放的请求将缓冲请求,直到一项服务启动并运行并转发请求。代理模式可以在下图中看到:

    Proxy Mode for Knative serverless controller

    作为总结,无服务器控制器设置公共服务的端点通过在私有服务的端点之间进行交替,或者如果将其缩减为Activator Service的端点的零,则可以使用。

  • © www.soinside.com 2019 - 2024. All rights reserved.