gpt4 book ai didi

kubernetes - Knative Serving 的 Activator 如何拦截缩小修订的请求?

转载 作者:行者123 更新时间:2023-12-03 11:21:58 30 4
gpt4 key购买 nike

如所述here ,Knative 的 Activator 接收并缓冲对非事件修订的请求。

这个路由是如何实现的?我在应用程序的命名空间中看到的只是一个 VirtualService 路由请求到修订版,所以我看不到进入网格的流量是如何重定向到 Activator 的。

Knative 服务版本:0.9.0

最佳答案

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

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

  • 私服它以您的应用程序 pod 为目标。需要发现 Pod IP。
  • 公共(public)服务 正在成为目标 通过入口网关并根据它所处的模式(稍后将详细介绍),它将指向与第一个服务相同的端点或激活器服务的端点。

  • 无服务器服务模式

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

  • 服务模式

    只要您的应用程序有 pod 实例在运行,无服务器服务就处于服务模式。因此,您的公共(public)服务配置了来自您的私有(private)服务的端点,这意味着由入口网关转发的请求会到达您的应用程序,如下图所示:

    Serving Mode for Knative serverless controller
  • hello-go-pb - 是公共(public)服务。
  • hello-go-pr - 是私有(private)服务。

  • 代理模式

    当您的应用程序实例被自动缩放器缩减时,无服务器服务 Controller 会更新公共(public)服务,以使用 Activator Service 发现的 IP 进行配置。触发自动缩放会缓冲请求,直到一项服务启动并运行并转发请求。代理模式如下图所示:

    Proxy Mode for Knative serverless controller

    总而言之,无服务器 Controller 设置公共(public)服务的端点
    通过在私有(private)服务的端点之间交替,或者将其缩小到零到激活器服务的端点。

    关于kubernetes - Knative Serving 的 Activator 如何拦截缩小修订的请求?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58860118/

    30 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com