SpringCloud应用通过SpringCloudHuawei SDK接入ServiceComb引擎
本章节通过一个demo进行全流程的ServiceComb引擎使用操作演示,帮助您快速了解如何使用ServiceComb引擎。
本章节将使用一个provider服务和一个consumer服务接入ServiceComb引擎。
前提条件
- 已创建ServiceComb引擎,请参考快速创建ServiceComb引擎。
- 下载github的demo源码到本地并解压。
该demo的配置文件中已经完成了集成Spring Cloud Huawei的配置操作,若您需了解详细配置信息,请参考Spring Cloud接入ServiceComb引擎。
- 本地编译构建打包机器环境已安装了Java JDK、Maven,并且能够访问Maven中央库。
操作步骤
- 登录微服务引擎控制台。
- 登录华为云控制台。
- 单击,选择区域。
- 单击左上角,在服务列表选择“微服务引擎 CSE”,进入微服务引擎控制台。
- 在左侧导航栏选择“ServiceComb引擎专享版”。
- 单击前提条件中创建的ServiceComb引擎。
- 获取ServiceComb引擎的注册中心地址和配置中心地址。
在“服务发现 & 配置”区域,查看获取引擎服务注册发现地址和配置中心地址。
- 修改demo中的注册中心地址和配置中心地址。
- 在下载到本地的demo源码目录下,分别找到“\basic\consumer\src\main\resources\bootstrap.yml”和“\basic\provider\src\main\resources\bootstrap.yml”文件。
- 添加ServiceComb引擎的注册中心地址和配置中心地址到项目配置文件中(以“\basic\consumer\src\main\resources\bootstrap.yml”为例)。
spring: application: name: basic-consumer cloud: servicecomb: discovery: enabled: true watch: false # 注册中心地址 address: https://192.168.0.210:30100,https://192.168.0.246:30100 appName: basic-application serviceName: ${spring.application.name} version: 0.0.1 healthCheckInterval: 30 config: # 配置中心地址 serverType: kie serverAddr: https://192.168.0.210:30110,https://192.168.0.246:30110
使用ServiceStage部署的场景,服务注册中心地址和配置中心地址在部署过程中会自动注入,无需额外手工添加。
- 打包demo源码成jar包。
- 在demo源码根目录下,打开cmd命令,执行mvn clean package命令,对项目进行打包编译。
- 编译成功后,生成如表1所示的两个Jar包。
- 部署应用。
- 方法一:直接将微服务provider和consumer部署至ServiceComb引擎所在VPC的ECS节点。
- 请参考购买并登录Linux弹性云服务器在引擎实例所属VPC下创建一台ECS节点并登录。
- 安装JRE,为服务提供运行环境。
- 将6生成JAR包上传至ECS节点。
- 执行命令:java -jar {对应jar包},运行生成的JAR包。
- 方法二:使用ServiceStage部署微服务provider和consumer。
- 将6生成的JAR包上传至OBS。
- 参考快速创建Kubernetes集群创建CCE集群,并同ServiceComb引擎实例属于同一VPC。
- 参考创建环境在引擎实例所在VPC下创建ServiceStage环境,并对ServiceComb引擎和CCE资源进行纳管。
- 参考创建并部署组件部署provider和consumer微服务。
- 方法一:直接将微服务provider和consumer部署至ServiceComb引擎所在VPC的ECS节点。
- 确认部署结果。
- 可选:在微服务引擎控制台页面,在左侧导航栏选择“ServiceComb引擎专享版”,单击前提条件中创建的ServiceComb引擎。
- 选择
- 若实例数量值不为0,则表示已经成功接入ServiceComb引擎。
- 若实例数量为0,或者找不到basic-consumer和basic-provider服务名,则表示微服务应用接入ServiceComb引擎失败。
,查看微服务basic-consumer和basic-provider的实例数量。