使用Gateway with Inference Extension路由外部MaaS服务

本文涉及的产品
容器镜像服务 ACR,镜像仓库100个 不限时长
简介: 本文介绍如何通过Gateway with Inference Extension对接百炼服务,实现请求路由时自动添加API Key并重写路径,包含操作步骤及验证方法。

本文以对接百炼为例,演示如何通过Gateway with Inference Extension路由至外部MaaS服务,在路由到指定MaaS服务时、自动添加请求API Key并修改请求路径。

前提条件

操作步骤

步骤一:在集群中创建包含API Key的Secret

执行以下指令,在集群中部署包含百炼API Key的Secret,用于网关路由请求时添加API Key验证信息。

TOKEN=<百炼 API Key>
kubectl create secret generic jwt-credential --from-literal=credential=" Bearer $TOKEN"

步骤二:创建用于自动添加请求API Key的HTTPRouteFilter资源

HTTPRouteFilter用于指定向请求中自动注入请求验证凭据的过程。默认情况下,凭据将被注入到 Authorization 头部中。您也可以通过在 HTTPRouteFilter 的 credentialInjection 部分指定头部字段,将凭据注入到其他头部。

如果请求中已经存在 Authorization 头部或指定的头部,则除非您将 overwrite 设置为 true,否则凭据不会被注入。

执行以下指令,创建HTTPRouteFilter资源。

kubectl apply -f- <<EOF
apiVersion: gateway.envoyproxy.io/v1alpha1
kind: HTTPRouteFilter
metadata:
  name: credential-injection
spec:
  credentialInjection:
    overwrite: true
    credential:
      valueRef:
        name: bailian-credential
EOF

步骤三:创建外部MaaS服务后端声明

Backend资源向网关注册了外部后端服务dashscope.aliyuncs.com,BackendTLSPolicy 指定网关需要以https和百炼服务进行通信。

执行以下指令,创建Backend和BackendTLSPolicy资源。

kubectl apply -f- <<EOF
apiVersion: gateway.envoyproxy.io/v1alpha1
kind: Backend
metadata:
  name: bailian
spec:
  endpoints:
    - fqdn:
        hostname: dashscope.aliyuncs.com
        port: 443
---
apiVersion: gateway.networking.k8s.io/v1alpha3
kind: BackendTLSPolicy
metadata:
  name: enable-backend-tls
spec:
  targetRefs:
  - group: gateway.envoyproxy.io
    kind: Backend
    name: bailian
  validation:
    hostname: dashscope.aliyuncs.com
    wellKnownCACertificates: System
EOF

步骤四:创建网关和网关路由规则

Gateway资源声明了在集群中创建一个带有8080端口监听的网关,HTTPRoute指定了网关上的路由规则:在转发到百炼服务dashscope.aliyuncs.com时,将请求中以/v1开头的路径的请求重写为/compatible-mode/v1开头的请求,以实现与百炼API的兼容。

执行以下指令,创建Gateway和HTTPRoute资源。

apiVersion: gateway.networking.k8s.io/v1
kind: Gateway
metadata:
  name: bailian-gateway
spec:
  gatewayClassName: ack-gateway
  listeners:
  - name: http-bailian
    protocol: HTTP
    port: 8080
---
apiVersion: gateway.networking.k8s.io/v1
kind: HTTPRoute
metadata:
  name: bailian-route
spec:
  parentRefs:
    - name: bailian-gateway
  rules:
    - backendRefs:
        - group: gateway.envoyproxy.io
          kind: Backend
          name: bailian
      filters:
        - type: URLRewrite
          urlRewrite:
            hostname: dashscope.aliyuncs.com
            path:
              type: ReplacePrefixMatch
              replacePrefixMatch: /compatible-mode/v1
        - type: ExtensionRef
          extensionRef:
            group: gateway.envoyproxy.io
            kind: HTTPRouteFilter
            name: credential-injection
      matches:
        - path:
            type: PathPrefix
            value: /v1

步骤五:验证网关路由

  1. 获取网关公网IP
export GATEWAY_HOST=$(kubectl get gateway/qwen-inference-gateway -o jsonpath='{.status.addresses[0].value}')
  1. 验证网关在8080端口正常将请求转发到百炼服务,并自动添加API Key。
curl http://$GATEWAY_HOST:8080/v1/chat/completions \
  -H "Content-Type: application/json" \
  -d '{
    "model": "qwen3-32b",
    "messages": [
      {"role": "user", "content": "你好,这是一个测试"}
    ],
    "enable_thinking": false
  }' -v
相关文章
|
20天前
|
运维 Cloud Native 应用服务中间件
阿里云微服务引擎 MSE 及 API 网关 2025 年 8 月产品动态
阿里云微服务引擎 MSE 面向业界主流开源微服务项目, 提供注册配置中心和分布式协调(原生支持 Nacos/ZooKeeper/Eureka )、云原生网关(原生支持Higress/Nginx/Envoy,遵循Ingress标准)、微服务治理(原生支持 Spring Cloud/Dubbo/Sentinel,遵循 OpenSergo 服务治理规范)能力。API 网关 (API Gateway),提供 APl 托管服务,覆盖设计、开发、测试、发布、售卖、运维监测、安全管控、下线等 API 生命周期阶段。帮助您快速构建以 API 为核心的系统架构.满足新技术引入、系统集成、业务中台等诸多场景需要。
149 15
|
20天前
|
存储 测试技术 开发者
NVFP4量化技术深度解析:4位精度下实现2.3倍推理加速
本文深入解析NVIDIA推出的NVFP4量化技术,探讨其在Blackwell GPU架构下的性能优势。通过对比主流4位量化方法,分析NVFP4在精度、内存和推理吞吐量方面的表现,结合LLM-Compressor与vLLM框架展示量化与部署实践,验证其在消费级与企业级应用中的高效性与实用性。
142 15
NVFP4量化技术深度解析:4位精度下实现2.3倍推理加速
|
9天前
|
API 网络架构 容器
【Azure Container App】查看当前 Container App Environment 中的 CPU 使用情况的API
在扩展 Azure Container Apps 副本时,因 Container App Environment 的 CPU 核心数已达上限(500 cores),导致扩展失败。本文介绍如何使用 `az rest` 命令调用 Azure China Cloud 管理 API,查询当前环境的 CPU 使用情况,并提供具体操作步骤及示例。
62 16
|
22天前
|
安全 Windows
修改Windows鼠标滚轮方向
本文介绍了如何在Windows系统中自定义鼠标滚轮方向。通过设备管理器识别鼠标硬件信息,找到对应的注册表项,修改`FlipFlopWheel`键值即可实现滚轮方向反转。操作简单,适用于单/多鼠标用户,提升操作体验。
322 5
|
6天前
|
人工智能 区块链 Python
元宇宙不是空壳子:聊聊未来经济体系怎么搭建
元宇宙不是空壳子:聊聊未来经济体系怎么搭建
82 8
|
25天前
|
人工智能 程序员 定位技术
和AI谈恋爱指南:从尬聊到心有灵犀
想让AI理解你的需求?本文用最轻松有趣的方式教你掌握提示词工程,从小白到高手,让ChatGPT成为你最得力的助手。通过生动的类比和实战案例,轻松掌握与AI对话的艺术!
|
20天前
|
Java 测试技术 API
2025 年 Java 开发者必知的最新技术实操指南全览
本指南涵盖Java 21+核心实操,详解虚拟线程、Spring Boot 3.3+GraalVM、Jakarta EE 10+MicroProfile 6微服务开发,并提供现代Java开发最佳实践,助力开发者高效构建高性能应用。
227 4