簡體   English   中英

為每個配置文件組配置Spring Cloud配置服務器

[英]Configure spring cloud config server for each profile group

我的環境很少。 有:

  • 本地
  • 開發者
  • 測試
  • a
  • d
  • 產品

如果配置服務器連接到所有服務器,則一切都會清除。

就我而言,我需要每個組的配置服務器:

  • 在開發人員控制之下
  • 在質量控制下
  • 快要控制

組連接到權限和不同的環境。

所以我需要每個客戶類似的東西:

bootstrap.yml

# default configs for local, dev, test profiles
spring:
  application:
    name: discovery-service
  cloud:
    config:
      uri: http://local-dev-test-configuration-server:8888

---
# **bootstrap-qa.yml**
spring:
  profiles: qa
  application:
    name: discovery-service
  cloud:
    config:
      uri: http://qa-configuration-server:8888

---
# **bootstrap-prod.yml**
spring:
  profiles: prod,lod
  application:
    name: discovery-service
  cloud:
    config:
      uri: http://lod-prod-configuration-server:8888

哪里

  • local-dev-test-configuration-server可以訪問localdevtest服務器配置;
  • qa-configuration-server將有權訪問qa配置;
  • lod-prod-configuration-server將只能訪問prodlod配置。

題:

我研究了Spring Boot文檔,但沒有遇到bootstrap.yml分析。

  1. 我應該遵循哪種方式滿足我的需求(管理3個不同的配置服務器和對應的配置文件)?
  2. 我已經檢測到為同一配置服務器配置不同git資源的能力。 對於我的情況,這種方法是否是最佳方法(我還必須管理幾個存儲庫以保留所需的配置)? 我不這么認為。 由於可見性不同,我需要為不同的環境配置幾個配置服務器。 因此,我需要根據配置文件在每個使用者配置主機名上進行配置。

有兩種可能的解決方案來為spring-cloud-configuration-server配置客戶端:

  1. spring-boot支持bootstrap.yml配置文件,因此有問題的配置可以用作解決方案
spring:
  application:
    name: discovery-service
  cloud:
    config:
      uri: http://local-dev-test-configuration-server:8888
---
spring:
  profiles: qa
  application:
    name: discovery-service
  cloud:
    config:
      uri: http://qa-configuration-server:8888

---
spring:
  profiles: prod,lod
  application:
    name: discovery-service
  cloud:
    config:
      uri: http://lod-prod-configuration-server:8888
  1. 如果您想使bootstrap.yml配置盡可能簡單:
spring:
  application:
    name: discovery-service
  cloud:
    config:
      uri: http://local-dev-test-configuration-server:8888

在這種情況下,解決方案是使用-Dspring.cloud.config.uri=http://localhost:8888參數覆蓋必需的屬性,例如:

java -Dspring.profiles.active=localhost -Dspring.cloud.config.uri=http://localhost:8888 -jar ./target/discovery-service-0.0.1-SNAPSHOT.jar

聚苯乙烯

方法可以混合。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM