微服务网关作为请求入口
最近更新时间: 2024-10-17 17:10:00
操作场景
TSF 提供了微服务网关 SDK,并封装了限流、密钥对鉴权、第三方鉴权、设置访问标签等功能,方便您在界面上管理微服务 API。您需要自行准备计算资源(虚拟机或容器),将微服务网关部署、并导入微服务 API。
操作步骤
步骤1:部署微服务网关
- 创建微服务网关应用 登录 【TSF 控制台】,在左侧导航栏单击【应用管理】,并新建应用,应用类型选择微服务网关应用。
部署微服务网关应用。
在微服务网关应用详情页,单击顶部【程序包管理】>【上传程序包】。 我们使用不包含任何自定义过滤器的 【微服务网关 Demo】 ,将文件中 msgw - demo 进行打包和上传。
单击顶部【部署组】>【新建部署组】,将网关部署在希望对外暴露微服务 API 的微服务所在的命名空间中
注意:
提供的 Demo 端口默认为8080,可通过启动参数进行调整。
步骤2:通过微服务网关托管微服务 API
在 【TSF 控制台】 的左侧导航栏中,单击组建中心下的【微服务网关】>【分组管理】。
在分组管理页,单击【新建分组】,并填写分组信息。
分组名称:最长为60个字符,只能包含小写字母、数字及分隔符("_"、"-"),且不能以分隔符开头或结尾。
访问 context:context 是访问网关管理的某一个 API 的路径的路径参数。以“/”开头,不能为空。在这个例子中,添加为
/myfirsttest
。鉴权类型:密钥对鉴权或免鉴权。当选择密钥对鉴权时,请求参数中不带正确的 SecretId 和签名的访问会被拒绝。
单击【保存&下一步】,进行网关部署组绑定。
将分组与步骤1中创建的微服务网关应用的部署组进行绑定。
注意:
此处绑定的是创建的微服务网关应用的部署组,而不是需要对外暴露接口的微服务的部署组。
- 在【API 列表】中,单击【导入 API】,选择对外暴露的微服务下的 API,完成后单击【提交】。
- 返回分布管理列表,单击操作列的【发布分组】。发布之后,即可通过访问微服务网关的部署组 + 分组下的 API 访问路径进行访问。
步骤3:设置 API 限流策略
在 【TSF 控制台】 的左侧导航栏中,单击组建中心下的【微服务网关】>【分组管理】,查看分组详情中 API 列表页面。
为已经导入的 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 暴露在公网访问,则在新建容器部署组时,选择公网访问方式。