Serverless | Standard / Stateful | Cron | |
---|---|---|---|
Allow multiple containers | ✔ | ✔ | ✔ |
Scale to Zero | ✔ | ||
Must expose one HTTP port | ✔ | ||
Allow no exposed ports | ✔ | ✔ | |
Allow multiple exposed ports | ✔ | ||
Unable to expose any ports | ✔ | ||
Custom Domain requests have the HOST header of the custom domain | ✔ | ||
Fast switching update between versions | ✔ | ||
Rolling update between versions | ✔ | ||
Autoscale by CPU | ✔ | ✔ | |
Autoscale by requests per second | ✔ | ✔ | |
Autoscale by concurrent requests | ✔ | ||
Autoscale by request latency | ✔ | ||
Runs on a schedule and is expected to complete | ✔ | ||
Readiness/liveness probes default to TCP check of container port | ✔ | ||
Readiness/liveness probes default to disabled | ✔ | ✔ |
job.schedule
job.concurrencyPolicy
Forbid
or Replace
. This determines what Control Plane will do when a prior execution of your workload is still running when the next scheduled execution time arrives.
Forbid
: subsequent executions will be forgone until the running execution completes.Replace
: the running execution will be stopped so that a new execution can begin.job.historyLimit
job.restartPolicy
Never
or OnFailure
. This determines whether your workload will be restarted when it fails on execution.job.activeDeadlineSeconds
runCronWorkload
command via POST https://api.cpln.io/org/my-org/gvc/my-gvc/workload/my-cron-workload/-command
location
containerOverrides
containerOverrides[].name
containerOverrides[].command
workload.containers[].command
in the workload specification.containerOverrides[].cpu
workload.containers[].cpu
in the workload specification.containerOverrides[].memory
workload.containers[].memory
in the workload specification.containerOverrides[].image
workload.containers[].image
in the workload specification.containerOverrides[].args
workload.containers[].args
in the workload specification.containerOverrides[].env
workload.containers[].env
in the workload specification.cpln
CLI via cpln workload cron start
. e.g.
job.historyLimit
job executions in its history. Each job execution will be in one of the following statuses:
job.concurrencyPolicy
is Replace
and while the job was still executing, job.Schedule
dictated that the job should begin again.job.activeDeadlineSeconds
limit was exceeded.spec.loadBalancer.replicaDirect
to true
. Click here to see the endpoint format.
minCpu
and minMemory
minCpu
and minMemory
to a low value. These values are used to reserve resources on Control Plane. In Kubernetes parlance, these values are the resource requests
minCpu
minCpu
and cpu
can be at most 4000m apartminCpu
and cpu
must be at least 1:4minMemory
minMemory
and memory
can be at most 4096Mi apartminMemory
and memory
must be at least 1:4{replicaIdentity}.{workloadName}
e.g. for a workload called my-workload, the replica hostnames would be:
curl http://my-workload-1.my-workload:8080
from another workload running on Control Plane
cpln://volumeset/
.