我正在使用Spring Cloud Data Flow来协调任务应用程序的执行,并且需要使用其自己的资源配额(可能有保证且有些可突发)在其专用命名空间中运行每个任务应用程序。
按照Spring Cloud Data Flow Tasks Configuration上的指南并使用timestamp-task docker镜像,我在server-config.yml
中具有以下配置
spring:
cloud:
dataflow:
task:
platform:
kubernetes:
accounts:
default:
limits:
memory: 1024Mi
my-dedicated-ns:
namespace: my-dedicated-ns
imagePullPolicy: Always
limits:
memory: 2048Mi
但是,当我使用--platformName=my-dedicated-ns
参数启动任务时,任务仍在运行scdf的默认 namespace 中执行(我称其为spring-cloud-dataflow)。查看执行细节,我发现-
--platformName: my-dedicated-ns
--spring.cloud.data.flow.platformname: default
--spring.cloud.task.executionid: 9
题 -my-dedicated-ns
命名空间中运行? 编辑:
在我得到的任务 Pane 上运行
kubectl describe
-kubectl describe pod/timestamp-task-9n5xq9o8y0
...
Name: timestamp-task-9n5xq9o8y0
Namespace: spring-cloud-dataflow
...
Containers:
timestamp-task-z95kxp4r84:
Image: springcloudtask/timestamp-task
Args:
--platformName=my-dedicated-ns
--spring.cloud.data.flow.platformname=default
--spring.cloud.task.executionid=7
这表明Spring Cloud Data Flow服务器始终在同一 namespace 中运行任务,如果是,那么--platformName
是什么呢?
最佳答案
平台名称可以正常工作,我必须重新启动Spring Cloud Data Flow服务器以获取下的新 namespace 定义
spring:
cloud:
dataflow:
task:
platform:
kubernetes:
accounts:
生效。
关于kubernetes - 如何配置Spring Cloud Data Flow以在每个任务的单独 namespace 中执行任务?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64303244/