部署Spring Cloud应用
本章节使用spring-cloud-registry-demo演示Spring Cloud应用如何接入ServiceComb引擎。
本章节将使用一个provider服务和一个consumer服务接入ServiceComb引擎。
前提条件
- 已创建云容器引擎(CCE),创建CCE请参考创建CCE集群。
- CCE集群版本需要大于等于1.15。
- 已安装kubectl命令,安装kubectl命令请参考通过kubectl连接集群中相关操作。
- 已创建ServiceComb引擎实例,详情请参考创建ServiceComb引擎。
- CCE与ServiceComb引擎处于相同的VPC网络下。
- 下载Sermant-examples到本地并解压。
- 本地编译构建打包机器环境已安装了Java JDK、Maven,并且能够访问Maven中央库。
- 已在CCE集群上部署Sermant Injector,详情请参考通过模板管理页面部署Sermant Injector将应用接入ServiceComb引擎或者通过Helm客户端部署Sermant Injector。
部署Spring Cloud应用
- 打包Sermant-examples。
- 在“Sermant-examples”根目录下,打开cmd命令,执行mvn clean package命令,对项目进行打包编译。编译成功后,获取下表中的两个软件包。
表1 软件包列表 软件包所在目录
软件包名称
说明
Sermant-examples/registry-demo/spring-cloud-registry-demo/spring-cloud-registry-consumer/target
spring-cloud-registry-consumer.jar
服务消费者
Sermant-examples/registry-demo/spring-cloud-registry-demo/spring-cloud-registry-provider/target
spring-cloud-registry-provider.jar
服务生产者
- 把spring-cloud-registry-consumer.jar复制到“Sermant-examples/registry-demo/spring-cloud-registry-demo/deployment/images/consumer”中。
- 把spring-cloud-registry-provider.jar复制到“Sermant-examples/registry-demo/spring-cloud-registry-demo/deployment/images/provider”中。
- 在“Sermant-examples”根目录下,打开cmd命令,执行mvn clean package命令,对项目进行打包编译。编译成功后,获取下表中的两个软件包。
- 制作镜像。
- 登录已安装kubectl命令且已部署Sermant Injector的CCE集群中的节点。
- 把“Sermant-examples/registry-demo/spring-cloud-registry-demo”中的“deployment”文件夹上传至已登录的CCE集群中的节点上。
- 请参考使用容器引擎客户端上传镜像制作docker镜像,其中,使用到的Dockerfile请参考“Sermant-examples/registry-demo/spring-cloud-registry-demo/deployment/images/consumer”与“Sermant-examples/registry-demo/spring-cloud-registry-demo/deployment/images/provider”目录下的Dockerfile文件按需修改。
- 部署spring-cloud-registry-consumer.yaml与spring-cloud-registry-provider.yaml。
- 修改镜像名。
将已上传deployment文件夹到CCE集群中的节点中的“deployment/k8s/spring-cloud-registry-consumer.yaml“与“deployment/k8s/spring-cloud-registry-provider.yaml“中的镜像名修改为您所制作的镜像名。
- 在已上传deployment文件夹到CCE集群中的节点中的“deployment/k8s“目录下,执行如下命令部署spring-cloud-registry-consumer.yaml与spring-cloud-registry-provider.yaml:
kubectl create -f spring-cloud-registry-consumer.yaml
kubectl create -f spring-cloud-registry-provider.yaml
若需配置APP名称(默认default)、版本(形如a.b.c的格式,其中a、b、c均为数字,默认为1.0.0)请在yaml中增加SERVICE_META_APPLICATION与SERVICE_META_VERSION环境变量进行配置。如下所示:
- 修改镜像名。
- 验证应用接入ServiceComb引擎。
参考查看微服务列表查看应用(服务名为spring-cloud-registry-consumer与spring-cloud-registry-provider)是否已接入ServiceComb引擎。