Nacos的统一配置管理

发表于:2024-2-28 09:38

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:伏加特遇上西柚    来源:CSDN

  一 项目添加nacos和bootstrap依赖
  具体版本应和项目中cloudalibaba以及cloud保持一致。
  springboot版本为:
      <parent>
          <groupId>org.springframework.boot</groupId>
          <artifactId>spring-boot-starter-parent</artifactId>
           <version>2.4.2</version>
      </parent>
          <!--nacos配置中心-->
          <dependency>
              <groupId>com.alibaba.cloud</groupId>
              <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
              <version>2021.1</version>
          </dependency>
          <!--bootstrap启动器-->
          <dependency>
              <groupId>org.springframework.cloud</groupId>
              <artifactId>spring-cloud-starter-bootstrap</artifactId>
              <version>3.1.1</version>
          </dependency>
  二 nacos客户端配置
  2.1 创建命名空间
  命名空间主要用于区分不同项目或者隔离开发环境。
  2.2 创建配置
  Data ID:
  Data ID是配置项的唯一标识,它的命名是有一定规范的。我们在配置信息时,一定是先有了微服务客户端,根据客户端需求,才在配置中心配置的信息。
  Data ID的命名规范是:
  spring.application.name-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}
  spring.application.name :服务名称。
  ${spring.profiles.active}:是配置文件中配置的环境信息
  ${spring.cloud.nacos.config.file-extension}是微服务客户端配置文件中配置的file-extension信息。
  作用是指定配置中心中配置信息的格式,一般选择yml格式的。
  假设微服务客户端服务名叫iam-biz,开发环境为dev。file-extension扩展格式为yml,则Data ID命名为:iam-biz-dev.yml
  Group
  组的概念。同一个项目环境中更细粒度的区分配置项。
  配置格式
  配置格式的勾选要与file-extension扩展模式的配置相对应。一般选择yml格式。
  然后在配置栏中写配置信息即可。
  三、配置bootstrap.yml
  将基础配置和nacos连接信息添加到bootstrap.yml中;
  spring:
    profiles:
      active: dev # 环境 dev:开发环境|test:测试环境|prod:生产环境
      include: properties
    application:
      name: iam-biz  #服务名称
    main:
      allow-bean-definition-overriding: true
    cloud:
      nacos:
        discovery:
          server-addr: 192.168.2.217:8848    #注册中心地址
        config:
          server-addr: ${spring.cloud.nacos.discovery.server-addr}   #配置中心地址
          file-extension: yml  #后缀名
          group: dev      #分组
          namespace: iam-lichunbo  #命名空间ID
  注意的是一定是放下bootstrap.yml中而不是application.yml。如果配置信息放在application.yml中微服务客户端连接nacos配置中心,是发生在application.yml文件读取之前去拉取的,此时并不知道application.yml中配置的是什么信息,所以只能按默认配置去连接,因此就连接localhost地址去了。
  四 不同环境配置切换
  有开发环境、测试环境、生产环境。那么切换不同的环境配置该如何操作呢?
  步骤一:nacos中添加开发、测试配置
  步骤二:指定bootstrap.yml中spring.profiles.active参数值
  ·spring.profiles.active=dev那么就会使用nacos中iam-biz-dev.yml的配置
  · spring.profiles.active=test那么就会使用nacos中iam-biz-test.yml的配置
  · active=dev那么就会使用nacos中iam-biz-dev.yml的配置
  · spring.profiles.active=test那么就会使用nacos中iam-biz-test.yml的配置
  注意的是案例中Group用的都是dev,实际这个叫什么并不重要;我们只需要注意在bootstrap中配置的组名要和nacos一致
  本文内容不用于商业目的,如涉及知识产权问题,请权利人联系51Testing小编(021-64471599-8017),我们将立即处理
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号