文档

云原生网关入门体验

更新时间:

您可以为微服务创建一个云原生网关,通过从MSE Nacos添加服务或者从容器服务ACK关联服务,然后在网关中为服务创建路由策略,以便该服务通过网关对外提供服务。本文帮助您快速体验云原生网关。

体验流程

微服务如果部署到容器服务ACK或注册到MSE Nacos注册中心,云原生网关可直接从ACK关联服务,也可以从MSE Nacos添加服务。

Ingress网关体验流程

  1. 新建云原生网关

    根据已有微服务环境,创建云原生网关。

  2. 创建服务来源

    在云原生网关中添加服务来源,包括固定地址服务、ACK容器服务、MSE Nacos和DNS域名。

    说明

    如果您选择固定地址服务,请直接在服务列表中添加服务,无需添加服务来源。

  3. 创建服务

    云原生网关能够根据容器服务ACK或MSE Nacos来源获取服务的命名空间,将已有的服务添加到云原生网关,作为备选服务。

  4. 创建路由

    为该服务添加路由策略并发布。

步骤一:新建云原生网关

操作步骤

  1. 登录MSE网关管理控制台,并在顶部菜单栏选择地域。

  2. 在左侧导航栏,选择云原生网关 > 网关列表

  3. 网关列表页面左上角,单击创建网关

  4. 在云原生网关购买页面中选择相关配置,然后单击立即购买

    参数

    描述

    付费模式

    支持包年包月按量付费方式。具体价格,请参见普通实例计费概述

    地域

    选择网关的开服地域。

    网关名称

    自定义设置网关的名称,推荐用环境(或加业务领域)命名,例如test、order-prod等,最大长度为64个字符。

    网关引擎规格

    根据实际需求选择引擎规格,包括2核4G4核8G8核16G16核32G相关内容,请参见容量说明

    网关节点数

    选择网关的节点数量,生产环境中建议网关节点数不少于2个节点。

    说明

    单节点网关存在风险,请谨慎选择。

    资源组

    选择资源组。

    专有网络

    选择后端服务所在的专有网络。

    交换机位置

    选择交换机位置。

    可用区

    交换机位置选择为固定可用区时需要选择可用区。网关依赖VPC内的交换机与后端服务进行通信,建议优先选择和后端服务可用区一致的交换机。

    交换机选择

    交换机位置选择为自选可用区时需要选择交换机。

    公网SLB规格

    选择公网IP地址,可以通过互联网访问。

    私网SLB规格

    选择VPC内的私网IP地址。

    安全组类型

    选择网关安全组的类型,默认为企业安全组,建议与您后端服务所在ECS的安全组类型一致。相关内容,请参见安全组概述

    硬件加速

    选中启用TLS硬件加速,开启后会使用硬件加速TLS握手能力,握手性能提升1倍。

    说明

    由于底层硬件限制,目前只有北京、上海、杭州、深圳、新加坡地域支持。

    网关监控

    网关默认为您开通可观测监控 Prometheus 版收集网关指标并提供监控大盘,提供监控大盘和告警管理,该功能不收费。

    日志服务

    选中使用日志服务(SLS),为您开通日志服务SLS并开启网关日志投递功能,提供日志分析和仪表盘。相关内容,请参见开启网关日志投递

    链路追踪

    选中使用可观测链路 OpenTelemetry 版,为您开通阿里云可观测链路 OpenTelemetry 版并开启网关链路追踪。相关内容,请参见开启网关链路追踪

    购买时长

    如果您付费模式选择了包年包月模式,那么需要选择购买时长。您也可以选中到期自动续费功能,避免网关费用到期后无法使用。

    说明

    网关创建过程可能需要2~3分钟时间,请您耐心等待。

