文档首页/ 微服务引擎 CSE/ 快速入门/ Spring Cloud应用通过Spring Cloud SDK接入Nacos引擎
更新时间:2024-09-26 GMT+08:00

Spring Cloud应用通过Spring Cloud SDK接入Nacos引擎

本章节通过一个demo进行全流程的微服务应用接入Nacos引擎操作演示,帮助您快速了解如何接入Nacos引擎。

  1. 准备工作

    您需要完成注册华为云并实名认证、为账户充值、为用户添加操作权限、创建VPC和子网、获取demo包及准备好本地编译构建打包环境准备工作。

  2. 创建注册配置中心

    在创建引擎时,您可以根据实际业务需要,选择合适的引擎规格、可用区和网络等。

  3. Spring Cloud应用接入Nacos引擎

    本指导将使用一个provider服务和一个consumer服务接入Nacos引擎。

准备工作

  1. 注册华为云并实名认证。
    如果您已有一个华为账户,请跳到下一个任务。如果您还没有华为账户,请参考以下步骤创建。
    1. 打开华为云官网,单击“注册”。
    2. 根据提示信息完成注册,详细操作请参见如何注册华为云管理控制台的用户?

      注册成功后,系统会自动跳转至您的个人信息界面。

    3. 参考实名认证完成个人或企业账号实名认证。

      仅在购买或使用位于中国大陆区域的资源时,需要实名认证。

  2. 为账户充值。

    您需要确保账户有足够金额。

  3. 为用户添加操作权限。

    用户在创建依赖资源和Nacos引擎前,需要具备相应的操作权限。添加用户权限的操作,请参考创建用户并授权使用微服务引擎

    创建注册配置中心需要保证用户具有CSE FullAccess、DNS FullAccess权限。

  4. 创建VPC和子网。

    Nacos引擎运行于虚拟私有云(VPC)中,并需要绑定具体的子网。创建Nacos引擎前,需保证有可用的虚拟私有云和子网。创建虚拟私有云和子网的方法,请参考创建虚拟私有云和子网。如果已有可用的VPC和子网,不需要再次创建。

  5. 本地编译构建打包机器环境已安装了Java JDK、Maven,并且能够访问Maven中央库。
  6. 下载github的demo源码到本地并解压。

创建注册配置中心

  1. 进入购买注册配置中心页面。
  2. 左侧导航栏选择“注册配置中心”。
  3. 在注册配置中心页面,单击“购买注册配置中心”。
  4. 参考下表设置参数,参数前面带*号的是必须设置的参数。创建注册配置中心所需参数的详细介绍请参考创建注册配置中心

    表1 创建注册配置中心参数

    参数

    说明

    *计费模式

    选择计费方式,目前支持“按需计费”。按需计费是一种后付费模式,即先使用再付费,按照注册配置中心实际使用时长计费。

    *企业项目

    选择注册配置中心Nacos所在的企业项目。企业项目是一种云资源管理方式,企业项目管理服务提供统一的云资源按项目管理,以及项目内的资源管理、成员管理。此处默认选择“default”。

    *引擎名称

    输入Nacos引擎的名称,名称以字母开头,由字母、数字和-组成,且不能以-结尾,长度为3~64个字符。如输入nacos-test。

    *注册配置中心类型

    支持的注册配置中心类型为“Nacos”。

    说明:

    注册配置中心集群的节点会尽可能均分到不同的可用区中,单节点故障不影响对外业务功能。注册配置中心不支持AZ级故障的容灾,可提供主机级别容灾能力。

    *选择实例数

    选择需要购买的容量规格。此处选择实例数为500,其容量单元为10。

    版本

    只能创建最新版本。

    *网络

    选择已创建的虚拟私有云及子网,可在下拉框中搜索和选择合适的虚拟私有云和子网。

    虚拟私有云可以为您的引擎构建隔离的、用户自主配置和管理的虚拟网络环境。

  5. 单击“立即购买”,注册配置中心开始创建,当“运行状态”为“可用”时,注册配置中心创建完成。

