单元化部署(操作指南)

最近更新时间: 2024-10-17 17:10:00

操作场景

该任务指导您在 TSF 控制台上创建单元化规则并使用单元化功能。

操作步骤

步骤一:部署微服务网关

  1. 登录 【TSF 控制台】 ,在左侧导航栏单击【应用管理】。

  2. 在应用管理页面,单击【新建应用】,填写应用名、部署方式和应用类型。 应用类型选择微服务网关应用

  3. 单击【提交】,在弹出的提醒框中选择【确认】,跳转至【上传程序包】页面。

  4. 在【上传程序包】页面,单击【上传程序包】。 微服务网关 Demo 程序包 GitHub 地址,相关操作请参考 【微服务网关开发】。

注意:

  • 微服务网关兼具灵活性和便捷性。当用户仅需要使用请求转发、密钥对鉴权、服务治理等 TSF 已经提供的产品能力时,您仅需要使用 TSF-demo 中的 msgw - demo 程序包即可,可以选择其中的 msgw - zuul 以及 msgw - scg 来分别部署基于 Zuul 和基于 Spring Cloud Gateway 的微服务网关。
  • 当您希望定制化微服务网关的转发逻辑,您可以选择自行开发微服务网关,并依赖 TSF 的网关 SDK 来进行开发。
  • 直接使用开源的微服务网关(Demo 中的 opensource 版本)会导致 TSF 产品页面中的网关功能不可用。不建议您使用开源版本的微服务网关。
  1. 单击页面上方的【部署组】,进入部署组页面,单击【新建部署组】。

注意:

单元化部署仅支持部署在全局命名空间的网关。

  1. 部署成功后,您可以在【微服务网关】>【网关管理】查看微服务网关。

步骤二:启用单元化部署并创建单元范围

新建好的网关默认状态是不支持单元化部署,需要手动开启单元化部署功能。

  1. 在【网关管理】界面,单击目标网关的ID/名称,进入【基本信息】页面。

  2. 在【单元化配置】模块,点击右上角的【编辑】,开启单元化部署功能。

注意:

切换单元化部署状态,当前网关下分组、分组下API以及插件配置都将被清除,请谨慎操作。

  1. 进入【单元范围】页面,点击【关联命名空间】,将命名空间添加到单元范围中。

注意:

  • 同一个普通命名空间只能添加到一个单元范围中,不可重复添加。
  • 同一单元范围中最多可添加200个命名空间。

步骤三:创建单元化规则

单元化部署场景下通过微服务网关访问微服务路径为 微服务网关域名或 IP/分组 context/微服务名称/api。请求将依据单元化流量划分规则选择目的地命名空间。

  1. 在【单元化规则】页面,单击【新建规则】,填写规则信息,创建单元化规则。

注意:

1条单元化规则最多可添加16个标识配置。

  1. 在单元化规则列表,单击目标规则状态栏按钮,使其生效。

注意:

  • 一个网关下可创建多条单元化规则,但同时只能有一条规则生效,当一条规则生效时,其他正在生效的规则将默认关闭。
  • 已生效的规则不能删除,关闭后才能删除。

步骤四:创建分组并导入 API

  1. 在【分组管理】页面,单击【新建分组】,填写分组信息。
  • 分组名称: 最长为60个字符,只能包含小写字母、数字及分隔符(_-),且不能以分隔符开头或结尾。

  • 访问 context:context 是用户访问网关管理的某一个 API 的路径的路径参数。以“/”开头,不能为空。

  • 托管 API 类型:选择微服务API,单元化部署场景不支持托管外部API。

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

  1. 单击【保存&下一步】,将分组与微服务网关应用的部署组进行绑定。

注意:

  • 当微服务网关作为微服务内部调用网关时,建议绑定微服务下全部部署组。当微服务网关作为外部与微服务间调用的外部网关时,可以选择将某个分组与某个或全部部署组绑定,通过访问部署组域名或IP来访问网关托管的API。
  • 只有将网关应用的部署组与分组绑定后,才能保证访问部署组 IP 后与对应 API path 访问畅通。
  • 此处分组绑定的部署组是微服务网关应用的部署组,也就是用作部署网关的节点所在的部署组。并非后端微服务的部署组。
  • 单个微服务网关部署组不能绑定多个 context 相同的分组。
  1. 在【API管理】页面,选择目标分组,单击【导入API】,选择需要导入API的命名空间和微服务,将API导入分组。

注意:

单元部署化场景下,只需要导入单元组中一个命名空间中的API,单元组中的其他命名空间的API将同时被导入。例如上图中导入命名空间shenzhen中的API,则单元组中其他命名空间如shanghai、chongqing、guangzhou等中的API将被自动导入分组。

  1. 在【分组管理】页面,选择目标分组操作栏的【发布分组】。
  • 当且仅当分组被发布时,才能通过微服务网关访问微服务 API。

  • 如果某一个分组不想被访问,可以单击操作列的【下线分组】,将分组下线。

步骤五:调试 API

  1. 在【API管理】页面,选择目标分组,单击需要调试的 API 路径,进入 API 详情页。

  2. 在 API 详情页,单击上方【调试】页签后,选择右上角【调试】,进入API调试详情页。

  3. 在 API 调试详情页,填写调用 API 的默认参数,单击【发送请求】,在页面右方可看到调用 API 返回结果,结果正常即成功。

  4. 在控制台导航树选择【依赖分析】>【调用链查询】,输入刚刚调用API的查询条件,单击【查询】。

  5. 根据查询结果,可以单击【TraceID】进入具体业务,查看调用链详情。