如何配置 Spring Cloud Data Flow 以在每个任务的单独命名空间中执行任务?

How to configure Spring Cloud Data Flow to execute tasks in a separate namespace per task?

我正在使用 Spring Cloud Data Flow 来编排任务应用程序的执行,并且需要 运行 每个任务应用程序在它的专用命名空间中都有自己的资源配额(有些可能是有保证的和一些 Burstable)。

按照 Spring Cloud Data Flow Tasks Configuration, and using the 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 为 运行ning 的默认命名空间中执行(我称之为 spring-cloud-dataflow ).

查看执行细节,我看到 -

--platformName: my-dedicated-ns
--spring.cloud.data.flow.platformname: default
--spring.cloud.task.executionid: 9

问题 -

编辑: 运行 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 云数据流服务器始终在同一命名空间中执行 运行 任务,如果是这样,--platformName 的用途是什么?

平台名称工作得很好,我不得不重新启动 Spring Cloud Data Flow 服务器以获得

下的新命名空间定义
spring:
      cloud:
        dataflow:
          task:
            platform:
              kubernetes:
                accounts:

生效。