我们现有一个带有logstash,config和eureka服务器的微服务环境。我们现在正在建立一个Spring Cloud Dataflow(Kubernetes)环境(主要是为了运行任务/批处理作业)。
理想情况下,我们希望任务通过标准弹簧启动配置(注释等)使用现有的logstash,config和eureka服务器来支持以下场景:
Logstash:当任务运行时,其日志输出到logstash并可从Kibana查看
配置服务器:支持更改任务的配置属性。例如,可以通过更改配置服务器上的值来调整周期性任务的配置,并且下次任务运行时,它将使用新值。 我的理解是配置服务器属性将覆盖任务定义中的属性,这些属性覆盖内部application.properties中的属性。
Eureka:每项任务都会在Eureka注册。主要原因是我们的任务暴露了Web执行器端点,然后我们可以使用Spring Boot Admin(可以通过eureka发现服务)在任务运行时访问执行器端点和信息。 (我们的一些任务可能需要数小时才能运行,这将使我们能够监控它们,调整日志等)
这是一种明智的做法 - 还是有任何潜在的问题需要注意(例如eureka的短期任务)。我在现有的Spring云数据流或Spring云任务文档中找不到任何关于此的讨论。
答案 0 :(得分:0)
您可以尝试使用logstash-logback-encoder进行SCDF与ELK堆栈的集成。它适用于我们的SCDF on Yarn stream application。
Config Server应该适用于任何Spring Boot应用程序。