Kubernetes的CWL跑步者
calrissian的Python项目详细描述
Calrissian
关于kubernetes的cwl
概述
calrissian是一个CWL实现,设计用于在kubernetes集群内运行。它的目标是高效和可扩展,利用高容量集群并行运行许多步骤。
群集要求
Calrissian需要一个Kubernetes或Openshift/OKD集群,配置为使用ReadWriteMany
访问模式提供PersistentVolumes。kubernetes安装程序和云提供商通常不包括这种类型的存储,因此可能需要额外的配置。
calrissian已经用nfs使用nfs-client-provisioner和glusterfs使用OKD Containerized GlusterFS进行了测试。许多云提供商都有一个nfs产品,可以很容易地使用nfs客户端配置器进行集成。
可扩展性/资源需求
如果任务是独立的,calrissian被设计成并行发布任务,并且由于kubernetes,应该能够运行非常大的并行工作负载。
运行calrissian
时,必须限制要同时使用的CPU核心数(--max-cores
)和RAM兆字节数(--max-ram
)。Calrissian将使用cwlResourceRequirements跟踪使用情况并保持在提供的限制范围内。我们强烈建议在您的工作负载中使用准确的资源需求,以便能够有效地安排它们,并且不太可能被集群终止或拒绝。
CWL一致性
Calrissian充分利用了CWLv1.0的cwltool大部分一致性测试。请参阅conformance了解更多详细信息和过程。
要查看与一致性相关的开放问题,请参阅问题跟踪程序上的conformance标签。
设置
有关安装和设置说明,请参见examples。