Get desktop application:
View/edit binary Protocol Buffers messages
Configuration of a job creation.
Used in:
Batch size for the creation which controls how many instances may be created at the same time.
Maximum number of times a failing instance will be retried during the creation. If the value is 0, the instance can be retried for infinite times.
Maximum number of instance failures before the creation is declared to be failed. If the value is 0, there is no limit for max failure instances and the creation is marked successful even if all of the instances fail.
If set to true, indicates that the creation should start in the paused state, requiring an explicit resume to roll forward.
Information of a job, such as job spec and status
Used in:
Job ID
Job configuration
Job runtime status
Stateless job configuration.
Used in:
, , , , , ,Revision of the job config
Name of the job
Owner of the job
Owning team of the job
LDAP groups of the job
Description of the job
List of user-defined labels for the job
Number of instances of the job
SLA config of the job
Default pod configuration of the job
Instance specific pod config which overwrites the default one
Resource Pool ID where this job belongs to
Runtime states of a Job.
Used in:
,Invalid job state.
The job has been initialized and persisted in DB.
All tasks have been created and persisted in DB, but no task is RUNNING yet.
Any of the tasks in the job is in RUNNING state.
All tasks in the job are in SUCCEEDED state.
All tasks in the job are in terminated state and one or more tasks is in FAILED state.
All tasks in the job are in terminated state and one or more tasks in the job is killed by the user.
All tasks in the job have been requested to be killed by the user.
The job is partially created and is not ready to be scheduled
The job has been deleted.
The current runtime status of a Job.
Used in:
, , ,Revision of the current job status. Version in the revision is incremented every time job status changes. Thus, it can be used to order the different job status updates.
State of the job
The time when the job was created. The time is represented in RFC3339 form with UTC timezone.
The number of pods grouped by each pod state. The map key is the pod.PodState in string format and the map value is the number of tasks in the particular state.
Goal state of the job.
The current version of the job. It is used to implement optimistic concurrency control for all job write APIs. The current job configuration can be fetched based on the current resource version.
Status of ongoing update/restart workflow.
DEPRECATED, will remove in the next release The number of tasks grouped by which configuration version they are on. The map key is the job configuration version and the map value is the number of tasks using that particular job configuration version. The job configuration version in the map key can be fed as the value of the entity version in the GetJobRequest to fetch the job configuration.
The number of pods grouped by which entity version and the state they are on. The map key is the entity version (which can be used to fetch the job configuration) and the map value is PodStateStats.
PodStateStats indicates the number of tasks of a particular state in a job
Used in:
The map key is pod state, the value is number of pods running in that state.
Summary of job spec and status. The summary will be returned by List or Query API calls. These calls will return a large number of jobs, so the content in the job summary has to be kept minimal.
Used in:
, , ,Job ID
Name of the job
Owner of the job
Owning team of the job
List of user-defined labels for the job
Number of instances of the job
Resource Pool ID where this job belongs to
Job runtime status
Job SLA Spec
QuerySpec specifies the list of query criteria for jobs. All indexed fields should be part of this message. And all fields in this message have to be indexed too.
Used in:
,The spec of how to do pagination for the query results.
List of labels to query the jobs. Will match all jobs if the list is empty.
List of keywords to query the jobs. Will match all jobs if the list is empty. When set, will do a wildcard match on owner, name, labels, description.
List of job states to query the jobs. Will match all jobs if the list is empty.
The resource pool to query the jobs. Will match jobs from all resource pools if unset.
Query jobs by owner. This is case sensitive and will look for jobs with owner matching the exact owner string. Will match all jobs if owner is unset.
Query jobs by name. This is case sensitive and will look for jobs with name matching the name string. Will support partial name match. Will match all jobs if name is unset.
Query jobs by creation time range. This will look for all jobs that were created within a specified time range. This search will operate based on job creation time.
Query jobs by completion time range. This will look for all jobs that were completed within a specified time range. This search will operate based on job completion time.
Configuration of a job restart
Used in:
,Batch size for the restart which controls how many instances may be restarted at the same time.
The pods to restart, default to all.
If set to true, peloton would try to place the task restarted on the host it previously run on. It is best effort, and has no guarantee of success.
SLA configuration for a stateless job
Used in:
,Priority of a job. Higher value takes priority over lower value when making scheduling decisions as well as preemption decisions.
Whether all the job instances are preemptible. If so, it might be scheduled elastic resources from other resource pools and subject to preemption when the demands of other resource pools increase. For stateless jobs, this field will overrule preemptible configuration in the pod spec.
Whether all the job instances are revocable. If so, it might be scheduled using revocable resources and subject to preemption when there is resource contention on the host. For stateless jobs, this field will overrule revocable configuration in the pod spec.
Maximum number of job instances which can be unavailable at a given time. When job instances are to be moved from one host to another for host maintenance and/or load redistribution, Peloton ensures number of job instances unavailable at a given time doesn't exceed the number configured here. However, the instances that become unavailable due to job update can exceed this number.
Configuration of a job update.
Used in:
, ,Batch size for the update which controls how many instances may be updated at the same time.
If configured, the update be automatically rolled back to the previous job configuration on failure.
Maximum number of times a failing instance will be retried during the update. If the value is 0, the instance can be retried for infinite times.
Maximum number of instance failures before the update is declared to be failed. If the value is 0, there is no limit for max failure instances and the update is marked successful even if all of the instances fail.
If set to true, indicates that the update should start in the paused state, requiring an explicit resume to roll forward.
If set to true, peloton would try to place the task updated on the host it previously run on. It is best effort, and has no guarantee of success.
Experimental: this flag is for experimental purpose and will be removed in the future release. When set to true, peloton would start pods updated, if the pods are killed previously. By default, killed pods would remain killed, and run with new version when running again.
WorkflowEvents are workflow state change events for a job or pod on workflow operations
Used in:
, ,Workflow type.
Timestamp of the event represented in RFC3339 form with UTC timezone.
Current runtime state of the workflow.
Information about a workflow including its status and specification
Used in:
,Workflow status
Update specification for update workflow
Restart specification provided for restart workflow
Opaque data supplied by the client
job workflow events represents update state changes
Instances added by update workflow
Instances removed by update workflow
Instances updated by update workflow
Used in:
The instance ID
Instance workflow events
Runtime state of a job workflow.
Used in:
,Invalid protobuf value
The operation has been created but not started yet.
The workflow is rolling forward
The workflow has been paused
The workflow has completed successfully
The update was aborted/cancelled
The workflow has failed to complete.
The update is rolling backward
The update was rolled back due to failure
Runtime status of a job workflow.
Used in:
,Workflow type.
Current runtime state of the workflow.
Number of instances completed.
Number of instances remaining.
Number of instances which failed to come up after the workflow.
Current instances being operated on.
Job version the workflow moved the job object to.
Previous job version of the job object.
The time when the workflow was created. The time is represented in RFC3339 form with UTC timezone.
The time when the workflow was last updated. The time is represented in RFC3339 form with UTC timezone.
Previous runtime state of the workflow.
The time when the workflow completed. The time is represented in RFC3339 form with UTC timezone.
The different types of job rolling workflows supported.
Used in:
,Invalid protobuf value.
Job update workflow.
Restart pods in a job.