微服务网关作为请求入口

最近更新时间: 2024-09-05 15:09:00

操作场景

TSF 提供了微服务网关 SDK,并封装了限流、密钥对鉴权、第三方鉴权、设置访问标签等功能,方便您在界面上管理微服务 API。您需要自行准备计算资源(虚拟机或容器),将微服务网关部署、并导入微服务 API。

操作步骤

步骤1:部署微服务网关

  1. 创建微服务网关应用 登录 【TSF 控制台】,在左侧导航栏单击【应用管理】,并新建应用,应用类型选择微服务网关应用。

  1. 部署微服务网关应用。

  2. 在微服务网关应用详情页,单击顶部【程序包管理】>【上传程序包】。 我们使用不包含任何自定义过滤器的 【微服务网关 Demo】 ,将文件中 msgw - demo 进行打包和上传。

  3. 单击顶部【部署组】>【新建部署组】,将网关部署在希望对外暴露微服务 API 的微服务所在的命名空间中

注意:

提供的 Demo 端口默认为8080,可通过启动参数进行调整。

步骤2:通过微服务网关托管微服务 API

  1. 在 【TSF 控制台】 的左侧导航栏中,单击组建中心下的【微服务网关】>【分组管理】。

  2. 在分组管理页,单击【新建分组】,并填写分组信息。

  • 分组名称:最长为60个字符,只能包含小写字母、数字及分隔符("_"、"-"),且不能以分隔符开头或结尾。

    • 访问 context:context 是访问网关管理的某一个 API 的路径的路径参数。以“/”开头,不能为空。在这个例子中,添加为 /myfirsttest

    • 鉴权类型:密钥对鉴权或免鉴权。当选择密钥对鉴权时,请求参数中不带正确的 SecretId 和签名的访问会被拒绝。

  1. 单击【保存&下一步】,进行网关部署组绑定。

  2. 将分组与步骤1中创建的微服务网关应用的部署组进行绑定。

注意:

此处绑定的是创建的微服务网关应用的部署组,而不是需要对外暴露接口的微服务的部署组。

  1. 在【API 列表】中,单击【导入 API】,选择对外暴露的微服务下的 API,完成后单击【提交】。

  1. 返回分布管理列表,单击操作列的【发布分组】。发布之后,即可通过访问微服务网关的部署组 + 分组下的 API 访问路径进行访问。

步骤3:设置 API 限流策略

  1. 在 【TSF 控制台】 的左侧导航栏中,单击组建中心下的【微服务网关】>【分组管理】,查看分组详情中 API 列表页面。

  2. 为已经导入的 API 设置限流。

说明与注意

访问路径相关说明

微服务网关访问路径为:微服务网关域名或 IP +port / 分组 contxt / 微服务所在命名空间 / 微服务名称/API path

示例:创建一个应用类型为微服务网关的应用,部署组中节点 IP 为 10.10.10.10,端口为8080,需要访问命名空间为 default 的微服务 provider,API 路径为/echo,为此创建了一个访问路径为 test 的分组。此时应用的访问路径为 10.10.10.10:8080/test/default/provider/echo

其中,微服务网关的默认端口为8080,您可以通过修改启动参数对网关默认端口进行修改。

为微服务网关所在的部署组配置对外 VIP 的说明

  • 当微服务网关部署在虚拟机上时,您可以将微服务网关所在的部署组的机器挂载在负载均衡实例后面。

  • 当微服务网关部署在容器上时,且需要将微服务 API 暴露在公网访问,则在新建容器部署组时,选择公网访问方式。