跳到主要内容

Architectures

概述

AI 网关系统采用双平面架构,包含管理平面和流量平面。这两个平面故意解耦,仅通过原生 Kubernetes 配置机制连接,从而实现集中治理和可靠的运行时强制执行。

管理平面

操作员通过管理面板管理系统,涵盖以下功能领域:

  • Gateway: 网关生命周期及相关组件
  • Backend: 目的地(LLMs、MCP、APIs)的定义和管理
  • Route/API: 路由规则、端点和 API 映射
  • Policy: 访问控制和内容治理政策
  • Secret: 凭证和密钥管理
  • Gateway Config: 操作网关设置
  • Topology/Monitoring: 系统可见性和监控视图

所有 UI 操作都以 Kubernetes CRD 的形式实现。agentgateway 持续监视这些 CRD,并相应地协调运行时行为。这是管理与生产流量之间的单一受控集成点。

流量平面(运行时流)

请求流动方向为左 → 右:

Input Traffic (AI Clients)

网关接受来自常见 AI 客户端的请求,如 Claude Desktop、Cursor、GitHub Copilot,以及自定义应用程序/代理。

agentgateway (Rust Proxy)

所有请求都经过 agentgateway,该网关在转发之前强制执行并优化流量:

  • 认证 / 授权
  • 速率限制
  • 提示保护
  • 路由
  • 缓存
  • 可观察性
Backends

处理后的请求被转发到三个后端类别之一:

  • AI 模型:OpenAI、Anthropic、Bedrock、Gemini、Vertex 等。
  • MCP 服务器:工具/数据服务器(例如,GitHub、Slack、数据库等)
  • REST API:内部 Kubernetes 服务或外部 HTTP 端点

组件摘要

管理平面(此存储库)

ComponentTechnologyRole
Vue UIVue 3.4 + TypeScript 5.4 + Vite 5.3操作控制台,独立或 MFE (ai-gateway) 在端口 8230
核心服务REST /core/v1配置文件、菜单、项目(跨领域)
AI_GATEWAY 服务REST /ai-gateway/v1所有 CRD 的 CRUD,领域 + 项目范围

运行平面(agentgateway 上游项目)

ComponentTechnologyRole
控制平面GogatewayReconciler (Helm 渲染) + agentgatewaysyncer (XDS 转换器)
数据平面RustTLS、AuthN/Z、速率限制、提示保护、路由 — 全部在一个 pod 中
后端调度器(内置)4 种类型 — ai、mcp、静态、dynamicForwardProxy

Kubernetes 资源

CRDAPI GroupPurpose
网关gateway.networking.k8s.io带有监听器的入口点(主机 / 端口 / TLS);GatewayClass = agentgateway
HTTPRoutegateway.networking.k8s.io匹配请求 → backendRef;支持过滤器(重写 / 重定向 / 镜像)
AgentgatewayBackendagentgateway.dev/v1alpha1上游定义(ai / mcp / 静态 / dfp)
AgentgatewayPolicyagentgateway.dev/v1alpha1前端 / 流量 / 后端策略(包括 AI 子策略)
AgentgatewayParametersagentgateway.dev/v1alpha1数据平面配置(镜像、副本、HPA 等)
Secretcore/v1TLS 证书和后端 API 密钥