问题标签 [spring-cloud-config-server]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
651 浏览

spring-cloud - 使用 Spring Cloud Bus Kafka 的多个实例

我的问题是如何使用 Spring Cloud Stream Kafka 管理多实例。

让我解释一下,在 Spring Cloud Stream 微服务上下文(eureka、configserver、kafka)中,我希望拥有相同微服务的 2 个实例。当我更改 GIT 存储库中的配置时,配置服务器(通过 webhook)会将消息推送到 Kafka 主题中。

如果我在我的微服务中使用相同的 group-id,则只有两个实例中的一个会收到通知,并重新加载他的 spring 上下文。但我需要刷新所有实例......

所以,为此,我配置了一个唯一的 group-id :${spring.application.name}.bus.${hostname} 它运行良好,但问题是,每次我启动我的服务的新实例时,它都会在 kafka 中创建一个新的消费者组。现在我有很多未使用的消费者群体。

[![微服务的消费者][1]][1] [1]:https://i.stack.imgur.com/6jIzx.png

这是我的服务的 Spring Cloud Stream 配置:

如何避免大量的消费者创造?我应该删除 kafka 中的旧消费者组吗?我认为我的解决方案不是最好的方法,所以如果你有更好的选择,我很感兴趣;)

谢谢

0 投票
1 回答
707 浏览

java - 在 Spring Boot 应用程序中使用 Spring Cloud Config Server 从 Bitbucket Repository 读取外部 YAML/JSON 文件

Cloud Foundry 上部署了一个 Spring Boot 应用程序,它需要连接到 Bitbucket 存储库以从存储库中存在的外部 Yaml 文件获取数据。目前,我正在使用 Spring Cloud Config Server 并通过 application.yaml 中的 SSH 密钥配置 bitbucket 存储库。公钥放置在 bitbucket 服务器上的存储库设置下。

应用程序.yaml

我的 bitbucket 存储库中存在的外部 yaml 文件如下所示。我需要通过 Spring Cloud Config Server 在我的 Spring boot PaaS 中加载和读取这个 Yaml 文件。假设 Out.yaml 文件存在于分支功能/RQ4 或根位置的 dev-intg 分支中。

是否可以在我的 Spring 启动应用程序中以纯文本形式将完整的 Yaml 文件加载为 Java 字符串。获得完整的 Yaml 内容后,我将使用 Object mapper 并使用为该 Yaml 编写的映射器类转换为相应的 java 对象。我可以使用 SSH 密钥通过 Config Server 连接到我的存储库,但不确定如何从 bitbucket 存储库读取 yaml 或等效的 Json 文件。

输出.yaml

0 投票
1 回答
637 浏览

java - 多个存储库的 Spring Cloud Config Server 回退

我们正在使用由 bitbucket 支持的 Spring Cloud 配置服务器来获取配置文件。我们在配置服务器的 application.yml 中配置了多个存储库。即使 bitbucket 关闭,我们也希望它可用。我们正在寻找一种可以缓存配置存储库的解决方案,如果 bitbucket 出现故障,它仍然可以提供不同存储库的属性。下面是我的 application.yml

我尝试过设置,spring.cloud.config.server.git.basedir但它只克隆基本配置仓库。如果 bitbucket 关闭,我们如何使配置服务器从本地服务。

0 投票
0 回答
366 浏览

spring - 与 Spring Cloud Config Server 的集成测试

这是我第一次使用 Spring Cloud Config 框架实现 Spring 应用程序。该应用程序工作正常,通过服务器应用程序从存储库获取配置属性。因此,目前我必须编写集成测试来测试客户端应用程序与服务器和存储库之间的连接。要做到这一点,我的意思是从存储库中通过属性获取一个值并检查该值,还向服务器发出请求,或者如果存在,则使用 spring 云配置库中的其他方法来制作它。

现在的问题是,在执行 integrationTest 时,应用程序无法从远程读取属性。我在bootstrap.ymlintegrationTest 上下文中创建了一个但不起作用。所以,我得到了这样的错误:Could not resolve placeholder.