步骤二:关联服务来源

  1. 登录MSE网关管理控制台,并在顶部菜单栏选择地域。

  2. 在左侧导航栏,选择云原生网关 > 网关列表,单击目标网关名称。

  3. 在左侧导航栏,选择路由管理,然后选择来源页签。

  4. 单击创建来源。在创建来源面板,配置相关参数,然后单击确定

    支持容器服务MSE NacosMSE ZooKeeperSAE 内置注册中心EDAS 内置注册中心服务来源。

    当服务来源选择容器服务时,需配置以下参数:

    配置项

    说明

    ACK/ACK Serverless 集群

    选择后端服务所在的集群。

    说明

    您在创建网关时需要选择和后端集群相同的VPC,那么服务来源添加时会自动获取该VPC下的集群。

    监听K8s Ingress

    • 开启监听Ingress配置后,云原生网关会自动监听Ingress资源的变化,并使Ingress资源中域名、路由的相关配置生效。

    • 关闭监听Ingress配置后,云原生网关会放弃监听Ingress资源,并失效之前已监听的Ingress资源中的域名、路由相关配置,请您谨慎操作。

    重要

    通过管控手动配置的域名、路由的相关配置,其优先级高于Ingress资源。

    IngressClass

    监听关联指定IngressClass的Ingress资源。

    • 当配置成空值时,监听集群中所有的Ingress资源。

    • 当配置成具体值时(仅支持单个值,暂不支持批量配置),监听集群中带有class注解或者Spec.IngressClassName的值与配置值一致的Ingress资源。例如,当配置成nginx时,监听的Ingress资源包括:IngressClass为nginx或者未关联任何IngressClass的Ingress资源。

    监听命名空间

    监听指定命名空间的Ingress资源。

    • 当配置成空值时,监听集群中所有命名空间中的Ingress资源。

    • 当配置成具体值时(仅支持单个值,暂不支持批量配置),监听集群中指定命名空间中的Ingress资源。

    更新IngressStatus

    开启更新IngressStatus后,被监听的Ingress的Status中IP地址会被修改为云原生网关关联的SLB IP地址。

    说明

    网关版本为1.2.9及以上才能修改此行为。

    安全组授权

    容器集群的节点池上配置有安全组。通常情况下,集群外的组件要想访问到集群内的服务,就必须在安全组上开放服务所需的全部端口。

    您可以对安全组进行修改。具体操作,请参见设置安全组规则

    当服务来源选择MSE Nacos时,需配置以下参数:

    配置项

    说明

    Nacos 集群

    选择集群。

    说明

    只展示MCPEnabled = true的MSE Nacos实例,可在MSE Nacos参数设置中更改。

    当服务来源选MSE ZooKeeper时,需配置以下参数:

    配置项

    说明

    集群名称

    选择集群。

    当服务来源选择SAE 内置注册中心时,需配置以下参数:

    配置项

    说明

    命名空间

    选择服务部署在SAE的某个命名空间。

    服务分组

    若服务指定了特殊的服务分组,需要单击添加服务分组新增对应分组。

    当服务来源选择EDAS 内置注册中心时,需配置以下参数:

    配置项

    说明

    微服务空间

    选择服务部署在EDAS的某个微服务空间。

    服务分组

    若服务指定了特殊的服务分组,需要单击添加服务分组新增对应分组。

步骤三:添加服务

说明

建议您从服务来源添加服务,以便网关能够动态获取您的后端服务列表。

  1. 登录MSE网关管理控制台,并在顶部菜单栏选择地域。

  2. 在左侧导航栏选择云原生网关 > 网关列表

  3. 网关列表页面,单击目标网关名称。

  4. 在左侧导航栏,选择路由管理,然后选择服务页签。

  5. 单击创建服务。在创建服务面板,配置服务相关参数,然后单击确定

    说明
    • 容器服务添加服务:如果在网关中添加了容器服务作为服务来源,网关会从ACK/ACK Serverless集群获取服务列表,将服务列表中的服务及其后端节点地址添加到网关中。

    • 固定地址添加服务:如果该服务没有服务发现机制,需要手动添加服务的后端节点地址。

    • DNS 域名添加服务:云原生网关支持根据DNS解析的结果作为后端服务地址。

    • 服务来源选择容器服务时,需要配置以下配置项:

      配置项

      说明

      命名空间

      选中集群的命名空间。

      默认不展示arms-prom、kube-system和mse-pilot命名空间的服务。

      服务列表

      在服务列表中选择服务。

    • 服务来源选择MSE Nacos时,需要配置以下配置项:

      配置项

      说明

      命名空间

      选中集群的命名空间。

      服务列表

      在服务列表中选择服务。

      默认不展示以consumers开头的服务。

    • 服务来源选择MSE ZooKeeper时,需要配置以下配置项:

      配置项

      说明

      服务列表

      在服务列表中选择服务。

    • 服务来源选择EDAS 内置注册中心时,需要配置以下参数:

      配置项

      说明

      微服务空间

      选中服务所在微服务空间。

      服务列表

      在服务列表中选择服务。

    • 服务来源选择SAE 注册中心时,需要配置以下参数:

      配置项

      说明

      命名空间

      选中服务所在命名空间。

      服务列表

      在服务列表中选择服务。

    • 服务来源选择FC 函数计算时,需要配置以下配置项:

      配置项

      说明

      服务名称

      选择函数所在的服务名称。

      版本或别名

      选择函数所在的服务的版本或别名。

      函数列表

      在函数列表中选择函数。

    • 服务来源选择固定地址时,需要配置以下配置项:

      配置项

      说明

      服务名称

      自定义服务名称。

      服务地址

      服务的后端节点地址,不同来源的服务的后端节点有所不同,但格式均为<后端节点IP>:<服务端口>,多个节点通过换行分隔。

      TLS模式

      通过下拉框选择TLS模式。默认选择关闭TLS模式。

      • 关闭:访问服务时,无需开启TLS。

      • 单向TLS:需要使用HTTPS访问服务时开启单向TLS。

      • 双向TLS(mTLS):需要做双向认证时开启mTLS。

    • 服务来源选择DNS 域名时,需要配置以下配置项:

      配置项

      说明

      服务名称

      自定义服务名称。

      服务端口

      域名提供服务的端口。支持1~65535的任意端口。

      域名列表

      输入域名,例如:www.aliyun.com。多个域名通过换行分隔。

      TLS模式

      通过下拉框选择TLS模式。默认选择关闭TLS模式。

      • 关闭:访问服务时,无需开启TLS。

      • 单向TLS:需要使用HTTPS访问服务时开启单向TLS。

      • 双向TLS(mTLS):需要做双向认证时开启mTLS。

