Spring Config Server Vault后端:cloud.config.server.vault或cloud.vault

时间:2018-07-11 07:55:13

标签: spring spring-cloud-config

我想设置一个配置服务器,该服务器能够使用Vault和git作为配置后端。我不太了解有关配置的信息:

spring:
  application:
    name: tdev-wssc-configserver

  profiles:
    active: git, vault

  cloud:
    config:
      server:
        git:
          uri: file:///path/to/git/repo
          order: 2
        vault:
          host: ${vault_server_host:localhost}
          port: ${vault_server_port:8200}
          order: 1
    vault:
      enabled: true
      host: ${vault_server_host:localhost}
      port: ${vault_server_port:8200}
      scheme: ${vault_server_scheme:https}
      connection-timeout: 5000
      read-timeout: 15000
      fail-fast: true
      config:
        order: -10
      ssl:
        trust-store: file:keystore.jks
        trust-store-password: secret

我为什么需要设置spring.cloud.config.server.vaultspring.cloud.vault

我真的需要同时设置两者吗?

它们之间有什么区别?

我只希望我的客户端能够直接从配置服务器获取配置,而不管是否存在保险柜。

因此,客户端只能在配置服务器上发出请求,并且配置服务器会从Vault中获取机密。

1 个答案:

答案 0 :(得分:2)

如果您想同时使用Git和Vault的配置服务器,请使用Spring Cloud Config并在属性的spring.cloud.config.server.vault部分中配置Vault。参见this documentation。在这种情况下,您不应该添加Spring Cloud Vault的依赖项,Spring Cloud Config已经具有Vault支持(VaultEnvironmentRepository类)。

Spring Cloud Vault,如果您不想启动配置服务器,而只是直接从服务中从Vault获取属性,则可以使用。在这种情况下,将使用Spring Cloud Vault依赖项,并使用spring.cloud.vault属性。

根据您的问题,您似乎希望拥有单独的配置服务器,因此您应该使用Spring Cloud Config。

answer可能对您也有帮助。