前置条件
创建VPCE
使用微服务治理中心前,需要在目标VPC中创建终端节点。创建路径:微服务治理中心控制台->应用治理->应用接入->云容器引擎->前置条件->创建终端节点。
进入应用接入页面。
点击创建终端节点。
选择需要接入微服务治理中心的VPC,并打开私网域名开关,然后点击下一步并确认下单。
完成创建后,刷新应用接入->云容器引擎页面,显示VPC的终端节点状态为已创建。
部署Demo
Demo介绍
该Demo快速体验服务治理中心,可体验应用详情、接口详情、流量治理、流量防护等主要功能,提供以spring boot为框架的simple-demo单体web应用,和以spring cloud、feign和nacos为框架的微服务架构应用app-a、app-b和app-c ,方便用户快速体验微服务治理能力。(spring boot应用:推荐CPU1C以上,内存1024以上,spring cloud应用:推荐CPU2C以上,内存2048以上)。
- simple-demo使用为快速上手demo,使用spring boot启动接入服务治理。
应用名 | 服务框架版本 | 涉及组件 |
---|---|---|
simple-demo | spring boot 2.7.17 | spring boot 2.7.17 |
- spring-cloud-demo中app-a、app-b和app-c使用Nacos作为注册中心,Zuul作为网关,Demo的默认调用配置为A->B->C,其中A,B,C均有灰度版本。
应用名 | 服务框架版本 | 涉及组件 |
---|---|---|
zuul | spring boot 2.7.17 | spring boot 2.7.17 |
app-a | Spring Cloud2.2.8 | openfeign/nacos |
app-b | Spring Cloud2.2.8 | openfeign/nacos |
app-c | Spring Cloud2.2.8 | openfeign/nacos |
Demo下载
- Demo下载地址:微服务治理中心控制台->应用治理->应用接入->云容器引擎 15分钟快速体验导航。
- ctyun-mse-demo.tar.gz项目介绍。
quickstart文件夹 :提供simple-demo、app-a、app-b、app-c和zuul的启动jar包和一键启动脚本,简单配置即可快速接入微服务治理中心。
springcloud文件夹 :app-a、app-b和app-c的项目源码。
simple-demo文件夹 :simple-demo的项目源码。
Demo镜像打包
demo镜像制作并上传云容器引擎镜像仓库。(需提前制作jdk镜像包)
-
通过jar文件和dockerfile文件制作镜像。
FROM jdk8 ADD ./app-a.jar /usr/local WORKDIR /usr/local RUN cd /usr/local && ls CMD [“java”, “-jar”, “/usr/local/app-a.jar”]
-
通过容器镜像服务创建镜像仓库,镜像服务->实例列表->镜像仓库->创建仓库
进入云容器引擎控制台,点击容器镜像服务。
在实例列表页面,选择容器镜像服务实例。
进入镜像仓库菜单,点击创建仓库。
选择命名空间,设置仓库名称,点击创建。
- demo上传至云容器引擎镜像仓库。
- 执行docker build -f ./Dockerfile-a -t msgc-app-a:1.1 .命令,构建demo镜像。
docker build -f ./Dockerfile-a -t msgc-app-a:1.1 .
- 登录容器镜像服务实例。
docker login --username={user} registry-crs-{regionCode}.ctyun.cn
- 推送镜像。
docker tag <ImageId> registry-vpc-crs-{regionCode}.ctyun.cn/msgc-test/<镜像名>:<版本号>
docker push registry-vpc-crs-{regionCode}.ctyun.cn/msgc-test/<镜像名>:<版本号>
Demo部署
云容器引擎部署demo
- 新增部署应用,进入云容器引擎控制台,选择目标集群,点击工作负载->无状态->创建Deployment。
- 镜像添加,在“镜像”中“选择镜像”然后选择上传的demo镜像image-test/{镜像名}。
- 配置CPU/内存限制。
- 配置环境。在“环境变量下”,新增变量添加环境配置 。
spring.cloud.nacos.discovery.server-addr:nacos服务地址
spring.cloud.nacos.discovery.username:nacos用户名
spring.cloud.nacos.discovery.password:nacos密码
spring.cloud.nacos.discovery.namespace:nacos命名空间
为应用开启微服务治理能力
- 在Deployment编辑页,点击“显示高级设置”,新增“Pod标签”:mseCubeMsAutoEnable:on。
标签名 | 标签值 |
---|---|
mseCubeMsAutoEnable | on |
- 在发布应用时,配置指定环境变量,可指定注入微服务治理中心的应用名、命名空间和标签等信息。
环境变量配置如下:
标签名 | 标签值 |
---|---|
MSE_APP_NAME | 接入到微服务治理中心的应用名。 |
MSE_NAMESPACE(选填) | 接入到微服务治理中心的命名空间,默认为:default。 |
- 完成编辑后点击“提交”,发布到容器即可。
验证应用已经接入MSE
查看应用治理或者网关治理,确认您的应用已经接入到微服务治理中心。