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