package mesos.v1.agent

Mouse Melon logoGet desktop application:
View/edit binary Protocol Buffers messages

message Call

agent.proto:33

* Calls that can be sent to the v1 agent API. A call is described using the standard protocol buffer "union" trick, see https://developers.google.com/protocol-buffers/docs/techniques#union.

message Call.AddResourceProviderConfig

agent.proto:320

Adds a new resource provider config file. The content of the `info` field will be written into a new config file in the resource provider config directory, and a new resource provider will be launched asynchronously based on the config. Callers must not set the `info.id` field. This call is idempotent, so if a config file identical to the content of the `info` field already exists, this call will return without launching a resource provider. Note that if a config file is placed into the resource provider config directory out-of-band after the agent starts up, it will not be checked against this call. Returns 200 OK if a new config file is created, or an identical config file exists. Returns 400 Bad Request if `info` is not well-formed. Returns 403 Forbidden if the call is not authorized. Returns 409 Conflict if another config file that describes a resource provider of the same type and name exists, but the content is not identical. Returns 500 Internal Server Error if anything goes wrong.

Used in: Call

message Call.AttachContainerInput

agent.proto:191

Attaches the caller to the STDIN of the entry point of the container. Clients can use this to stream input data to a container. Note that this call needs to be made on a persistent connection by streaming a CONTAINER_ID message followed by one or more PROCESS_IO messages.

Used in: Call

enum Call.AttachContainerInput.Type

agent.proto:192

Used in: AttachContainerInput

message Call.AttachContainerOutput

agent.proto:207

Attaches the caller to the STDOUT and STDERR of the entrypoint of the container. Clients can use this to stream output/error from the container. This call will result in a streaming response of `ProcessIO`; so this call needs to be made on a persistent connection.

Used in: Call

message Call.GetContainers

agent.proto:143

Lists active containers on the agent.

Used in: Call

message Call.GetMetrics

agent.proto:105

Provides a snapshot of the current metrics tracked by the agent.

Used in: Call

message Call.KillContainer

agent.proto:266

Kills the standalone or nested container. The signal to be sent to the container can be specified in the 'signal' field. Returns 200 OK if the signal is sent successfully. Returns 404 Not Found if the container does not exist.

Used in: Call

message Call.KillNestedContainer

agent.proto:161

Deprecated in favor of `KillContainer`.

Used in: Call

message Call.LaunchContainer

agent.proto:229

Launches a either a "standalone" container on this agent or a nested container within another tree of containers. A standalone container is launched by specifying a ContainerID with no parent. Standalone containers bypass the normal offer cycle between the master and agent. Unlike other containers, a standalone container does not have an executor or any tasks. This means the standalone container does not report back to Mesos or any framework and must be supervised separately. A nested container is launched by specifying a ContainerID with another existing container (including standalone containers) as the parent. Returns 200 OK if the new container launch succeeds. Returns 202 Accepted if the requested ContainerID is already in use by a standalone or nested container. Returns 400 Bad Request if the container launch fails.

Used in: Call

message Call.LaunchNestedContainer

agent.proto:149

Deprecated in favor of `LaunchContainer`.

Used in: Call

message Call.LaunchNestedContainerSession

agent.proto:180

Launches a nested container within an executor's tree of containers. The differences between this call and `LaunchNestedContainer` are: 1) The container's life-cycle is tied to the lifetime of the connection used to make this call, i.e., if the connection ever breaks, the container will be destroyed. 2) The nested container shares the same namespaces and cgroups as its parent container. 3) Results in a streaming response of type `ProcessIO`. So the call needs to be made on a persistent connection.

Used in: Call

message Call.ListFiles

agent.proto:125

Provides the file listing for a directory.

Used in: Call

message Call.PruneImages

agent.proto:370

Prune unused container images from image store. Images and layers referenced by active containers as well as image references specified in `excluded_images` will not be pruned.

Used in: Call

message Call.ReadFile

agent.proto:130

Reads data from a file.

Used in: Call

message Call.RemoveContainer

agent.proto:297

Removes a container's artifacts (runtime and sandbox directories). For nested containers, it is important to use this call if multiple nested containers are launched under the same parent container, because garbage collection only takes place at the parent container. Artifacts belonging to nested containers will not be garbage collected while the parent container is running. TODO(josephw): A standalone container's runtime directory is currently garbage collected as soon as the container exits. To allow the user to retrieve the exit status reliably, the runtime directory cannot be garbage collected immediately. Instead, the user will eventually be required to make this call after the standalone container has exited. Also, a standalone container's sandbox directory is currently not garbage collected and is only deleted via this call. Returns 200 OK if the removal is successful or if the parent container (for nested containers) does not exist. Returns 500 Internal Server Error if anything goes wrong, including if the container is still running or does not exist. TODO(josephw): Consider returning a 400 Bad Request instead of 500 Internal Server Error when the user tries to remove a running or nonexistent nested container.

Used in: Call

message Call.RemoveNestedContainer

agent.proto:167

Deprecated in favor of `RemoveContainer`.

Used in: Call

message Call.RemoveResourceProviderConfig

agent.proto:361

Removes a config file from the resource provider config directory. The config file that describes the resource provider of the specified type and name will be removed, and the corresponding resource provider will be terminated asynchronously. This call is idempotent, so if no matching config file exists, this call will return without terminating any resource provider. Note that if a config file is placed into the resource provider config directory out-of-band after the agent starts up, it will not be checked against this call. Returns 200 OK if the config file is removed, or no matching config file exists. Returns 403 Forbidden if the call is not authorized. Returns 500 Internal Server Error if anything goes wrong.