我的集成测试

引导程序.yml

也试过:

  1. application-integrationTest.yml
  2. application.yml
  3. bootstrap-integrationTest.yml
  4. *-integrationTest.yml在回购中创建一个。
  5. @ActiveProfiles("local")在 integrationTest 类上设置。

没有任何效果。

0 投票
0 回答
294 浏览

java - 微服务 - 启动配置服务器 org.springframework.boot.context.properties.bind.BindResult 时出错

尝试启动配置服务器时出现以下错误。看起来不正确的 jar 版本请有任何建议

错误

构建.gradle

主文件

0 投票
1 回答
141 浏览

json - Spring 配置服务器返回带有解析路径的 json 响应 - 如何避免这种情况?

我的 gitlab 服务器中有一个像这样的 .yml 文件

配置服务器读取上面的 yml 并返回类似这样的响应

我需要配置服务器返回如下所示的“源”部分

有人可以帮我解决这个问题吗?

0 投票
1 回答
904 浏览

spring-boot - Spring Config Server 查找中的 log4j2 配置文件不起作用

我设置了我的 spring-boot 应用程序以从配置服务器获取 log4j2 配置文件。但是查找不起作用。如果我将日志配置文件放在资源文件夹下,它工作正常。如果文件在配置服务器上,监控间隔也不起作用。

我的配置文件示例:

配置从配置服务器正确加载,因为日志是 json 格式,但是 "${date:yyyy-MM-dd'T'HH:mm:ss.SSSZ}" 和 "${ctx:CORRELATION_ID}" 不是t 解决了。我想再次提一下,如果配置文件位于资源文件夹下,则此方法有效。所以这让我认为问题出在配置服务器上的配置文件上。如果文件在配置服务器上,查找有任何限制吗?

谢谢。

0 投票
0 回答
47 浏览

spring - Spring Config Server - 如何访问每个环境中的文件夹内的文件?

我的 gitlab 中有一个这样的文件夹

这些 testconfig.properties 文件内容因环境而异

如何根据我的 spring 配置服务器中的环境访问文件?

例如:我想使用如下所示的网址作为产品、开发人员:

https://my.configserver.com/my-project/prod/testconfig/master ,

https://my.configserver.com/my-project/dev/testconfig/master

我也应该能够访问 appication-commonconfig.properties

问题是我要为每个环境迁移大约 30 个配置文件。一种环境中的文件名在另一种环境中是相似的。我无法将所有文件重命名为包含“-dev”或“-prod”

我尝试过不同的路径,但没有运气

0 投票
0 回答
121 浏览

gitlab - Spring Cloud 配置服务器 - 引导属性文件 - 配置多个 git 存储库

我正在尝试在我的 spring 云配置服务器中配置多个 gitlab 存储库

我将 bootstrap.properties 用于我的 spring 配置

下面是我的 bootstrap.properties 文件

查看此文档后 https://cloud.spring.io/spring-cloud-config/multi/multi__spring_cloud_config_server.html

我尝试配置另一个仓库,如下所示

并尝试使用像这样的 url 访问文件

https://my.configserver.com:8443/repotwo/testfile/master

但它没有用。我提到的大多数文章都使用 .yml 文件而不是 bootstrap.properties。有人可以帮我吗?

0 投票
0 回答
565 浏览

spring - 无法从 start.spring.io 启动 Spring Cloud Config Server

我正在尝试使用 JDBC 构建 Spring Cloud Config Server 来存储配置。但是我似乎无法运行该应用程序。我还没有添加@EnableConfigServer,我只是想直接从 start.spring.io 运行它

错误:引起:java.lang.ClassNotFoundException:org.springframework.security.crypto.encrypt.TextEncryptor(下面的完整堆栈跟踪 - Stacktrace 1)

绒球:

如果我添加:

我收到错误消息:原因:java.lang.ClassNotFoundException:org.springframework.cloud.bootstrap.encrypt.KeyProperties(下面的完整堆栈跟踪 - Stacktrace 2)

堆栈跟踪 1:

堆栈跟踪 2: