kubernetes的新手,我正在尝试使用不带k8s的排队系统来移动当前的管道。
我有一个perl脚本,该脚本为我必须处理的每个样本生成批处理作业(yml文件)列表。
然后我运行this.http.post(url, parameters, { responseType: 'text' });
例如,每个样品需要顺序处理并经过不同的处理
示例:
SampleA->干净->质量-> some_calculation
SampleB->干净->质量-> some_calculation
以此类推,获取300个样本。
因此,想法是准备所有yml文件并按顺序运行它们。工作正常。
但是,使用这种方法,我需要等待所有样本都已处理(也就是说,在我运行下一个作业质量之前,所有清洁作业都需要完成)。
在这种情况下最好的方法是独立运行每个样本?怎么样?
以下yml描述了一项工作的一个示例。您会看到我正在使用计数器(sample1(A)的mergesreads-1)
kubectl apply --recursive -f 16S_jobscripts/
答案 0 :(得分:1)
如果我对您的理解正确,则可以将parallel-jobs与Job Patterns结合使用。
它确实支持一组独立但并行的处理 相关工作项。
您也可以考虑使用Argo。 https://github.com/argoproj/argo
Argo Workflows是一个开源的容器本机工作流引擎,用于 在Kubernetes上协调并行作业现“ Argo工作流程”为 作为Kubernetes CRD(自定义资源定义)实现。
请告诉我是否有帮助。