操作场景
本文以虚拟机应用为例,指导您通过 TSF 控制台,创建并部署 Mesh 应用、查看服务是否注册成功、验证服务调用。
准备工作
1. 下载 TSF 提供的 Python Mesh Demo(vm)。
2. 解压 Demo 压缩包,解压出三个压缩包分别为
promotionService.tar.gz
、shopService.tar.gz
、userService.tar.gz
(不需要再解压)。3. 在 TSF 控制台上已创虚拟机集群并导入云主机,参见 集群管理。
4. 主机上已安装应用运行的环境(如 Python 应用的相关依赖等,TSF 对相关依赖的版本没有限制)。
操作步骤
步骤1:创建并部署 Mesh 应用
1. 创建应用
1.1 登录 TSF 控制台。
1.2 在左侧导航栏单击应用管理,进入应用管理列表页。
1.3 在应用列表页,单击新建应用,并填写以下信息:
应用名:填写应用名称
部署方式:选择 虚拟机部署。
业务类型:选择 业务应用。
开发语言:选择 其他语言。
开发框架:选择 其他框架。
应用类型:选择 Mesh 应用。
服务配置:可以选择使用本地Spec.yaml(默认方式)或者控制台配置。
若选择控制台配置,需要填写以下信息:
服务名:最长60个字符,只能包含字母、数字和分隔符(“-”),且不能以分隔符开头或结尾。
监听端口:只有1个(接口使用数组类型)。协议:HTTP/HTTP2/gRPC/Dubbo;端口范围 1~65535。
心跳检查接口:校验逻辑,以 / 开头。不超过200个字符。
标签:选择已有标签或者前往标签管理创建。
1.4 单击提交,完成应用创建。
2. 上传程序包
1.1 在左侧导航栏单击应用管理,选择某一应用的ID/应用名,进入应用服务详情页。
1.2 在应用服务详情页单击程序包管理标签页,单击上传程序包,选择程序包(如
promotionService.tar.gz
),填写程序包相关信息。1.3 单击提交,完成上传。
3. 部署应用
1.1 在应用列表中,单击在 步骤1:新建应用 中创建的应用的 “ID”。
1.2 在新建部署组页面,填写部署组信息。
组名:部署组的名称,不超过60个字符。
集群:选择提前创建好的集群。
命名空间:选择集群关联的默认命名空间。
日志配置项:应用的日志配置项用于指定 TSF 采集应用的日志路径。此处可选择无。参见 日志服务。
日志投递:用于日志转储,此处可选择无。关于日志投递的详情说明可参见 日志投递。
标签:用于分类管理资源,可不选。详情参见 标签。
备注:选填,可留空。
1.3 单击保存&下一步,从关联集群的可用云主机列表勾选用于部署的云主机。
1.4 单击部署应用,设置部署信息。
软件仓库:选择默认仓库。
程序包类型:选择 zip/tar.gz。
JDK 版本:选择 JDK 版本。
程序包类型:选择程序包名称为
userService.tar.gz
的程序包。启动参数:选填。
更新方式:选择立即更新。
健康检查:可选。详情参见 健康检查。
描述:可选。
1.5 单击完成,应用部署成功后,部署组中已启动/总机器数的数值发生变化。
步骤2:查看服务是否注册成功
1.1 在左侧导航栏单击 服务治理,进入服务列表页,查看服务是否注册成功。如果成功,服务显示在线状态。
1.2 在服务列表页单击服务 ID,进入服务详情页。单击API 列表标签页,可以查看上报的 API 定义。
步骤3:验证服务调用
使用同样的步骤部署 user、shop 和 promotion 三个应用。user、shop、promotion 三个服务的接口间调用关系如下:
用户可以登录虚拟机集群 VPC 下的任一机器,然后通过
curl
命令验证 user 服务是否健康,以及触发 user 服务调用 shop 和 promotion 服务。1. 登录服务器验证服务间调用
为了验证 user 服务能通过服务名来调用 shop 服务,需要用户通过以下几种方式来触发 user 服务的接口调用:
登录 user 所在云服务器,执行如下
curl
命令调用 user 服务接口。curl localhost:<user端口>/api/v6/user/account/query
登录 user 所在云服务器,执行如下
curl
命令调用 shop 服务接口(注意使用服务名来调用)。curl shop:<shop端口>/api/v6/shop/order
API 网关:用户可以通过在 API 网关配置微服务 API 来调用 user 服务的接口。关于如何配置微服务 API 网关,请参见文档 API 网关作为请求入口。
2. 在控制台验证服务之间是否调用
可以通过以下两种方式验证服务是否成功被 Sidecar 代理注册到注册中心,同时服务之间是否成功地进行了调用。
服务治理界面:选择集群和命名空间后,如果服务列表中的服务状态为在线或单点在线,表示服务被代理注册成功。如果服务提供者的请求量大于0,表示服务提供者被服务消费者请求成功。
依赖拓扑界面:选择集群和命名空间后,调整时间范围,使其覆盖服务运行期间的时间范围,正常情况下,将出现服务之间相互依赖的界面。