如何使用静态 Spring Cloud 流 url 启动 Spring Cloud 任务?

问题描述

使用的平台:Kubernetes。

我遇到了 Spring Cloud 流 url 的问题。我正在使用 spring 云流启动我的 spring 云任务。 Streams 部署在 kubernetes 平台上。流包含http-kafka 作为源taskLauncerKafka 作为接收器。我使用 http-kafka kubernetes service url 来启动任务。 Kubernetes 服务 url 在每次部署后都会发生变化,这会导致问题。每次流部署后服务名称的变化很难管理。我也试过启用 loadbalacer。在这种情况下,每次流推出后,外部 ip 地址也会发生变化。

我正在使用船长来管理部署。每次部署流时,流版本都会更改,这也会更改流 url。

就我而言,我有多个实例可以从中启动 spring-cloud 任务。如果流 url 更改,我需要在所有实例的部署项目的 configmap 中进行更改,并需要重新部署所有实例。

有什么解决办法吗?我正在考虑使用 spring-cloud-config server 或 zookeeper 进行集中配置管理。在这种情况下,我还需要更新网址。我可以避免使用集中配置管理部署多个实例。

船长服务器版本: 2.4.1.RELEASE
Dataflow 服务器版本: 2.5.1.RELEASE

解决方法

您正在运行哪个版本的 SCDF/Skipper? 这看起来类似于问题 https://github.com/spring-cloud/spring-cloud-skipper/issues/953,随后在 Skipper 2.6.0 中得到解决。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...