创建CronJob
功能介绍
This API is used to create a CronJob resource object.
URI
POST /apis/batch/v1/namespaces/{namespace}/cronjobs (Supports 1.21 and 1.21+)
POST /apis/batch/v1beta1/namespaces/{namespace}/cronjobs (Supports 1.21-)
表1描述该API的参数。
请求消息
请求参数:
请求参数如表2所示。
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
apiVersion |
Yes |
String |
APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. |
kind |
Yes |
String |
Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. |
metadata |
Yes |
metadata object |
Standard list metadata. |
spec |
Yes |
spec object |
Specification of the desired behavior of a cron job, including the schedule. |
status |
No |
status object |
Current status of a cron job. |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
concurrencyPolicy |
No |
String |
Specifies how to treat concurrent executions of a Job. Valid values are: - "Allow" (default): allows CronJobs to run concurrently; - "Forbid": forbids concurrent runs, skipping next run if previous run hasn’t finished yet; - "Replace": cancels currently running job and replaces it with a new one. |
failedJobsHistoryLimit |
No |
Integer |
The number of failed finished jobs to retain. This is a pointer to distinguish between explicit zero and not specified. Defaults to 1. |
jobTemplate |
Yes |
jobTemplate object |
Specifies the job that will be created when executing a CronJob. |
schedule |
Yes |
String |
The schedule in Cron format. |
startingDeadlineSeconds |
No |
Integer |
Optional deadline in seconds for starting the job if it misses scheduled time for any reason. Missed jobs executions will be counted as failed ones. |
successfulJobsHistoryLimit |
No |
Intege |
The number of successful finished jobs to retain. This is a pointer to distinguish between explicit zero and not specified. Defaults to 3. |
suspend |
No |
Boolean |
This flag tells the controller to suspend subsequent executions, it does not apply to already started executions. Defaults to false. |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
active |
No |
claimRef object |
A list of pointers to currently running jobs. |
lastScheduleTime |
No |
String |
Information when was the last time the job was successfully scheduled. |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
metadata |
No |
metadata object |
Standard object’s metadata of the jobs created from this template. |
spec |
No |
spec object |
Specification of the desired behavior of the job. |
请求示例:
{ "apiVersion": "batch/v1beta1", "kind": "CronJob", "metadata": { "name": "cronjob-test", "namespace": "default" }, "spec": { "concurrencyPolicy": "Allow", "jobTemplate": { "spec": { "template": { "metadata": { "enable": true, "labels": { "sjname": "cronjob-test" } }, "spec": { "containers": [ { "image": "nginx:stable-perl", "imagePullPolicy": "IfNotPresent", "lifecycle": {}, "name": "container-0" } ], "dnsPolicy": "ClusterFirst", "imagePullSecrets": [ { "name": "default-secret" } ], "restartPolicy": "OnFailure" } } } }, "schedule": "*/59 * * * *" } }
响应消息
响应参数:
响应参数的详细描述请参见表2。
响应示例:
{ "apiVersion": "batch/v1beta1", "kind": "CronJob", "metadata": { "annotations": { "container.io/container-0": "https://console.huaweicloud.com/swr/dockerimage/nginx.png", "description": "" }, "creationTimestamp": "2018-03-07T12:08:52Z", "enable": true, "name": "cronjob-test", "namespace": "default", "resourceVersion": "441019", "selfLink": "/apis/batch/v1beta1/namespaces/default/cronjobs/cronjob-test", "uid": "4d78b666-2200-11e8-96aa-fa163ecd089c" }, "spec": { "concurrencyPolicy": "Allow", "failedJobsHistoryLimit": 1, "jobTemplate": { "metadata": { "creationTimestamp": null, "enable": true }, "spec": { "template": { "metadata": { "creationTimestamp": null, "enable": true, "labels": { "sjname": "cronjob-test" } }, "spec": { "containers": [ { "image": "nginx:stable-perl", "imagePullPolicy": "IfNotPresent", "lifecycle": {}, "name": "container-0", "resources": {}, "terminationMessagePath": "/dev/termination-log", "terminationMessagePolicy": "File" } ], "dnsPolicy": "ClusterFirst", "imagePullSecrets": [ { "name": "default-secret" } ], "restartPolicy": "OnFailure", "schedulerName": "default-scheduler", "securityContext": {}, "terminationGracePeriodSeconds": 30 } } } }, "schedule": "*/59 * * * *", "successfulJobsHistoryLimit": 3, "suspend": false }, "status": {} }