Spring Cloud应用接入Nacos引擎

  1. 登录微服务引擎控制台
  2. 获取Nacos引擎注册发现地址。

    1. 在左侧导航栏选择“注册配置中心”,单击创建的Nacos引擎实例。
    2. 在“基础信息”页面的“连接信息”区域,获取注册发现地址。

  3. 修改demo中的配置中心地址和服务注册中心地址和微服务名。

    1. 在“bootstrap.properties”中配置Nacos配置中心。
      在下载到本地的demo源码目录中找到“nacos-examples-master\nacos-spring-cloud-example\nacos-spring-cloud-discovery-example\nacos-spring-cloud-consumer-example\src\main\resources”添加“bootstrap.properties”文件,配置Naocs配置中心:
      spring.cloud.nacos.config.server-addr=XXX.nacos.cse.com:8848 //Nacos的配置中心地址
      spring.cloud.nacos.config.prefix=example  //配置文件名前缀
      spring.cloud.nacos.config.file-extension=properties  //配置文件名后缀
      spring.cloud.nacos.config.group=XXX  //配置文件所属分组,不填默认DEFAULT_GROUP 
      spring.cloud.nacos.config.namespace=XXX  //配置文件所属命名空间ID,不填默认public

      更多配置详情,请参考Nacos配置参考

    2. 在“application.properties”中配置Nacos的服务注册发现地址和微服务名。
      • 在下载到本地的demo源码目录中找到“nacos-examples-master\nacos-spring-cloud-example\nacos-spring-cloud-discovery-example\nacos-spring-cloud-consumer-example\src\main\resources\application.properties”文件,配置consumer服务:
        server.port=8080
        spring.application.name=service-consumer //微服务名
        spring.cloud.nacos.discovery.server-addr= XXX.nacos.cse.com:8848 //Nacos的服务注册发现地址 
        spring.cloud.nacos.discovery.group=XXX //微服务所属分组,不填则默认DEFAULT_GROUP
        spring.cloud.nacos.discovery.namespace=XXX //微服务所属命名空间ID,不填则默认public
        spring.cloud.nacos.discovery.cluster-name=XXX //微服务所属集群名称,不填则默认DEFAULT
      • 在下载到本地的demo源码目录中找到“nacos-examples-master\nacos-spring-cloud-example\nacos-spring-cloud-discovery-example\nacos-spring-cloud-provider-example\src\main\resources\application.properties”文件,配置provider服务:
        server.port=8070
        spring.application.name=service-provider //微服务名
        spring.cloud.nacos.discovery.server-addr= XXX.nacos.cse.com:8848 //Nacos的服务注册发现地址
        spring.cloud.nacos.discovery.group=XXX //微服务所属分组,不填则默认DEFAULT_GROUP
        spring.cloud.nacos.discovery.namespace=XXX //微服务所属命名空间ID,不填则默认public
        spring.cloud.nacos.discovery.cluster-name=XXX //微服务所属集群名称,不填则默认DEFAULT

      更多配置详情,请参考Nacos注册发现

  4. 打包demo源码成jar包。

    1. 在demo源码根目录下,打开cmd命令,执行mvn clean package命令,对项目进行打包编译。
    2. 编译成功后,生成如表2所示的两个Jar包。
      表2 软件包列表

      软件包所在目录

      软件包名称

      说明

      \nacos-spring-cloud-consumer-example\target

      nacos-spring-cloud-consumer-example-0.2.0-SNAPSHOT.jar

      服务消费者

      \nacos-spring-cloud-provider-example\target

      nacos-spring-cloud-provider-example-0.2.0-SNAPSHOT.jar

      服务生产者

  5. 部署Spring Cloud应用。

    将微服务Provider和Consumer部署至Nacos引擎所在VPC的ECS节点。
    1. 请参考购买并登录Linux弹性云服务器在引擎实例所属VPC下创建一台ECS节点并登录。
    2. 安装JRE,为服务提供运行环境。
    3. 4生成JAR包上传至ECS节点。
    4. 执行命令:java -jar {对应jar包},运行生成的JAR包。

  6. 确认部署结果。

    1. 可选:在微服务引擎控制台页面,在左侧导航栏选择“注册配置中心”,单击创建注册配置中心中创建的Nacos引擎。
    2. 选择“服务管理”,查看微服务service-consumer和service-provider的实例数量。
      • 若实例数量值不为0,则表示已经成功接入Nacos引擎。
      • 若实例数量为0,或者找不到service-consumer和service-provider服务名,则表示微服务应用接入Nacos引擎失败。