You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@aurora.apache.org by jc...@apache.org on 2016/06/08 17:36:16 UTC

aurora git commit: Updated documentation to include custom executor explaination

Repository: aurora
Updated Branches:
  refs/heads/master 583607a9e -> e89521f1e


Updated documentation to include custom executor explaination

Reviewed at https://reviews.apache.org/r/48360/


Project: http://git-wip-us.apache.org/repos/asf/aurora/repo
Commit: http://git-wip-us.apache.org/repos/asf/aurora/commit/e89521f1
Tree: http://git-wip-us.apache.org/repos/asf/aurora/tree/e89521f1
Diff: http://git-wip-us.apache.org/repos/asf/aurora/diff/e89521f1

Branch: refs/heads/master
Commit: e89521f1eebd9a5301eb02e2ed6ffebdecd54c9a
Parents: 583607a
Author: Renan DelValle <rd...@binghamton.edu>
Authored: Wed Jun 8 12:35:51 2016 -0500
Committer: Joshua Cohen <jc...@apache.org>
Committed: Wed Jun 8 12:35:51 2016 -0500

----------------------------------------------------------------------
 docs/operations/configuration.md | 117 +++++++++++++++++++++++++++++++++-
 1 file changed, 116 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/aurora/blob/e89521f1/docs/operations/configuration.md
----------------------------------------------------------------------
diff --git a/docs/operations/configuration.md b/docs/operations/configuration.md
index 65cf64a..e332f86 100644
--- a/docs/operations/configuration.md
+++ b/docs/operations/configuration.md
@@ -143,7 +143,122 @@ If you need to do computation before starting the thermos executor (for example,
 For example, to wrap the executor inside a simple wrapper, the scheduler will be started like this
 `-thermos_executor_path=/path/to/wrapper.sh -thermos_executor_resources=/usr/share/aurora/bin/thermos_executor.pex`
 
-
+## Custom Executor\u2028\u2028
+
+If the need arises to use a Mesos executor other than the Thermos executor, the scheduler can be
+configured to utilize a custom executor by specifying the `-custom_executor_config` flag.
+The flag must be set to the path of a valid executor configuration file.\u2028
+
+The configuration file must be valid JSON and contain, at minimum, the name, command and resources fields.
+
+
+### executor
+
+Property                 | Description
+-----------------------  | ---------------------------------
+name (required)          | Name of the executor.
+command (required)       | How to run the executor.
+resources (required)     | Overhead to use for each executor instance.
+
+#### command
+
+Property                 | Description
+-----------------------  | ---------------------------------
+value (required)         | The command to execute.
+arguments (optional)     | A list of arguments to pass to the command.
+uris (optional)          | List of resources to download into the task sandbox.
+
+##### uris (list)
+* Follows the [Mesos Fetcher schema](http://mesos.apache.org/documentation/latest/fetcher/)
+
+Property                 | Description
+-----------------------  | ---------------------------------
+value (required)         | Path to the resource needed in the sandbox.
+executable (optional)    | Change resource to be executable via chmod.
+extract (optional)       | Extract files from packed or compressed archives into the sandbox.
+cache (optional)         | Use caching mechanism provided by Mesos for resources.
+
+#### resources (list)
+
+Property             | Description
+-------------------  | ---------------------------------
+name (required)      | Name of the resource: cpus or mem.
+type (required)      | Type of resource. Should always be SCALAR.
+scalar (required)    | Value in float for cpus or int for mem (in MBs)
+
+### volume_mounts (list)
+
+Property                  | Description
+------------------------  | ---------------------------------
+host_path (required)      | Host path to mount inside the container.
+container_path (required) | Path inside the container where `host_path` will be mounted.
+mode (required)           | Mode in which to mount the volume, Read-Write (RW) or Read-Only (RO).
+
+
+A sample configuration is as follows:\u2028
+```
+     {
+       "executor": {
+         "name": "myExecutor",
+         "command": {
+           "value": "myExecutor.sh",
+           "arguments": [
+             "localhost:2181",
+             "-verbose",
+             "-config myConfiguration.config"
+           ],
+           "uris": [
+             {
+               "value": "/dist/myExecutor.sh",
+               "executable": true,
+               "extract": false,
+               "cache": true
+             },
+             {
+               "value": "/home/user/myConfiguration.config",
+               "executable": false,
+               "extract": false,
+               "cache": false
+             }
+           ]
+         },
+         "resources": [
+           {
+             "name": "cpus",
+             "type": "SCALAR",
+             "scalar": {
+               "value": 1.00
+             }
+           },
+           {
+             "name": "mem",
+             "type": "SCALAR",
+             "scalar": {
+               "value": 512
+             }
+           }
+         ]
+       },
+       "volume_mounts": [
+         {
+           "mode": "RO",
+           "container_path": "/path/on/container",
+           "host_path": "/path/to/host/directory"
+         },
+         {
+           "mode": "RW",
+           "container_path": "/container",
+           "host_path": "/host"
+         }
+       ]
+     }
+```
+
+It should be noted that if you do not use thermos or a thermos based executor, links in the scheduler's
+Web UI for tasks\u2028 will not work (at least for the time being).
+Some information about launched tasks can still be accessed via the Mesos Web UI or via the Aurora Client.
+Furthermore, this configuration replaces the default thermos executor.
+Work is in progress to allow support for multiple executors to co-exist within a single scheduler.
 
 ### Docker containers
 In order for Aurora to launch jobs using docker containers, a few extra configuration options