Rename ScheduledJobs to CronJobs
This commit is contained in:
parent
9544c80dee
commit
ab09b11359
|
@ -72,7 +72,7 @@ toc:
|
||||||
path: /docs/getting-started-guides/network-policy/walkthrough/
|
path: /docs/getting-started-guides/network-policy/walkthrough/
|
||||||
- title: Using Calico for NetworkPolicy
|
- title: Using Calico for NetworkPolicy
|
||||||
path: /docs/getting-started-guides/network-policy/calico/
|
path: /docs/getting-started-guides/network-policy/calico/
|
||||||
- title: Using Romana for NetworkPolicy
|
- title: Using Romana for NetworkPolicy
|
||||||
path: /docs/getting-started-guides/network-policy/romana/
|
path: /docs/getting-started-guides/network-policy/romana/
|
||||||
|
|
||||||
- title: Batch Jobs
|
- title: Batch Jobs
|
||||||
|
@ -85,8 +85,8 @@ toc:
|
||||||
path: /docs/user-guide/jobs/work-queue-1/
|
path: /docs/user-guide/jobs/work-queue-1/
|
||||||
- title: Fine Parallel Processing using a Work Queue
|
- title: Fine Parallel Processing using a Work Queue
|
||||||
path: /docs/user-guide/jobs/work-queue-2/
|
path: /docs/user-guide/jobs/work-queue-2/
|
||||||
- title: Scheduled Jobs
|
- title: Cron Jobs
|
||||||
path: /docs/user-guide/scheduled-jobs/
|
path: /docs/user-guide/cron-jobs/
|
||||||
|
|
||||||
- title: Service Discovery and Load Balancing
|
- title: Service Discovery and Load Balancing
|
||||||
section:
|
section:
|
||||||
|
|
|
@ -40,13 +40,13 @@ toc:
|
||||||
path: /docs/api-reference/batch/v1/operations/
|
path: /docs/api-reference/batch/v1/operations/
|
||||||
- title: Batch API Definitions
|
- title: Batch API Definitions
|
||||||
path: /docs/api-reference/batch/v1/definitions/
|
path: /docs/api-reference/batch/v1/definitions/
|
||||||
|
|
||||||
- title: Extensions API
|
- title: Extensions API
|
||||||
section:
|
section:
|
||||||
- title: Extensions API Operations
|
- title: Extensions API Operations
|
||||||
path: /docs/api-reference/extensions/v1beta1/operations/
|
path: /docs/api-reference/extensions/v1beta1/operations/
|
||||||
- title: Extensions API Definitions
|
- title: Extensions API Definitions
|
||||||
path: /docs/api-reference/extensions/v1beta1/definitions/
|
path: /docs/api-reference/extensions/v1beta1/definitions/
|
||||||
|
|
||||||
- title: kubectl CLI
|
- title: kubectl CLI
|
||||||
section:
|
section:
|
||||||
|
@ -172,7 +172,7 @@ toc:
|
||||||
- title: kube-apiserver
|
- title: kube-apiserver
|
||||||
path: /docs/admin/kube-apiserver/
|
path: /docs/admin/kube-apiserver/
|
||||||
- title: kube-controller-manager
|
- title: kube-controller-manager
|
||||||
path: /docs/admin/kube-controller-manager/
|
path: /docs/admin/kube-controller-manager/
|
||||||
- title: kube-proxy
|
- title: kube-proxy
|
||||||
path: /docs/admin/kube-proxy/
|
path: /docs/admin/kube-proxy/
|
||||||
- title: kube-scheduler
|
- title: kube-scheduler
|
||||||
|
@ -183,33 +183,33 @@ toc:
|
||||||
- title: Glossary
|
- title: Glossary
|
||||||
section:
|
section:
|
||||||
- title: Annotations
|
- title: Annotations
|
||||||
path: /docs/user-guide/annotations/
|
path: /docs/user-guide/annotations/
|
||||||
- title: Daemon Sets
|
- title: Daemon Sets
|
||||||
path: /docs/admin/daemons/
|
path: /docs/admin/daemons/
|
||||||
- title: Deployments
|
- title: Deployments
|
||||||
path: /docs/user-guide/deployments/
|
path: /docs/user-guide/deployments/
|
||||||
- title: Horizontal Pod Autoscaling
|
- title: Horizontal Pod Autoscaling
|
||||||
path: /docs/user-guide/horizontal-pod-autoscaling/
|
path: /docs/user-guide/horizontal-pod-autoscaling/
|
||||||
- title: Images
|
- title: Images
|
||||||
path: /docs/user-guide/images/
|
path: /docs/user-guide/images/
|
||||||
- title: Ingress Resources
|
- title: Ingress Resources
|
||||||
path: /docs/user-guide/ingress/
|
path: /docs/user-guide/ingress/
|
||||||
- title: Jobs
|
- title: Jobs
|
||||||
path: /docs/user-guide/jobs/
|
path: /docs/user-guide/jobs/
|
||||||
- title: Labels and Selectors
|
- title: Labels and Selectors
|
||||||
path: /docs/user-guide/labels/
|
path: /docs/user-guide/labels/
|
||||||
- title: Names
|
- title: Names
|
||||||
path: /docs/user-guide/identifiers/
|
path: /docs/user-guide/identifiers/
|
||||||
- title: Namespaces
|
- title: Namespaces
|
||||||
path: /docs/user-guide/namespaces/
|
path: /docs/user-guide/namespaces/
|
||||||
- title: Network Policies
|
- title: Network Policies
|
||||||
path: /docs/user-guide/networkpolicies/
|
path: /docs/user-guide/networkpolicies/
|
||||||
- title: Nodes
|
- title: Nodes
|
||||||
path: /docs/admin/node/
|
path: /docs/admin/node/
|
||||||
- title: Persistent Volumes
|
- title: Persistent Volumes
|
||||||
path: /docs/user-guide/persistent-volumes/
|
path: /docs/user-guide/persistent-volumes/
|
||||||
- title: Pet Sets
|
- title: Pet Sets
|
||||||
path: /docs/user-guide/petset/
|
path: /docs/user-guide/petset/
|
||||||
- title: Pods
|
- title: Pods
|
||||||
path: /docs/user-guide/pods/
|
path: /docs/user-guide/pods/
|
||||||
- title: Pod Security Policies
|
- title: Pod Security Policies
|
||||||
|
@ -217,11 +217,11 @@ toc:
|
||||||
- title: Replica Sets
|
- title: Replica Sets
|
||||||
path: /docs/user-guide/replicasets/
|
path: /docs/user-guide/replicasets/
|
||||||
- title: Replication Controller
|
- title: Replication Controller
|
||||||
path: /docs/user-guide/replication-controller/
|
path: /docs/user-guide/replication-controller/
|
||||||
- title: Resource Quotas
|
- title: Resource Quotas
|
||||||
path: /docs/admin/resourcequota/
|
path: /docs/admin/resourcequota/
|
||||||
- title: Scheduled Jobs
|
- title: Cron Jobs
|
||||||
path: /docs/user-guide/scheduled-jobs/
|
path: /docs/user-guide/cron-jobs/
|
||||||
- title: Secrets
|
- title: Secrets
|
||||||
path: /docs/user-guide/secrets/
|
path: /docs/user-guide/secrets/
|
||||||
- title: Security Context
|
- title: Security Context
|
||||||
|
@ -244,11 +244,11 @@ toc:
|
||||||
- title: Kubernetes Identity and Access Management
|
- title: Kubernetes Identity and Access Management
|
||||||
path: https://github.com/kubernetes/kubernetes/blob/release-1.3/docs/design/access.md
|
path: https://github.com/kubernetes/kubernetes/blob/release-1.3/docs/design/access.md
|
||||||
- title: Kubernetes OpenVSwitch GRE/VxLAN networking
|
- title: Kubernetes OpenVSwitch GRE/VxLAN networking
|
||||||
path: /docs/admin/ovs-networking/
|
path: /docs/admin/ovs-networking/
|
||||||
- title: Security Contexts
|
- title: Security Contexts
|
||||||
path: https://github.com/kubernetes/kubernetes/blob/release-1.3/docs/design/security_context.md
|
path: https://github.com/kubernetes/kubernetes/blob/release-1.3/docs/design/security_context.md
|
||||||
- title: Security in Kubernetes
|
- title: Security in Kubernetes
|
||||||
path: https://github.com/kubernetes/kubernetes/blob/release-1.3/docs/design/security.md
|
path: https://github.com/kubernetes/kubernetes/blob/release-1.3/docs/design/security.md
|
||||||
|
|
||||||
- title: Federation
|
- title: Federation
|
||||||
section:
|
section:
|
||||||
|
|
|
@ -9,19 +9,22 @@ assignees:
|
||||||
* TOC
|
* TOC
|
||||||
{:toc}
|
{:toc}
|
||||||
|
|
||||||
## What is a _Scheduled Job_?
|
## What is a _Cron Job_?
|
||||||
|
|
||||||
A _Scheduled Job_ manages time based [Jobs](/docs/user-guide/jobs/), namely:
|
A _Cron Job_ manages time based [Jobs](/docs/user-guide/jobs/), namely:
|
||||||
|
|
||||||
* Once at a specified point in time
|
* Once at a specified point in time
|
||||||
* Repeatedly at a specified point in time
|
* Repeatedly at a specified point in time
|
||||||
|
|
||||||
One ScheduledJob object is like one line of a _crontab_ (cron table) file. It runs a job periodically
|
One CronJob object is like one line of a _crontab_ (cron table) file. It runs a job periodically
|
||||||
on a given schedule, written in [Cron](https://en.wikipedia.org/wiki/Cron) format.
|
on a given schedule, written in [Cron](https://en.wikipedia.org/wiki/Cron) format.
|
||||||
|
|
||||||
NOTE: The question mark (`?`) in the schedule has the same meaning as an asterisk `*`,
|
**Note:**: The question mark (`?`) in the schedule has the same meaning as an asterisk `*`,
|
||||||
that is, it stands for any of available value for a given field.
|
that is, it stands for any of available value for a given field.
|
||||||
|
|
||||||
|
**Note:**: ScheduledJob resource was introduced in Kubernetes version 1.4, but starting
|
||||||
|
from version 1.5 its current name is CronJob.
|
||||||
|
|
||||||
A typical use case is:
|
A typical use case is:
|
||||||
|
|
||||||
* Schedule a job execution at a given point in time.
|
* Schedule a job execution at a given point in time.
|
||||||
|
@ -29,36 +32,36 @@ A typical use case is:
|
||||||
|
|
||||||
### Prerequisites
|
### Prerequisites
|
||||||
|
|
||||||
You need a working Kubernetes cluster at version >= 1.4, with batch/v2alpha1 API turned on by passing
|
You need a working Kubernetes cluster at version >= 1.4 (for ScheduledJob), >= 1.5 (for CronJobs),
|
||||||
`--runtime-config=batch/v2alpha1` while bringing up the API server (see [Turn on or off an API version
|
with batch/v2alpha1 API turned on by passing `--runtime-config=batch/v2alpha1` while bringing up
|
||||||
for your cluster](/docs/admin/cluster-management/#turn-on-or-off-an-api-version-for-your-cluster) for
|
the API server (see [Turn on or off an API version for your cluster](/docs/admin/cluster-management/#turn-on-or-off-an-api-version-for-your-cluster)
|
||||||
more). You cannot use Scheduled Jobs on a hosted Kubernetes provider that has disabled alpha resources.
|
for more). You cannot use Cron Jobs on a hosted Kubernetes provider that has disabled alpha resources.
|
||||||
|
|
||||||
## Creating a Scheduled Job
|
## Creating a Cron Job
|
||||||
|
|
||||||
Here is an example Scheduled Job. Every minute, it runs a simple job to print current time and then say
|
Here is an example Cron Job. Every minute, it runs a simple job to print current time and then say
|
||||||
hello.
|
hello.
|
||||||
|
|
||||||
{% include code.html language="yaml" file="sj.yaml" ghlink="/docs/user-guide/sj.yaml" %}
|
{% include code.html language="yaml" file="cronjob.yaml" ghlink="/docs/user-guide/cronjob.yaml" %}
|
||||||
|
|
||||||
Run the example scheduled job by downloading the example file and then running this command:
|
Run the example cron job by downloading the example file and then running this command:
|
||||||
|
|
||||||
```shell
|
```shell
|
||||||
$ kubectl create -f ./sj.yaml
|
$ kubectl create -f ./cronjob.yaml
|
||||||
scheduledjob "hello" created
|
cronjob "hello" created
|
||||||
```
|
```
|
||||||
|
|
||||||
Alternatively, use `kubectl run` to create a scheduled job without writing full config:
|
Alternatively, use `kubectl run` to create a cron job without writing full config:
|
||||||
|
|
||||||
```shell
|
```shell
|
||||||
$ kubectl run hello --schedule="*/1 * * * *" --restart=OnFailure --image=busybox -- /bin/sh -c "date; echo Hello from the Kubernetes cluster"
|
$ kubectl run hello --schedule="*/1 * * * *" --restart=OnFailure --image=busybox -- /bin/sh -c "date; echo Hello from the Kubernetes cluster"
|
||||||
scheduledjob "hello" created
|
cronjob "hello" created
|
||||||
```
|
```
|
||||||
|
|
||||||
After creating the scheduled job, get its status using this command:
|
After creating the cron job, get its status using this command:
|
||||||
|
|
||||||
```shell
|
```shell
|
||||||
$ kubectl get scheduledjob hello
|
$ kubectl get cronjob hello
|
||||||
NAME SCHEDULE SUSPEND ACTIVE LAST-SCHEDULE
|
NAME SCHEDULE SUSPEND ACTIVE LAST-SCHEDULE
|
||||||
hello */1 * * * * False 0 <none>
|
hello */1 * * * * False 0 <none>
|
||||||
```
|
```
|
||||||
|
@ -73,10 +76,10 @@ NAME DESIRED SUCCESSFUL AGE
|
||||||
hello-4111706356 1 1 2s
|
hello-4111706356 1 1 2s
|
||||||
```
|
```
|
||||||
|
|
||||||
Now you've seen one running job scheduled by "hello". We can stop watching it and get the scheduled job again:
|
Now you've seen one running job scheduled by "hello". We can stop watching it and get the cron job again:
|
||||||
|
|
||||||
```shell
|
```shell
|
||||||
$ kubectl get scheduledjob hello
|
$ kubectl get cronjob hello
|
||||||
NAME SCHEDULE SUSPEND ACTIVE LAST-SCHEDULE
|
NAME SCHEDULE SUSPEND ACTIVE LAST-SCHEDULE
|
||||||
hello */1 * * * * False 0 Mon, 29 Aug 2016 14:34:00 -0700
|
hello */1 * * * * False 0 Mon, 29 Aug 2016 14:34:00 -0700
|
||||||
```
|
```
|
||||||
|
@ -99,17 +102,17 @@ Mon Aug 29 21:34:09 UTC 2016
|
||||||
Hello from the Kubernetes cluster
|
Hello from the Kubernetes cluster
|
||||||
```
|
```
|
||||||
|
|
||||||
## Deleting a Scheduled Job
|
## Deleting a Cron Job
|
||||||
|
|
||||||
Once you don't need a scheduled job anymore, simply delete it with `kubectl`:
|
Once you don't need a cron job anymore, simply delete it with `kubectl`:
|
||||||
|
|
||||||
```shell
|
```shell
|
||||||
$ kubectl delete scheduledjob hello
|
$ kubectl delete cronjob hello
|
||||||
scheduledjob "hello" deleted
|
cronjob "hello" deleted
|
||||||
```
|
```
|
||||||
|
|
||||||
This stops new jobs from being created. However, running jobs won't be stopped, and no jobs or their pods will
|
This stops new jobs from being created. However, running jobs won't be stopped, and no jobs or their pods will
|
||||||
be deleted. To clean up those jobs and pods, you need to list all jobs created by the scheduled job, and delete them all:
|
be deleted. To clean up those jobs and pods, you need to list all jobs created by the cron job, and delete them all:
|
||||||
|
|
||||||
```shell
|
```shell
|
||||||
$ kubectl get jobs
|
$ kubectl get jobs
|
||||||
|
@ -124,29 +127,29 @@ job "hello-1202039034" deleted
|
||||||
...
|
...
|
||||||
```
|
```
|
||||||
|
|
||||||
Once the jobs are deleted, the pods created by them are deleted as well. Note that all jobs created by scheduled
|
Once the jobs are deleted, the pods created by them are deleted as well. Note that all jobs created by cron
|
||||||
job "hello" will be prefixed "hello-". You can delete them at once with `kubectl delete jobs --all`, if you want to
|
job "hello" will be prefixed "hello-". You can delete them at once with `kubectl delete jobs --all`, if you want to
|
||||||
delete all jobs in the current namespace (not just the ones created by "hello".)
|
delete all jobs in the current namespace (not just the ones created by "hello".)
|
||||||
|
|
||||||
## Scheduled Job Limitations
|
## Cron Job Limitations
|
||||||
|
|
||||||
A scheduled job creates a job object _about_ once per execution time of its schedule. We say "about" because there
|
A cron job creates a job object _about_ once per execution time of its schedule. We say "about" because there
|
||||||
are certain circumstances where two jobs might be created, or no job might be created. We attempt to make these rare,
|
are certain circumstances where two jobs might be created, or no job might be created. We attempt to make these rare,
|
||||||
but do not completely prevent them. Therefore, jobs should be _idempotent_.
|
but do not completely prevent them. Therefore, jobs should be _idempotent_.
|
||||||
|
|
||||||
The job is responsible for retrying pods, parallelism among pods it creates, and determining the success or failure
|
The job is responsible for retrying pods, parallelism among pods it creates, and determining the success or failure
|
||||||
of the set of pods. A scheduled job does not examine pods at all.
|
of the set of pods. A cron job does not examine pods at all.
|
||||||
|
|
||||||
## Writing a Scheduled Job Spec
|
## Writing a Cron Job Spec
|
||||||
|
|
||||||
As with all other Kubernetes configs, a scheduled job needs `apiVersion`, `kind`, and `metadata` fields. For general
|
As with all other Kubernetes configs, a cron job needs `apiVersion`, `kind`, and `metadata` fields. For general
|
||||||
information about working with config files, see [deploying applications](/docs/user-guide/deploying-applications),
|
information about working with config files, see [deploying applications](/docs/user-guide/deploying-applications),
|
||||||
[configuring containers](/docs/user-guide/configuring-containers), and
|
[configuring containers](/docs/user-guide/configuring-containers), and
|
||||||
[using kubectl to manage resources](/docs/user-guide/working-with-resources) documents.
|
[using kubectl to manage resources](/docs/user-guide/working-with-resources) documents.
|
||||||
|
|
||||||
A scheduled job also needs a [`.spec` section](https://github.com/kubernetes/kubernetes/tree/{{page.githubbranch}}/docs/devel/api-conventions.md#spec-and-status).
|
A cron job also needs a [`.spec` section](https://github.com/kubernetes/kubernetes/tree/{{page.githubbranch}}/docs/devel/api-conventions.md#spec-and-status).
|
||||||
|
|
||||||
**Note:** All modifications to a scheduled job, especially its `.spec`, will be applied only to the next run.
|
**Note:** All modifications to a cron job, especially its `.spec`, will be applied only to the next run.
|
||||||
|
|
||||||
### Schedule
|
### Schedule
|
||||||
|
|
||||||
|
@ -168,14 +171,14 @@ there's no deadline.
|
||||||
### Concurrency Policy
|
### Concurrency Policy
|
||||||
|
|
||||||
The `.spec.concurrencyPolicy` field is also optional. It specifies how to treat concurrent executions of a job
|
The `.spec.concurrencyPolicy` field is also optional. It specifies how to treat concurrent executions of a job
|
||||||
created by this scheduled job. Only one of the following concurrent policies may be specified:
|
created by this cron job. Only one of the following concurrent policies may be specified:
|
||||||
|
|
||||||
* `Allow` (default): allows concurrently running jobs
|
* `Allow` (default): allows concurrently running jobs
|
||||||
* `Forbid`: forbids concurrent runs, skipping next run if previous hasn't finished yet
|
* `Forbid`: forbids concurrent runs, skipping next run if previous hasn't finished yet
|
||||||
* `Replace`: cancels currently running job and replaces it with a new one
|
* `Replace`: cancels currently running job and replaces it with a new one
|
||||||
|
|
||||||
Note that concurrency policy only applies to the jobs created by the same scheduled job. If there are multiple
|
Note that concurrency policy only applies to the jobs created by the same cron job. If there are multiple
|
||||||
scheduled jobs, their respective jobs are always allowed to run concurrently.
|
cron jobs, their respective jobs are always allowed to run concurrently.
|
||||||
|
|
||||||
### Suspend
|
### Suspend
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
apiVersion: batch/v2alpha1
|
apiVersion: batch/v2alpha1
|
||||||
kind: ScheduledJob
|
kind: CronJob
|
||||||
metadata:
|
metadata:
|
||||||
name: hello
|
name: hello
|
||||||
spec:
|
spec:
|
|
@ -374,6 +374,6 @@ driver, and then cleans up.
|
||||||
An advantage of this approach is that the overall process gets the completion guarantee of a Job
|
An advantage of this approach is that the overall process gets the completion guarantee of a Job
|
||||||
object, but complete control over what pods are created and how work is assigned to them.
|
object, but complete control over what pods are created and how work is assigned to them.
|
||||||
|
|
||||||
## Scheduled Jobs
|
## Cron Jobs
|
||||||
|
|
||||||
Support for creating Jobs at specified times/dates (i.e. cron) is available in Kubernetes [1.4](https://github.com/kubernetes/kubernetes/pull/11980). More information is available in the [scheduled job documents](http://kubernetes.io/docs/user-guide/scheduled-jobs/)
|
Support for creating Jobs at specified times/dates (i.e. cron) is available in Kubernetes [1.4](https://github.com/kubernetes/kubernetes/pull/11980). More information is available in the [cron job documents](http://kubernetes.io/docs/user-guide/cron-jobs/)
|
||||||
|
|
|
@ -141,7 +141,7 @@ $ kubectl rolling-update frontend-v1 frontend-v2 --rollback # Abort exist
|
||||||
$ cat pod.json | kubectl replace -f - # Replace a pod based on the JSON passed into stdin
|
$ cat pod.json | kubectl replace -f - # Replace a pod based on the JSON passed into stdin
|
||||||
|
|
||||||
# Force replace, delete and then re-create the resource. Will cause a service outage.
|
# Force replace, delete and then re-create the resource. Will cause a service outage.
|
||||||
$ kubectl replace --force -f ./pod.json
|
$ kubectl replace --force -f ./pod.json
|
||||||
|
|
||||||
# Create a service for a replicated nginx, which serves on port 80 and connects to the containers on port 8000
|
# Create a service for a replicated nginx, which serves on port 80 and connects to the containers on port 8000
|
||||||
$ kubectl expose rc nginx --port=80 --target-port=8000
|
$ kubectl expose rc nginx --port=80 --target-port=8000
|
||||||
|
@ -251,7 +251,7 @@ Resource type | Abbreviated alias
|
||||||
`replicasets` |`rs`
|
`replicasets` |`rs`
|
||||||
`replicationcontrollers` |`rc`
|
`replicationcontrollers` |`rc`
|
||||||
`resourcequotas` |`quota`
|
`resourcequotas` |`quota`
|
||||||
`scheduledjob` |
|
`cronjob` |
|
||||||
`secrets` |
|
`secrets` |
|
||||||
`serviceaccount` |`sa`
|
`serviceaccount` |`sa`
|
||||||
`services` |`svc`
|
`services` |`svc`
|
||||||
|
|
|
@ -38,7 +38,7 @@ In order for `kubectl run` to satisfy infrastructure as code:
|
||||||
* Deployment - use `deployment/v1beta1`.
|
* Deployment - use `deployment/v1beta1`.
|
||||||
* Job (using `extension/v1beta1` endpoint) - use `job/v1beta1`.
|
* Job (using `extension/v1beta1` endpoint) - use `job/v1beta1`.
|
||||||
* Job - use `job/v1`.
|
* Job - use `job/v1`.
|
||||||
* ScheduledJob - use `scheduledjob/v2alpha1`.
|
* CronJob - use `cronjob/v2alpha1`.
|
||||||
|
|
||||||
Additionally, if you didn't specify a generator flag, other flags will suggest using
|
Additionally, if you didn't specify a generator flag, other flags will suggest using
|
||||||
a specific generator. Below table shows which flags force using specific generators,
|
a specific generator. Below table shows which flags force using specific generators,
|
||||||
|
@ -50,7 +50,7 @@ depending on your cluster version:
|
||||||
| Replication Controller | `--generator=run/v1` | `--generator=run/v1` | `--generator=run/v1` | `--restart=Always` |
|
| Replication Controller | `--generator=run/v1` | `--generator=run/v1` | `--generator=run/v1` | `--restart=Always` |
|
||||||
| Deployment | `--restart=Always` | `--restart=Always` | `--restart=Always` | N/A |
|
| Deployment | `--restart=Always` | `--restart=Always` | `--restart=Always` | N/A |
|
||||||
| Job | `--restart=OnFailure` | `--restart=OnFailure` | `--restart=OnFailure` OR `--restart=Never` | N/A |
|
| Job | `--restart=OnFailure` | `--restart=OnFailure` | `--restart=OnFailure` OR `--restart=Never` | N/A |
|
||||||
| Scheduled Job | `--schedule=<cron>` | N/A | N/A | N/A |
|
| Cron Job | `--schedule=<cron>` | N/A | N/A | N/A |
|
||||||
|
|
||||||
Note that these flags will use a default generator only when you have not specified
|
Note that these flags will use a default generator only when you have not specified
|
||||||
any flag. This also means that combining `--generator` with other flags won't
|
any flag. This also means that combining `--generator` with other flags won't
|
||||||
|
|
|
@ -50,7 +50,7 @@ kubectl run nginx --image=nginx --command -- <cmd> <arg1> ... <argN>
|
||||||
# Start the perl container to compute π to 2000 places and print it out.
|
# Start the perl container to compute π to 2000 places and print it out.
|
||||||
kubectl run pi --image=perl --restart=OnFailure -- perl -Mbignum=bpi -wle 'print bpi(2000)'
|
kubectl run pi --image=perl --restart=OnFailure -- perl -Mbignum=bpi -wle 'print bpi(2000)'
|
||||||
|
|
||||||
# Start the scheduled job to compute π to 2000 places and print it out every 5 minutes.
|
# Start the cron job to compute π to 2000 places and print it out every 5 minutes.
|
||||||
kubectl run pi --schedule="0/5 * * * ?" --image=perl --restart=OnFailure -- perl -Mbignum=bpi -wle 'print bpi(2000)'
|
kubectl run pi --schedule="0/5 * * * ?" --image=perl --restart=OnFailure -- perl -Mbignum=bpi -wle 'print bpi(2000)'
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|
|
@ -242,7 +242,7 @@ func TestExampleObjectSchemas(t *testing.T) {
|
||||||
"redis-resource-deployment": &extensions.Deployment{},
|
"redis-resource-deployment": &extensions.Deployment{},
|
||||||
"redis-secret-deployment": &extensions.Deployment{},
|
"redis-secret-deployment": &extensions.Deployment{},
|
||||||
"run-my-nginx": &extensions.Deployment{},
|
"run-my-nginx": &extensions.Deployment{},
|
||||||
"sj": &batch.CronJob{},
|
"cronjob": &batch.CronJob{},
|
||||||
},
|
},
|
||||||
"../docs/admin": {
|
"../docs/admin": {
|
||||||
"daemon": &extensions.DaemonSet{},
|
"daemon": &extensions.DaemonSet{},
|
||||||
|
|
Loading…
Reference in New Issue