Used in: Call

message Call.SetLoggingLevel

agent.proto:116

Sets the logging verbosity level for a specified duration. Mesos uses [glog](https://github.com/google/glog) for logging. The library only uses verbose logging which means nothing will be output unless the verbosity level is set (by default it's 0, libprocess uses levels 1, 2, and 3).

Used in: Call

enum Call.Type

agent.proto:39

If a call of type `Call::FOO` requires additional parameters they can be included in the corresponding `Call::Foo` message. Similarly, if a call receives a synchronous response it will be returned as a `Response` message of type `Response::FOO`; see `Call::LaunchNestedContainerSession` and `Call::AttachContainerOutput` for exceptions.

Used in: Call

message Call.UpdateResourceProviderConfig

agent.proto:343

Updates an existing resource provider config file. The content of the `info` field will be written into an existing config file that describes a resource provider of the specified type and name in the resource provider config directory, and the corresponding resource provider will be relaunched asynchronously to reflect the changes in the config. Callers must not set the `info.id` field. This call is idempotent, so if there is no change in the config, this call will return without relaunching the resource provider. Note that if a config file is placed into the resource provider config directory out-of-band after the agent starts up, it will not be checked against this call. Returns 200 OK if an existing config file is updated, or there is no change in the config file. Returns 400 Bad Request if `info` is not well-formed. Returns 403 Forbidden if the call is not authorized. Returns 404 Not Found if no config file describes a resource provider of the same type and name exists. Returns 500 Internal Server Error if anything goes wrong.

Used in: Call

message Call.WaitContainer

agent.proto:257

Waits for the standalone or nested container to terminate and returns the exit status. Returns 200 OK if and when the container exits. Returns 404 Not Found if the container does not exist.

Used in: Call

message Call.WaitNestedContainer

agent.proto:156

Deprecated in favor of `WaitContainer`.

Used in: Call

message ProcessIO

agent.proto:640

* Streaming response to `Call::LAUNCH_NESTED_CONTAINER_SESSION` and `Call::ATTACH_CONTAINER_OUTPUT`. This message is also used to stream request data for `Call::ATTACH_CONTAINER_INPUT`.

Used in: Call.AttachContainerInput

message ProcessIO.Control

agent.proto:660

Used in: ProcessIO

message ProcessIO.Control.Heartbeat

agent.proto:667

Used in: Control

enum ProcessIO.Control.Type

agent.proto:661

Used in: Control

message ProcessIO.Data

agent.proto:647

Used in: ProcessIO

enum ProcessIO.Data.Type

agent.proto:648

Used in: Data

enum ProcessIO.Type

agent.proto:641

Used in: ProcessIO

message Response

agent.proto:410

* Synchronous responses for all calls made to the v1 agent API.

message Response.GetAgent

agent.proto:552

Contains the agent's information.

Used in: Response

message Response.GetContainers

agent.proto:489

Information about containers running on this agent. It contains ContainerStatus and ResourceStatistics along with some metadata of the containers.

Used in: Response

message Response.GetContainers.Container

agent.proto:490

Used in: GetContainers

message Response.GetExecutors

agent.proto:515

Lists information about all the executors known to the agent at the current time.

Used in: Response, GetState

message Response.GetExecutors.Executor

agent.proto:516

Used in: GetExecutors

message Response.GetFlags

agent.proto:446

Contains the flag configuration of the agent.

Used in: Response

message Response.GetFrameworks

agent.proto:504

Information about all the frameworks known to the agent at the current time.

Used in: Response, GetState

message Response.GetFrameworks.Framework

agent.proto:505

Used in: GetFrameworks

message Response.GetHealth

agent.proto:441

`healthy` would be true if the agent is healthy. Delayed responses are also indicative of the poor health of the agent.

Used in: Response

message Response.GetLoggingLevel

agent.proto:461

Contains the logging level of the agent.

Used in: Response

message Response.GetMetrics

agent.proto:456

Contains a snapshot of the current metrics.

Used in: Response

message Response.GetOperations

agent.proto:526

Lists information about all operations known to the agent at the current time.

Used in: Response

message Response.GetResourceProviders

agent.proto:558

Lists information about all resource providers known to the agent at the current time.

Used in: Response

message Response.GetResourceProviders.ResourceProvider

agent.proto:559

Used in: GetResourceProviders

message Response.GetState

agent.proto:480

Contains full state of the agent i.e. information about the tasks, frameworks and executors running in the cluster.

Used in: Response

message Response.GetTasks

agent.proto:532

Lists information about all the tasks known to the agent at the current time.

Used in: Response, GetState

message Response.GetVersion

agent.proto:451

Contains the version information of the agent.

Used in: Response

message Response.ListFiles

agent.proto:466

Contains the file listing(similar to `ls -l`) for a directory.

Used in: Response

message Response.ReadFile

agent.proto:471

Contains the file data.

Used in: Response

enum Response.Type

agent.proto:412

Each of the responses of type `FOO` corresponds to `Foo` message below.

Used in: Response

message Response.WaitContainer

agent.proto:590

Returns termination information about the standalone or nested container.

Used in: Response

message Response.WaitNestedContainer

agent.proto:568

Returns termination information about the nested container.

Used in: Response