-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/28920/#review65249
-----------------------------------------------------------
There some issues here with usability that maybe this patch doesn't need to
address, but should be tracked in a jira if it isn't.
The main usability issues are:
* The user should be able to go to the web ui and click "show config" to
show the docker image the user specified.
* When the docker pull fails (user specified bogus image) the user sees
"Abnormal executor termination"
* when docker run fails (say, dockerd isn't running) the user sees
"Unregistered executor"
* the instance state in the webui is "ASSIGNED" (or is it ASSINGING?) when
the docker pull is happening, which could take a while
For the last three of these I believe mesos needs to be modified to send the
scheduler more state.
Related to this is that when the docker pull takes longer than
transient_state_task_timeout aurora will give up and fail the task.
- Jay Buffington
On Dec. 16, 2014, 9:19 p.m., Steve Niemitz wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/28920/
> -----------------------------------------------------------
>
> (Updated Dec. 16, 2014, 9:19 p.m.)
>
>
> Review request for Aurora, Jay Buffington, Kevin Sweeney, and Bill Farner.
>
>
> Bugs: AURORA-633
> https://issues.apache.org/jira/browse/AURORA-633
>
>
> Repository: aurora
>
>
> Description
> -------
>
> This change adds support for launching docker containers through aurora.
> These changes are based off of the discussion in
> https://issues.apache.org/jira/browse/AURORA-633
>
> As of now, a special thermos_executor.sh script is needed to launch the
> executor inside docker containers. A sample script is in
> examples/jobs/docker, as well as an example aurora file.
>
> In addition, mesos-slave must be run with `--containerizers=docker,mesos`,
> the example upstart config in examples/vagrant/upstart has been updated to
> reflect this.
>
> The thermos root path defaults to /var/run/thermos, however if a different
> path is used, it must be passed to the scheduler via
> `--thermos_observer_root=<some path>`
>
>
> Diffs
> -----
>
> Vagrantfile f8b7db8eebdc6a10989de3bc9a2c3e89ce17f5fc
> api/src/main/thrift/org/apache/aurora/gen/api.thrift
> 5665c69cd7b49c3fd7345074c9f16a3b224496ab
> api/src/main/thrift/org/apache/thermos/thermos_internal.thrift
> 2c449a491bc5a8ac858ea6487e4cef0591f36f66
> examples/jobs/docker/Dockerfile PRE-CREATION
> examples/jobs/docker/hello_docker.aurora PRE-CREATION
> examples/jobs/docker/hello_docker.py PRE-CREATION
> examples/jobs/docker/thermos_executor.sh PRE-CREATION
> examples/vagrant/aurorabuild.sh 69983d0140b76c6869cd04e55d760f3e3a1e4262
> examples/vagrant/upstart/mesos-slave.conf
> 512ce7ecf34042ed68dda55efb2dd0415f8469db
> src/main/java/org/apache/aurora/scheduler/app/SchedulerMain.java
> 72c7545e7f16549f6a9ccb5fb74a06f154a7ea94
> src/main/java/org/apache/aurora/scheduler/async/GcExecutorLauncher.java
> 5226e3d1b303b1773a057078f2911c5ec2aa97f5
> src/main/java/org/apache/aurora/scheduler/async/TaskScheduler.java
> ead9d28100673440168a32d114ecaa15874978a6
> src/main/java/org/apache/aurora/scheduler/base/CommandUtil.java
> d885b224ec5a1d529347d84e03ba98ab6734a126
> src/main/java/org/apache/aurora/scheduler/mesos/MesosTaskFactory.java
> 5bf283062c9d119ff91ed45da8b236e36d0fc9aa
> src/main/python/apache/aurora/config/thrift.py
> ba94ac3c0cbaf3c91eb1a1d86a244ed6fa3b649c
> src/main/python/apache/aurora/executor/aurora_executor.py
> 636b23d30a897b557eb8c3f8733c90b23cb807ef
> src/main/python/apache/aurora/executor/bin/thermos_executor_main.py
> 9df9b4b79c0c7d29c5088409bf15c0d32a621df0
> src/main/python/apache/aurora/executor/common/sandbox.py
> f47a32b3fefb4a89940b1ddc473b8316ac00df12
> src/main/python/apache/aurora/executor/thermos_task_runner.py
> 5e4bd65537d186459003c0b9434f1b769e04f448
> src/main/python/apache/thermos/bin/thermos_runner.py
> 647de2771f301b17de33d8b45198c211d2e84367
> src/main/python/apache/thermos/config/schema_base.py
> f9143cc1b83143d6147f59d90c79435d055d0518
> src/main/python/apache/thermos/core/runner.py
> 8aac6b50c66080abbb5308b367e9f74c487f42e3
> src/main/python/apache/thermos/observer/task_observer.py
> cd528dcca3f5a330359cf38005f3a1a0329a4886
> src/test/java/org/apache/aurora/scheduler/app/SchedulerIT.java
> 5e54364a49a208bd5f19b9649633dc8feca591e9
> src/test/java/org/apache/aurora/scheduler/base/CommandUtilTest.java
> 876e173ccbac04e4a06a245648c7c6af15eaaa92
>
> src/test/java/org/apache/aurora/scheduler/mesos/MesosTaskFactoryImplTest.java
> ddcb511d108220ab5e4efcf3496458f7ab4a20c2
> src/test/python/apache/aurora/executor/test_thermos_executor.py
> 503e62f4cac872b14f6985b5bccc3e4dfcf81789
>
> Diff: https://reviews.apache.org/r/28920/diff/
>
>
> Testing
> -------
>
>
> Thanks,
>
> Steve Niemitz
>
>