如果您的业务请求需要分发给其他服务或者应用,您可以为应用配置网关路由功能,实现请求路由分发。本文介绍如何通过微服务引擎 MSE(Microservices Engine)云原生网关为您的应用设置路由规则。
背景信息
MSE云原生网关兼容K8s Ingress,支持ACK容器服务和Nacos等多种服务发现方式,集成丰富的安全运维能力。
前提条件
MSE
您已创建MSE云原生网关。具体操作,请参见创建MSE云原生网关。
SAE
您已创建命名空间,并确保MSE云原生网关与SAE命名空间处于同一地域,且绑定同一个VPC。具体操作,请参见创建命名空间。
您已创建应用,并确保应用类型为微服务应用。具体操作,请参见创建应用。
您已了解使用约束。详细信息,请参见MSE云原生网关使用约束。
使用限制
仅适用于微服务应用。
创建路由规则
登录SAE控制台。
在左侧导航栏,单击命名空间,在顶部菜单栏选择地域,然后在命名空间页面,单击目标命名空间名称。
在左侧导航栏,单击网关路由,然后在网关路由页面,单击创建网关路由。
在创建路由页面,配置相关信息,然后单击保存。
配置项
描述
路由名称
路由规则名称,自定义。
网络类型
选择待转发请求的网络类型。
公网:通过公网网关转发的请求,按照实际转发流量计费。
私网:通过私网网关转发的请求不计费,仅在当前VPC内部转发。
网关类型
选择MSE云原生网关。
网关实例
当网关类型选择MSE云原生网关时需要配置。选择与命名空间同一地域且使用同一VPC的网关实例。如果您需要创建新的网关实例,可以单击创建 MSE 云原生网关进行创建。具体操作,请参见创建MSE云原生网关。
域名
选择需要匹配的域名,支持选择多个域名。如果您需要创建新的域名,可以单击创建域名进行创建。具体操作,请参见创建域名。
路径(Path)
设置匹配HTTP请求中的Path参数。
相同匹配规则时,Path越长优先级越高。
不同匹配规则时,
。等于:即完全匹配。例如,Path等于
/user
。前缀是:以前缀作为匹配条件。例如,Path以
/user
开头。正则匹配:以正则表达式作为匹配条件。例如,字符类
user
。
方法(Method)
设置匹配HTTP请求中的Method参数,不填表示匹配所有参数,支持选择多种HTTP方法。
请求头(Header)
设置匹配HTTP请求中的Header参数,相同匹配规则时参数越多优先级越高。
请求参数(Query)
设置匹配HTTP请求中的Query参数,相同匹配规则时参数越多优先级越高。
服务来源
支持SAE 内置 Nacos和MSE Nacos两种注册中心。
SAE内置Nacos:SAE通过自动注入相关环境变量以及借助于Java Agent修改字节码的技术,支持自动修改程序的注册中心与配置中心地址。
MSE Nacos:选择后,需设置MSE Nacos实例和MSE Nacos命名空间。
说明与应用的服务注册发现方式保持一致。
使用场景
选择当前路由的目标服务类型。
基础场景
单服务:将请求分发到唯一一个后端服务,是最常使用的场景。
灰度场景
多服务:将请求按比例分发到多个后端服务,通常在切流和灰度场景下使用。
标签路由:将请求按内容或比例分发到多个后端服务,若想实现全链路灰度功能需要搭配服务治理使用。
关于目标服务不同类型的说明,请参见路由方式概述。
后端服务
选择已关联的后端应用、服务和端口。
说明涉及权重的目标服务流量比例总和要求为100%。
按标签路由只对从网关到后端服务的第一级跳转有效,如果需要作用于整条请求链路上的灰度能力,请配合全链路灰度功能一起使用。
超时时间(秒)
输入超时时间。默认为60秒。如果为0,则表示永不超时。
高级配置
Fallback
开启Fallback开关,设置Fallback服务,您需要选择指定的服务。当路由指向的后端服务没有可用节点时,原请求会访问此处指定的Fallback服务。
说明目前仅支持HTTP服务之间的Fallback能力。
路由规则新建成功后,可以在网关路由页面进行查看、编辑等操作。
管理路由规则
创建路由规则后,您可以在网关路由页面查看转发策略、编辑以及删除网关路由。