Spring Cloud Consul配置Spring Cloud Config

Sta*_*ton 12 spring spring-cloud

我真的很难过这个.我们希望使用Spring Cloud Consul进行服务发现,我的大学正在推动使用Spring Cloud Consul Config而不是Spring Cloud Config,我之前已经为相关项目实施了Spring Cloud Consig Config.问题是,Spring Cloud Config运行良好,并且具有无缝的开箱即用版本控制管道(git),用于动态集中管理属性.为了在Spring Cloud Consul Config中支持相同的功能,似乎需要重新发明已经融入Spring Cloud Config的轮子.

有没有人有使用两者的经验?将两者结合使用是否合理?也就是说,有春天的云配置客户端指向一个春天的云配置服务器的更多的"静态"环境属性(事情,开发,质量保证期,生产都否则静态之间会发生变化)和Spring云领事配置像服务纯动态特性发现?

如果我错了,请有人纠正我,但是根据我的理解,为了使用Spring Cloud Consul Config支持"静态"属性的动态版本控制,我需要做些什么,我需要在git和物理之间进行某种管道"/config"每个Spring Cloud Consul Config应用程序实例的运行实例的目录:/

Nic*_*mbe 7

tl;dr:我使用 spring cloud 配置和 spring cloud consul,但不使用 spring cloud consul 配置。

我没有专门使用 spring cloud consul 配置,因为我没有使用 consul 配置,但我使用的是在 consul 中注册自己的 spring cloud 配置服务器,并且我有其他微服务通过 consul 访问 spring cloud 配置服务器以进行服务发现。服务器和客户端都使用 spring cloud consul 来注册和发现配置服务器。配置服务器和配置客户端都使用 spring 云配置。

这是我的设置:

Spring Cloud 配置服务器

依赖项:

org.springframework.cloud:spring-cloud-config-server
org.springframework.cloud:spring-cloud-starter-consul-discovery
org.springframework.boot:spring-boot-starter-actuator
Run Code Online (Sandbox Code Playgroud)

bootstrap.properties:

spring.application.name=config-server
spring.cloud.consul.host=CONSUL_HOSTNAME
spring.cloud.consul.port=CONSUL_PORT
Run Code Online (Sandbox Code Playgroud)

应用程序属性:

spring.cloud.config.server.git.uri=GIT_REPO_URL
spring.cloud.config.server.git.username=GIT_REPO_USERNAME
spring.cloud.config.server.git.password=GIT_REPO_PASSWORD
Run Code Online (Sandbox Code Playgroud)

应用程序.java:

@SpringBootApplication
@EnableConfigServer
@EnableDiscoveryClient
public class Application
{
    public static void main(String[] args)
    {
        SpringApplication.run(Application.class);
    }
}
Run Code Online (Sandbox Code Playgroud)

Spring Cloud 客户端应用程序

依赖项:

org.springframework.cloud:spring-cloud-starter-config
org.springframework.cloud:spring-cloud-starter-consul-discovery
org.springframework.boot:spring-boot-starter-web
org.springframework.boot:spring-boot-starter-actuator
Run Code Online (Sandbox Code Playgroud)

bootstrap.properties:

spring.application.name=client-app-name
spring.cloud.consul.host=CONSUL_HOSTNAME
spring.cloud.consul.port=CONSUL_PORT
spring.cloud.config.discovery.enabled=true
spring.cloud.config.discovery.serviceId=config-server
Run Code Online (Sandbox Code Playgroud)

应用程序.java:

@SpringBootApplication
@EnableDiscoveryClient
public class Application
{
    public static void main(String[] args)
    {
        SpringApplication.run(Application.class);
    }
}
Run Code Online (Sandbox Code Playgroud)