跳转到内容

什么是 Nantian Gateway

Nantian Gateway 是一个内置 AI 网关的 Kubernetes Gateway API 实现

与其他网关项目不同——它们要求你在 Ingress 之外再部署一个独立的 AI 代理(LiteLLM、Portkey 等)——Nantian Gateway 在处理 HTTP 流量的同一个代理进程内完成 AI 供应商路由、Token 计数、速率限制、Prompt 防护和成本追踪。无需额外一跳,无需增加运维复杂度。

# 一次安装。一个代理。网关 + AI 网关。
helm repo add nantian-gw https://chart.nantian.dev
helm install nantian-gw nantian-gw/nantian-gw --namespace nantian-gw --create-namespace

需要 AI 网关能力的团队目前有两个选择:

  1. 使用独立的 AI 代理(LiteLLM、Portkey、AI Gateway)—— 增加了一跳,管理复杂度翻倍,引入独立的认证和可观测性面。
  2. 使用 Kubernetes 网关(Istio、Envoy Gateway、Contour)—— 完全没有 AI 功能,仍然需要独立的 AI 代理。

Nantian Gateway 是唯一将两者合并在一个进程中的选择:

  • Gateway API 路由:处理常规 HTTP/gRPC/TCP/UDP 流量
  • AI 网关 功能:处理 LLM 流量——模型路由、语义缓存、PII 脱敏、内容安全、A/B 测试、故障转移、成本追踪、Langfuse 可观测性
  • Wasm 可扩展:用 Rust 编写自定义过滤器,通过 CRD 部署

一次 Helm 安装,一个控制面,一个数据面二进制文件。

Terminal window
# 1. 安装网关
helm repo add nantian-gw https://chart.nantian.dev
helm install nantian-gw nantian-gw/nantian-gw \
--namespace nantian-gw --create-namespace
# 2. 创建 Gateway(入口点)
kubectl apply -f - <<EOF
apiVersion: gateway.networking.k8s.io/v1
kind: Gateway
metadata:
name: my-gateway
namespace: default
spec:
gatewayClassName: nantian-gw
listeners:
- name: http
port: 80
protocol: HTTP
EOF
# 3. 创建 HTTPRoute(路由规则)
kubectl apply -f - <<EOF
apiVersion: gateway.networking.k8s.io/v1
kind: HTTPRoute
metadata:
name: my-route
namespace: default
spec:
parentRefs:
- name: my-gateway
rules:
- matches:
- path:
type: PathPrefix
value: /api
backendRefs:
- name: my-backend-service
port: 8080
EOF

现在 /api 的流量已被路由到 my-backend-service:8080。无需自定义 CRD,无需专有配置语言。

Nantian Gateway 采用分离式平面架构:

Gateway API 资源 -> Go 控制面 -> 内部快照 -> gRPC/xDS -> Rust 数据面 -> 后端服务

Go 控制面 监听 Kubernetes 资源,将 Gateway API 和 Nantian 扩展资源翻译为内部路由状态,上报状态,并通过 gRPC/xDS 发布运行时快照。 Rust 数据面 接收这些快照并处理实时流量——HTTP、gRPC、TCP、UDP、TLS 和 AI 供应商请求。

控制面和数据面是独立的二进制文件,位于不同的仓库中,各自拥有独立的构建、测试和发布周期。

能力详情
Gateway APIv1.5.1,60+ 特性,全量 conformance 测试通过
AI 网关模型路由、语义缓存、PII 脱敏、内容安全、A/B 测试、故障转移、成本追踪、Langfuse、Token 策略
Wasm 插件用 Rust 编写自定义过滤器,wasmtime 沙箱,通过 CRD 部署
服务网格Gateway API Mesh 模型,无需 Sidecar
仪表盘Next.js 管理界面,30+ 页面
可观测性Prometheus 指标、Grafana 仪表盘、OpenTelemetry 追踪、结构化日志
性能9,000-11,000 RPS,P50 3-4ms,P99 11-15ms,~105 MiB 内存
运维Helm Chart、HA 配置、PDB、拓扑分布、告警规则、备份流程