步骤四:为服务配置路由规则

  1. 登录MSE网关管理控制台,并在顶部菜单栏选择地域。

  2. 在左侧导航栏,选择云原生网关 > 网关列表,单击目标网关名称。

  3. 在左侧导航栏,单击路由管理,然后在路由页签单击创建路由

  4. 创建路由页面,配置相关配置项,然后单击保存

    说明
    • 匹配规则之间是“与”关系,即填写的规则越多匹配的范围越小。

    • 路由之间匹配的优先级与路由配置页面展示排列顺序一致。

    配置项

    描述

    路由名称

    自定义路由名称。您还可以单击添加描述对路由进行说明。

    域名

    选择在路由需要匹配的域名,支持选择多个域名。

    如果您需要创建新的域名,可以直接单击创建域名,在面板中进行创建。

    匹配规则

    路径(Path)

    设置匹配HTTP请求中的Path参数。

    • 相同匹配规则时Path越长优先级越高。

    • 不同匹配规则时等于 > 前缀是 > 正则匹配

      • 等于:即完全匹配。例如,Path等于/user

      • 前缀是:以前缀作为匹配条件。例如,Path以/user开头。

      • 正则匹配:以正则表达式作为匹配条件。

    方法(Method)

    设置匹配HTTP请求中的Method参数。支持选择多种HTTP方法,默认为ANY。

    请求头(Header)

    设置匹配HTTP请求中的Header参数,相同匹配规则时参数越多优先级越高。

    请求参数(Query)

    设置匹配HTTP请求中的Query参数,相同匹配规则时参数越多优先级越高。

    使用场景

    选择当前路由的目标服务类型。

    • 基础场景:单服务

    • 灰度场景:多服务标签路由

    • 其他场景:Mock重定向

    关于目标服务不同类型说明,请参见路由方式概述

    说明

    涉及权重的目标服务流量比例总和要求为100%。

    后端服务

    选择已关联的后端服务和端口。

    说明
    • 您可以单击关联服务,在面板选择来源和服务。

    • 不同的来源类型允许添加的来源数量有不同的限制。

      • 容器服务不得超过5个。

      • Nacos和Zookeeper只能添加一个。

      • EDAS和SAE不限。

    Fallback

    设置Fallback服务,您需要选择指定的服务。当路由指向的后端服务没有可用节点时,原请求会访问此处指定的Fallback服务。

    说明

    目前仅支持HTTP服务之间的Fallback能力。

    超时时间(秒)

    输入超时时间。默认为60秒。如果为0,则表示永不超时。

    重试次数(次)

    输入重试次数。默认为2次。如果为 0,则表示禁用重试。

    重试条件

    选择重试条件。

    重试状态码

    添加重试状态码,可添加多个。

后续步骤

完成上述步骤后,您就为部署在容器服务ACK中的微服务开启了云原生网关管理。登录MSE管理控制台,即可使用MSE云原生网关对您的应用进行服务管理。您还可以通过云原生网关体验请求测试、检查监控、配置报警、调试策略、集成鉴权等能力,请参见云原生网关进阶体验

  • 本页导读 (1)
文档反馈