Openshift作业触发器

时间:2019-04-28 23:05:01

标签: kubernetes openshift

我们有一个批处理作业,用于处理使用Rest Call触发的平面文件

For e.g. https://clustername.com/loader?filname=file1.dat
    https://clustername.com/loader?filname=file2.dat
    https://clustername.com/loader?filname=file3.dat

我们要配置Openshift Job来触发此批处理作业。

https://docs.openshift.com/container-platform/3.11/dev_guide/jobs.html

根据Kubernetes文档,可以使用Queue触发作业:

https://kubernetes.io/docs/concepts/workloads/controllers/jobs-run-to-completion/

该作业还可以通过“休息呼叫”来触发吗?

1 个答案:

答案 0 :(得分:1)

正如其他人所提到的,您可以通过API创建新作业来实例化作业。

IIRC,您将对/apis/batch/v1/namespaces/<your-namespace>/jobs进行POST呼叫
(端点可能会有所不同,具体取决于您的API版本。)

REST调用的有效负载是要运行的作业的JSON格式的清单。即

{
    "apiVersion": "batch/v1",
    "kind": "Job",
    "metadata": {
        "name": "example"
    },
    "spec": {
        "selector": {},
        "template": {
            "metadata": {
                "name": "example"
            },
            "spec": {
                "containers": [
                    {
                        "name": "example",
                        "image": "hello-world"
                    }
                ],
                "restartPolicy": "Never"
            }
        }
    }
}