云原生网关入门体验

更新时间: 2023-09-25 15:16:24

您可以为微服务创建一个云原生网关,通过从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. 在云原生网关购买页面中选择相关配置,然后单击立即购买

    创建网关.png
    云原生网关参数配置说明。

    参数

    描述

    付费模式

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

    地域

    选择网关的开服地域。

    网关名称

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

    网关引擎规格

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

    网关节点数

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

    说明

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

    资源组

    选择资源组。

    专有网络

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

    交换机位置

    选择交换机位置。

    可用区

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

    交换机选择

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

    公网SLB规格

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

    私网SLB规格

    选择VPC内的私网IP地址。

    安全组类型

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

    硬件加速

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

    说明

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

    监控告警

    网关默认为您开通ARMS Prometheus功能,收集网关指标和日志,提供监控大盘和告警管理,该功能不收费。

    日志服务

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

    链路追踪

    选中使用链路追踪(Tracing Analysis),为您开通阿里云链路追踪服务TracingAnalysis并开启网关链路追踪功能。相关内容,请参见开启网关链路追踪

    购买时长

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

    说明

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

步骤二:关联服务来源

  1. 登录MSE网关管理控制台

  2. 在顶部菜单栏选择地域。

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

  4. 在左侧导航栏,选择服务管理 > 来源管理

  5. 来源管理页面,单击创建来源

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

    配置项

    说明

    来源类型

    支持容器服务MSE NacosMSE ZooKeeperEDAS 注册中心SAE 注册中心服务来源。

    当服务来源选择容器服务时,需配置以下参数(目前仅支持对含有Ingress监听配置的ACK容器服务进行编辑操作):

    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 NacosMSE ZooKeeper时,需配置以下参数:

    集群名称

    选择集群。

    注册类型

    选择集群后,注册类型自动生成。

    注册地址

    选择集群后,注册地址自动生成。

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

    微服务空间

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

    服务分组

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

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

    命名空间

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

    服务分组

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

步骤三:添加服务

说明

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

  1. 登录MSE网关管理控制台

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

  3. 在左侧导航栏,选择服务管理 > 服务列表

  4. 服务列表页面左上角,单击创建服务。在创建服务面板,配置服务相关参数,然后单击确定

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

  1. 登录MSE网关管理控制台

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

  3. 在左侧导航栏,单击路由管理>路由配置,然后在页面左上角单击创建路由

  4. 创建路由面板设置路由相关配置项,然后单击下一步

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

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

    配置项

    描述

    路由名称

    自定义路由名称。

    关联域名

    选择在域名管理中创建的域名,支持选择多个域名。

    匹配规则

    路径(Path)

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

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

    • 不同匹配规则时精确匹配 > 前缀匹配 > 正则匹配

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

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

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

    方法(Method)

    设置匹配HTTP请求中的Method参数,不填表示匹配所有参数,支持选择多种HTTP方法。

    请求头(Header)

    设置匹配HTTP请求中的Header参数,相同匹配规则时参数越多优先级越高。单击请求头进行添加。

    请求参数(Query)

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

  5. 填写目标服务,然后单击保存并上线

后续步骤

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

阿里云首页 微服务引擎 MSE 相关技术圈