agentgateway:给 agent 流量补上安全与治理的 Rust 网关

agentgateway:给 agent 流量补上安全与治理的 Rust 网关


AAIF 基金会的 agentic 原生网关:Rust 写的 LLM/MCP/A2A 三合一代理,补认证、RBAC、护栏与可观测,单机一个 YAML 就能跑。

一句话

agentgateway 是 Linux 基金会 AAIF 旗下的 agentic 原生网关(Rust 编写):给 agent→LLM、agent→工具(MCP)、agent→agent(A2A)三类流量提供开箱即用的安全、可观测和治理——单机一个 YAML 文件就能跑。

为什么传统网关干不了这个活

传统 API 网关为"无状态请求-响应"设计,而 MCP/A2A 是完全不同的物种:

传统 API 网关MCP/A2A 流量
无状态 request/response有状态 JSON-RPC 会话 + 长连接
一个请求→一个后端一次会话扇出到多个 MCP server
仅客户端发起双向:服务端可 SSE 推送事件

所以需要用 Rust 重写的、为长连接和会话扇出而生的数据平面——agentgateway 就是干这个的。2025 年捐给 Linux 基金会,2026 年进入 AAIF(与 MCP、A2A、AGENTS.md 同基金会)。

三大流量面 + 两道防线

  • LLM Gateway:OpenAI 兼容统一入口接 OpenAI/Anthropic/Gemini/Bedrock,带预算与花费控制、负载均衡、故障转移
  • MCP Gateway:工具联邦(多个 MCP server 聚合到一个端点)、stdio/HTTP/SSE/Streamable HTTP 全传输、OpenAPI 直接转 MCP 工具、OAuth 认证
  • A2A Gateway:agent 间安全通信——能力发现、模态协商、长任务协作
  • Guardrails:正则、OpenAI moderation、AWS Bedrock Guardrails、Google Model Armor、自定义 webhook 多层内容过滤
  • 安全与观测:JWT/API Key/OAuth 认证、CEL 策略引擎的细粒度 RBAC、限流、TLS、OpenTelemetry 全链路

部署(Standalone,扁平 YAML 驱动)

1. 拿二进制:GitHub Releases 下载对应平台包(Rust 单文件,也有 cargo 构建和 K8s controller 两条路)

2. 写配置:核心是 bind/listener/route/backend + policies。代理一个 A2A agent 长这样(官方 examples/a2a):

# config.yaml 片段:把 localhost:9999 的 A2A agent 挂到网关 :3000
binds:
- port: 3000
  listeners:
  - routes:
    - backends:
      - host: localhost:9999
      policies:
        a2a: {}   # 标记为 A2A 流量,按协议处理

3. 起跑:agentgateway -f config.yaml,自带 Web UI(playground 可以直接调试 agent 和工具调用)

杀手级细节:网关会自动改写下游 agent 的 Agent Card URL 指向自己——客户端拿到名片后所有后续调用都走网关,没法绕过它直连后端。这正是"裸奔的内网 A2A/agent 服务补认证"的正确姿势:后端继续监听 127.0.0.1,网关在前面挡认证(JWT/OAuth/RBAC)和限流。

Kubernetes 路线:内置 Gateway API controller,声明式管理,适合生产集群。

适合谁

  • 内网跑了一堆 agent/MCP 服务(像我们这样 9999 端口零鉴权裸奔的),要加认证/RBAC/限流但不想改服务本身——网关挡前面,零侵入
  • 要统一多家 LLM 出口、控预算控花费的团队
  • 生产化 MCP/A2A:SSE 长连接、会话扇出、OTel 观测,传统 nginx/envoy 玩不转的那些

链接

2000举报0子龙•4天前
点击获取 ^_^
被收录:

暂无评论