Author: dlester
Date: Wed Aug 26 20:12:12 2015
New Revision: 1697999
URL: http://svn.apache.org/r1697999
Log:
Update Aurora website to reflect latest documentation.
Added:
aurora/site/publish/documentation/latest/build-system/
aurora/site/publish/documentation/latest/build-system/index.html
aurora/site/publish/documentation/latest/presentations/
aurora/site/publish/documentation/latest/presentations/index.html
aurora/site/source/documentation/latest/build-system.md
aurora/site/source/documentation/latest/presentations.md
Modified:
aurora/site/publish/documentation/latest/configuration-reference/index.html
aurora/site/publish/documentation/latest/cron-jobs/index.html
aurora/site/publish/documentation/latest/deploying-aurora-scheduler/index.html
aurora/site/publish/documentation/latest/developing-aurora-client/index.html
aurora/site/publish/documentation/latest/developing-aurora-scheduler/index.html
aurora/site/publish/documentation/latest/index.html
aurora/site/publish/documentation/latest/sla/index.html
aurora/site/publish/documentation/latest/storage-config/index.html
aurora/site/publish/documentation/latest/test-resource-generation/index.html
aurora/site/publish/documentation/latest/vagrant/index.html
aurora/site/publish/sitemap.xml
aurora/site/source/documentation/latest.html.md
aurora/site/source/documentation/latest/configuration-reference.md
aurora/site/source/documentation/latest/cron-jobs.md
aurora/site/source/documentation/latest/deploying-aurora-scheduler.md
aurora/site/source/documentation/latest/developing-aurora-client.md
aurora/site/source/documentation/latest/developing-aurora-scheduler.md
aurora/site/source/documentation/latest/sla.md
aurora/site/source/documentation/latest/storage-config.md
aurora/site/source/documentation/latest/test-resource-generation.md
aurora/site/source/documentation/latest/vagrant.md
Added: aurora/site/publish/documentation/latest/build-system/index.html
URL:
http://svn.apache.org/viewvc/aurora/site/publish/documentation/latest/build-system/index.html?rev=1697999&view=auto
==============================================================================
--- aurora/site/publish/documentation/latest/build-system/index.html (added)
+++ aurora/site/publish/documentation/latest/build-system/index.html Wed Aug 26
20:12:12 2015
@@ -0,0 +1,167 @@
+<!DOCTYPE html>
+<html lang="en">
+ <head>
+ <meta charset="utf-8">
+ <meta name="viewport" content="width=device-width, initial-scale=1">
+ <title>Apache Aurora</title>
+ <link rel="stylesheet"
href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.1/css/bootstrap.min.css">
+ <link href="/assets/css/main.css" rel="stylesheet">
+ <!-- Analytics -->
+ <script type="text/javascript">
+ var _gaq = _gaq || [];
+ _gaq.push(['_setAccount', 'UA-45879646-1']);
+ _gaq.push(['_setDomainName', 'apache.org']);
+ _gaq.push(['_trackPageview']);
+
+ (function() {
+ var ga = document.createElement('script'); ga.type =
'text/javascript'; ga.async = true;
+ ga.src = ('https:' == document.location.protocol ?
'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
+ var s = document.getElementsByTagName('script')[0];
s.parentNode.insertBefore(ga, s);
+ })();
+ </script>
+ </head>
+ <body>
+
+ <div class="container-fluid section-header">
+ <div class="container">
+ <div class="nav nav-bar">
+ <a href="/"><img src="/assets/img/aurora_logo_dkbkg.svg" width="300"
alt="Transparent Apache Aurora logo with dark background"/></a>
+ <ul class="nav navbar-nav navbar-right">
+ <li><a href="/documentation/latest/">Documentation</a></li>
+ <li><a href="/community/">Community</a></li>
+ <li><a href="/downloads/">Downloads</a></li>
+ <li><a href="/blog/">Blog</a></li>
+ </ul>
+ </div>
+ </div>
+</div>
+ <div class="container-fluid">
+ <div class="container content">
+ <div class="col-md-12 documentation">
+<h5 class="page-header text-uppercase">Documentation</h5>
+<p>The Python components of Aurora are built using <a
href="https://pantsbuild.github.io">Pants</a>.</p>
+
+<h1 id="python-build-conventions">Python Build Conventions</h1>
+
+<p>The Python code is laid out according to the following conventions: </p>
+
+<ol>
+<li><p>1 <code>BUILD</code> per 3rd level directory. For a list of current
top-level packages run:</p>
+<pre class="highlight text">% find src/main/python -maxdepth 3 -mindepth 3
-type d |\
+while read dname; do echo $dname |\
+ sed 's@src/main/python/\(.*\)/\(.*\)/\(.*\).*@\1.\2.\3@'; done
+</pre></li>
+<li><p>Each <code>BUILD</code> file exports 1
+<a
href="https://pantsbuild.github.io/build_dictionary.html#bdict_python_library"><code>python_library</code></a>
+that provides a
+<a
href="https://pantsbuild.github.io/build_dictionary.html#setup_py"><code>setup_py</code></a>
+containing each
+<a
href="https://pantsbuild.github.io/build_dictionary.html#python_binary"><code>python_binary</code></a>
+in the <code>BUILD</code> file, named the same as the directory it’s in
so that it can be referenced
+without a ’:’ character. The <code>sources</code> field in the
<code>python_library</code> will almost always be
+<code>rglobs('*.py')</code>.</p></li>
+<li><p>Other BUILD files may only depend on this single public
<code>python_library</code>
+target. Any other target is considered a private implementation detail and
+should be prefixed with an <code>_</code>.</p></li>
+<li><p><code>python_binary</code> targets are always named the same as the
exported console script.</p></li>
+<li><p><code>python_binary</code> targets must have identical
<code>dependencies</code> to the <code>python_library</code> exported
+by the package and must use <code>entry_point</code>.</p>
+
+<p>The means a PEX file generated by pants will contain exactly the same files
that will be
+available on the <code>PYTHONPATH</code> in the case of <code>pip
install</code> of the corresponding library
+target. This will help our migration off of Pants in the future.</p></li>
+</ol>
+
+<h2 id="annotated-example-apache-thermos-runner">Annotated example -
apache.thermos.runner</h2>
+<pre class="highlight text">% find src/main/python/apache/thermos/runner
+src/main/python/apache/thermos/runner
+src/main/python/apache/thermos/runner/__init__.py
+src/main/python/apache/thermos/runner/thermos_runner.py
+src/main/python/apache/thermos/runner/BUILD
+% cat src/main/python/apache/thermos/runner/BUILD
+# License boilerplate omitted
+import os
+
+
+# Private target so that a setup_py can exist without a circular dependency.
Only targets within
+# this file should depend on this.
+python_library(
+ name = '_runner',
+ # The target covers every python file under this directory and
subdirectories.
+ sources = rglobs('*.py'),
+ dependencies = [
+ '3rdparty/python:twitter.common.app',
+ '3rdparty/python:twitter.common.log',
+ # Source dependencies are always referenced without a ':'.
+ 'src/main/python/apache/thermos/common',
+ 'src/main/python/apache/thermos/config',
+ 'src/main/python/apache/thermos/core',
+ ],
+)
+
+# Binary target for thermos_runner.pex. Nothing should depend on this -
it's only used as an
+# argument to ./pants binary.
+python_binary(
+ name = 'thermos_runner',
+ # Use entry_point, not source so the files used here are the same ones tests
see.
+ entry_point = 'apache.thermos.bin.thermos_runner',
+ dependencies = [
+ # Notice that we depend only on the single private target from this BUILD
file here.
+ ':_runner',
+ ],
+)
+
+# The public library that everyone importing the runner symbols uses.
+# The test targets and any other dependent source code should depend on this.
+python_library(
+ name = 'runner',
+ dependencies = [
+ # Again, notice that we depend only on the single private target from this
BUILD file here.
+ ':_runner',
+ ],
+ # We always provide a setup_py. This will cause any dependee libraries to
automatically
+ # reference this library in their requirements.txt rather than copy the
source files into their
+ # sdist.
+ provides = setup_py(
+ # Conventionally named and versioned.
+ name = 'apache.thermos.runner',
+ version = open(os.path.join(get_buildroot(),
'.auroraversion')).read().strip().upper(),
+ ).with_binaries({
+ # Every binary in this file should also be repeated here.
+ # Always use the dict-form of .with_binaries so that commands with dashes
in their names are
+ # supported.
+ # The console script name is always the same as the PEX with .pex stripped.
+ 'thermos_runner': ':thermos_runner',
+ }),
+)
+</pre></div>
+
+ </div>
+ </div>
+
+ <div class="container-fluid section-footer buffer">
+ <div class="container">
+ <div class="row">
+ <div class="col-md-2 col-md-offset-1"><h3>Quick Links</h3>
+ <ul>
+ <li><a href="/downloads/">Downloads</a></li>
+ <li><a href="/community/">Mailing Lists</a></li>
+ <li><a
href="http://issues.apache.org/jira/browse/AURORA">Issue Tracking</a></li>
+ <li><a href="/documentation/latest/contributing/">How
To Contribute</a></li>
+ </ul>
+ </div>
+ <div class="col-md-2"><h3>The ASF</h3>
+ <ul>
+ <li><a href="http://www.apache.org/licenses/">License</a></li>
+ <li><a
href="http://www.apache.org/foundation/sponsorship.html">Sponsorship</a></li>
+ <li><a
href="http://www.apache.org/foundation/thanks.html">Thanks</a></li>
+ <li><a href="http://www.apache.org/security/">Security</a></li>
+ </ul>
+ </div>
+ <div class="col-md-6">
+ <p class="disclaimer">Copyright 2014 <a
href="http://www.apache.org/">Apache Software Foundation</a>. Licensed under
the <a href="http://www.apache.org/licenses/">Apache License v2.0</a>. The <a
href="https://www.flickr.com/photos/trondk/12706051375/">Aurora Borealis IX
photo</a> displayed on the homepage is available under a <a
href="https://creativecommons.org/licenses/by-nc-nd/2.0/">Creative Commons
BY-NC-ND 2.0 license</a>. Apache, Apache Aurora, and the Apache feather logo
are trademarks of The Apache Software Foundation.</p>
+ </div>
+ </div>
+ </div>
+ </body>
+</html>
\ No newline at end of file
Modified:
aurora/site/publish/documentation/latest/configuration-reference/index.html
URL:
http://svn.apache.org/viewvc/aurora/site/publish/documentation/latest/configuration-reference/index.html?rev=1697999&r1=1697998&r2=1697999&view=diff
==============================================================================
--- aurora/site/publish/documentation/latest/configuration-reference/index.html
(original)
+++ aurora/site/publish/documentation/latest/configuration-reference/index.html
Wed Aug 26 20:12:12 2015
@@ -85,6 +85,7 @@
<li><a href="#healthcheckconfig-objects">HealthCheckConfig Objects</a></li>
<li><a href="#announcer-objects">Announcer Objects</a></li>
<li><a href="#container">Container Objects</a></li>
+<li><a href="#lifecycleconfig-objects">LifecycleConfig Objects</a></li>
</ul></li>
<li><a href="#specifying-scheduling-constraints">Specifying Scheduling
Constraints</a></li>
<li><a href="#template-namespaces">Template Namespaces</a>
@@ -551,6 +552,11 @@ resources are allocated.</p>
<td style="text-align: center"><code>Container</code> object</td>
<td>An optional container to run all processes inside of.</td>
</tr>
+<tr>
+<td><code>lifecycle</code></td>
+<td style="text-align: center"><code>LifecycleConfig</code> object</td>
+<td>An optional task lifecycle configuration that dictates commands to be
executed on startup/teardown. HTTP lifecycle is enabled by default if the
“health” port is requested. See <a
href="#lifecycleconfig-objects">LifecycleConfig Objects</a> for more
information.</td>
+</tr>
</tbody></table>
<h3 id="services">Services</h3>
@@ -638,14 +644,29 @@ either due to human error or machine fai
<td>Interval on which to check the task’s health via HTTP. (Default:
10)</td>
</tr>
<tr>
+<td><code>max_consecutive_failures</code></td>
+<td style="text-align: center">Integer</td>
+<td>Maximum number of consecutive failures that tolerated before considering a
task unhealthy (Default: 0)</td>
+</tr>
+<tr>
<td><code>timeout_secs</code></td>
<td style="text-align: center">Integer</td>
<td>HTTP request timeout. (Default: 1)</td>
</tr>
<tr>
-<td><code>max_consecutive_failures</code></td>
+<td><code>endpoint</code></td>
+<td style="text-align: center">String</td>
+<td>HTTP endpoint to check (Default: /health)</td>
+</tr>
+<tr>
+<td><code>expected_response</code></td>
+<td style="text-align: center">String</td>
+<td>If not empty, fail the health check if the response differs. Case
insensitive. (Default: ok)</td>
+</tr>
+<tr>
+<td><code>expected_response_code</code></td>
<td style="text-align: center">Integer</td>
-<td>Maximum number of consecutive failures that tolerated before considering a
task unhealthy (Default: 0)</td>
+<td>If not zero, fail the health check if the response code differs. (Default:
0)</td>
</tr>
</tbody></table>
@@ -734,8 +755,96 @@ guarantees should they be needed.</p>
<td style="text-align: center">String</td>
<td>The name of the docker image to execute. If the image does not exist
locally it will be pulled with <code>docker pull</code>.</td>
</tr>
+<tr>
+<td><code>parameters</code></td>
+<td style="text-align: center">List(Parameter)</td>
+<td>Additional parameters to pass to the docker containerizer.</td>
+</tr>
+</tbody></table>
+
+<h3 id="docker-parameter-object">Docker Parameter Object</h3>
+
+<p>Docker CLI parameters. This needs to be enabled by the scheduler
<code>enable_docker_parameters</code> option.
+See <a href="https://docs.docker.com/reference/commandline/run/">Docker
Command Line Reference</a> for valid parameters. </p>
+
+<table><thead>
+<tr>
+<th>param</th>
+<th style="text-align: center">type</th>
+<th>description</th>
+</tr>
+</thead><tbody>
+<tr>
+<td><code>name</code></td>
+<td style="text-align: center">String</td>
+<td>The name of the docker parameter. E.g. volume</td>
+</tr>
+<tr>
+<td><code>value</code></td>
+<td style="text-align: center">String</td>
+<td>The value of the parameter. E.g. /usr/local/bin:/usr/bin:rw</td>
+</tr>
</tbody></table>
+<h3 id="lifecycleconfig-objects">LifecycleConfig Objects</h3>
+
+<p><em>Note: The only lifecycle configuration supported is the HTTP lifecycle
via the HTTPLifecycleConfig.</em></p>
+
+<table><thead>
+<tr>
+<th>param</th>
+<th style="text-align: center">type</th>
+<th>description</th>
+</tr>
+</thead><tbody>
+<tr>
+<td><code>http</code></td>
+<td style="text-align: center">HTTPLifecycleConfig</td>
+<td>Configure the lifecycle manager to send lifecycle commands to the task via
HTTP.</td>
+</tr>
+</tbody></table>
+
+<h3 id="httplifecycleconfig-objects">HTTPLifecycleConfig Objects</h3>
+
+<table><thead>
+<tr>
+<th>param</th>
+<th style="text-align: center">type</th>
+<th>description</th>
+</tr>
+</thead><tbody>
+<tr>
+<td><code>port</code></td>
+<td style="text-align: center">String</td>
+<td>The named port to send POST commands (Default: health)</td>
+</tr>
+<tr>
+<td><code>graceful_shutdown_endpoint</code></td>
+<td style="text-align: center">String</td>
+<td>Endpoint to hit to indicate that a task should gracefully shutdown.
(Default: /quitquitquit)</td>
+</tr>
+<tr>
+<td><code>shutdown_endpoint</code></td>
+<td style="text-align: center">String</td>
+<td>Endpoint to hit to give a task its final warning before being killed.
(Default: /abortabortabort)</td>
+</tr>
+</tbody></table>
+
+<h4 id="gracefulshutdownendpoint">graceful<em>shutdown</em>endpoint</h4>
+
+<p>If the Job is listening on the port as specified by the HTTPLifecycleConfig
+(default: <code>health</code>), a HTTP POST request will be sent over
localhost to this
+endpoint to request that the task gracefully shut itself down. This is a
+courtesy call before the <code>shutdown_endpoint</code> is invoked a fixed
amount of
+time later.</p>
+
+<h4 id="shutdown_endpoint">shutdown_endpoint</h4>
+
+<p>If the Job is listening on the port as specified by the HTTPLifecycleConfig
+(default: <code>health</code>), a HTTP POST request will be sent over
localhost to this
+endpoint to request as a final warning before being shut down. If the task
+does not shut down on its own after this, it will be forcefully killed</p>
+
<h1 id="specifying-scheduling-constraints">Specifying Scheduling
Constraints</h1>
<p>Most users will not need to specify constraints explicitly, as the
Modified: aurora/site/publish/documentation/latest/cron-jobs/index.html
URL:
http://svn.apache.org/viewvc/aurora/site/publish/documentation/latest/cron-jobs/index.html?rev=1697999&r1=1697998&r2=1697999&view=diff
==============================================================================
--- aurora/site/publish/documentation/latest/cron-jobs/index.html (original)
+++ aurora/site/publish/documentation/latest/cron-jobs/index.html Wed Aug 26
20:12:12 2015
@@ -118,7 +118,7 @@ grow faster than they can process it.</p
<p>Unlike with services, which aurora will always re-execute regardless of
exit status, instances of
cron jobs retry according to the <code>max_task_failures</code> attribute of
the
-<a href="configuration-reference.md#task-objects">Task</a> object. To get
“run-until-failure” semantics,
+<a href="configuration-reference.md#task-objects">Task</a> object. To get
“run-until-success” semantics,
set <code>max_task_failures</code> to <code>-1</code>.</p>
<h2 id="interacting-with-cron-jobs-via-the-aurora-cli">Interacting with cron
jobs via the Aurora CLI</h2>
Modified:
aurora/site/publish/documentation/latest/deploying-aurora-scheduler/index.html
URL:
http://svn.apache.org/viewvc/aurora/site/publish/documentation/latest/deploying-aurora-scheduler/index.html?rev=1697999&r1=1697998&r2=1697999&view=diff
==============================================================================
---
aurora/site/publish/documentation/latest/deploying-aurora-scheduler/index.html
(original)
+++
aurora/site/publish/documentation/latest/deploying-aurora-scheduler/index.html
Wed Aug 26 20:12:12 2015
@@ -94,7 +94,7 @@ machines. This guide helps you get the
<p>The Aurora scheduler is a standalone Java server. As part of the build
process it creates a bundle
of all its dependencies, with the notable exceptions of the JVM and libmesos.
Each target server
-should have a JVM (Java 7 or higher) and libmesos (0.22.0) installed.</p>
+should have a JVM (Java 7 or higher) and libmesos (0.23.0) installed.</p>
<h3 id="creating-the-distribution-zip-file-optional-">Creating the
Distribution .zip File (Optional)</h3>
@@ -358,7 +358,7 @@ the master in ZooKeeper, make sure comma
<h4 id="symptoms">Symptoms</h4>
-<p>The scheduler is registered, and (receiving
offers](docs/monitoring.md#scheduler<em>resource</em>offers),
+<p>The scheduler is registered, and <a
href="monitoring.md#scheduler_resource_offers">receiving offers</a>,
but tasks are perpetually shown as <code>PENDING - Constraint not satisfied:
host</code>.</p>
<h4 id="solution">Solution</h4>
Modified:
aurora/site/publish/documentation/latest/developing-aurora-client/index.html
URL:
http://svn.apache.org/viewvc/aurora/site/publish/documentation/latest/developing-aurora-client/index.html?rev=1697999&r1=1697998&r2=1697999&view=diff
==============================================================================
---
aurora/site/publish/documentation/latest/developing-aurora-client/index.html
(original)
+++
aurora/site/publish/documentation/latest/developing-aurora-client/index.html
Wed Aug 26 20:12:12 2015
@@ -69,7 +69,7 @@ To start a virtual cluster, you need to
the aurora workspace. This will create a vagrant host named
“devcluster”, with a mesos master, a set
of mesos slaves, and an aurora scheduler.</p>
-<p>If you have changed you would like to test in your local cluster,
you’ll rebuild the client:</p>
+<p>If you have a change you would like to test in your local cluster,
you’ll rebuild the client:</p>
<pre class="highlight text">vagrant ssh -c 'aurorabuild client'
</pre>
<p>Once this completes, the <code>aurora</code> command will reflect your
changes.</p>
Modified:
aurora/site/publish/documentation/latest/developing-aurora-scheduler/index.html
URL:
http://svn.apache.org/viewvc/aurora/site/publish/documentation/latest/developing-aurora-scheduler/index.html?rev=1697999&r1=1697998&r2=1697999&view=diff
==============================================================================
---
aurora/site/publish/documentation/latest/developing-aurora-scheduler/index.html
(original)
+++
aurora/site/publish/documentation/latest/developing-aurora-scheduler/index.html
Wed Aug 26 20:12:12 2015
@@ -118,6 +118,25 @@ bower remove <library name>
bower update <library name>
bower help
</pre>
+<h2 id="faster-iteration-in-vagrant">Faster Iteration in Vagrant</h2>
+
+<p>The scheduler serves UI assets from the classpath. For production
deployments this means the assets
+are served from within a jar. However, for faster development iteration, the
vagrant image is
+configured to add <code>/vagrant/dist/resources/main</code> to the head of
CLASSPATH. This path is configured
+as a shared filesystem to the path on the host system where your Aurora
repository lives. This means
+that any updates to dist/resources/main in your checkout will be reflected
immediately in the UI
+served from within the vagrant image.</p>
+
+<p>The one caveat to this is that this path is under <code>dist</code> not
<code>src</code>. This is because the assets must
+be processed by gradle before they can be served. So, unfortunately, you
cannot just save your local
+changes and see them reflected in the UI, you must first run <code>./gradlew
processResources</code>. This is
+less than ideal, but better than having to restart the scheduler after every
change. Additionally,
+gradle makes this process somewhat easier with the use of the
<code>--continuous</code> flag. If you run:
+<code>./gradlew processResources --continuous</code> gradle will monitor the
filesystem for changes and run the
+task automatically as necessary. This doesn’t quite provide hot-reload
capabilities, but it does
+allow for <5s from save to changes being visibile in the UI with no further
action required on the
+part of the developer.</p>
+
<h1 id="developing-the-aurora-build-system">Developing the Aurora Build
System</h1>
<h2 id="bootstrapping-gradle">Bootstrapping Gradle</h2>
Modified: aurora/site/publish/documentation/latest/index.html
URL:
http://svn.apache.org/viewvc/aurora/site/publish/documentation/latest/index.html?rev=1697999&r1=1697998&r2=1697999&view=diff
==============================================================================
--- aurora/site/publish/documentation/latest/index.html (original)
+++ aurora/site/publish/documentation/latest/index.html Wed Aug 26 20:12:12 2015
@@ -79,10 +79,17 @@
<h2 id="developers">Developers</h2>
<ul>
-<li><a href="/documentation/latest/contributing/">Contributing to the
project</a></li>
+<li><a href="../CONTRIBUTING.md">Contributing to the project</a></li>
<li><a href="/documentation/latest/developing-aurora-scheduler/">Developing
the Aurora Scheduler</a></li>
<li><a href="/documentation/latest/developing-aurora-client/">Developing the
Aurora Client</a></li>
<li><a href="/documentation/latest/committers/">Committers Guide</a></li>
+<li><a href="/documentation/latest/build-system/">Build System</a></li>
+</ul>
+
+<h2 id="additional-resources">Additional Resources</h2>
+
+<ul>
+<li><a href="/documentation/latest/presentations/">Presentation videos and
slides</a></li>
</ul>
</div>
Added: aurora/site/publish/documentation/latest/presentations/index.html
URL:
http://svn.apache.org/viewvc/aurora/site/publish/documentation/latest/presentations/index.html?rev=1697999&view=auto
==============================================================================
--- aurora/site/publish/documentation/latest/presentations/index.html (added)
+++ aurora/site/publish/documentation/latest/presentations/index.html Wed Aug
26 20:12:12 2015
@@ -0,0 +1,123 @@
+<!DOCTYPE html>
+<html lang="en">
+ <head>
+ <meta charset="utf-8">
+ <meta name="viewport" content="width=device-width, initial-scale=1">
+ <title>Apache Aurora</title>
+ <link rel="stylesheet"
href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.1/css/bootstrap.min.css">
+ <link href="/assets/css/main.css" rel="stylesheet">
+ <!-- Analytics -->
+ <script type="text/javascript">
+ var _gaq = _gaq || [];
+ _gaq.push(['_setAccount', 'UA-45879646-1']);
+ _gaq.push(['_setDomainName', 'apache.org']);
+ _gaq.push(['_trackPageview']);
+
+ (function() {
+ var ga = document.createElement('script'); ga.type =
'text/javascript'; ga.async = true;
+ ga.src = ('https:' == document.location.protocol ?
'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
+ var s = document.getElementsByTagName('script')[0];
s.parentNode.insertBefore(ga, s);
+ })();
+ </script>
+ </head>
+ <body>
+
+ <div class="container-fluid section-header">
+ <div class="container">
+ <div class="nav nav-bar">
+ <a href="/"><img src="/assets/img/aurora_logo_dkbkg.svg" width="300"
alt="Transparent Apache Aurora logo with dark background"/></a>
+ <ul class="nav navbar-nav navbar-right">
+ <li><a href="/documentation/latest/">Documentation</a></li>
+ <li><a href="/community/">Community</a></li>
+ <li><a href="/downloads/">Downloads</a></li>
+ <li><a href="/blog/">Blog</a></li>
+ </ul>
+ </div>
+ </div>
+</div>
+ <div class="container-fluid">
+ <div class="container content">
+ <div class="col-md-12 documentation">
+<h5 class="page-header text-uppercase">Documentation</h5>
+<h1 id="apache-aurora-presentations">Apache Aurora Presentations</h1>
+
+<p>Video and slides from presentations and panel discussions about Apache
Aurora.</p>
+
+<p><em>(Listed in date descending order)</em></p>
+
+<table>
+ <tr>
+ <td><img
src="images/presentations/04_30_2015_monolith_to_microservices_thumb.png"
alt="From Monolith to Microservices with Aurora Video Thumbnail" /></td>
+ <td><strong><a href="https://www.youtube.com/watch?v=yXkOgnyK4Hw">From
Monolith to Microservices w/ Aurora (Video)</a></strong>
+ <p>Presented by Thanos Baskous, Tony Dong, Dobromir Montauk</p>
+ <p>April 30, 2015 at <a
href="http://www.meetup.com/Bay-Area-Apache-Aurora-Users-Group/events/221219480/">Bay
Area Apache Aurora Users Group</a></p></td>
+ </tr>
+ <tr>
+ <td><img src="images/presentations/02_28_2015_apache_aurora_thumb.png"
alt="Apache Auroraã®å§ããã Slideshow Thumbnail" /></td>
+ <td><strong><a
href="http://www.slideshare.net/zembutsu/apache-aurora-introduction-and-tutorial-osc15tk">Apache
Auroraã®å§ããã (Slides)</a></strong>
+ <p>Presented by Masahito Zembutsu</p>
+ <p>February 28, 2015 at <a
href="http://www.ospn.jp/osc2015-spring/">Open Source Conference 2015 Tokyo
Spring</a></p></td>
+ </tr>
+ <tr>
+ <td><img
src="images/presentations/02_19_2015_aurora_adopters_panel_thumb.png"
alt="Apache Aurora Adopters Panel Video Thumbnail" /></td>
+ <td><strong><a
href="https://www.youtube.com/watch?v=2Jsj0zFdRlg">Apache Aurora Adopters Panel
(Video)</a></strong>
+ <p>Panelists Ben Staffin, Josh Adams, Bill Farner, Berk Demir</p>
+ <p>February 19, 2015 at <a
href="http://www.meetup.com/Bay-Area-Mesos-User-Group/events/220279080/">Bay
Area Mesos Users Group</a></p></td>
+ </tr>
+ <tr>
+ <td><img
src="images/presentations/02_19_2015_aurora_at_twitter_thumb.png"
alt="Operating Apache Aurora and Mesos at Twitter Video Thumbnail" /></td>
+ <td><strong><a
href="https://www.youtube.com/watch?v=E4lxX6epM_U">Operating Apache Aurora and
Mesos at Twitter (Video)</a></strong>
+ <p>Presented by Joe Smith</p>
+ <p>February 19, 2015 at <a
href="http://www.meetup.com/Bay-Area-Mesos-User-Group/events/220279080/">Bay
Area Mesos Users Group</a></p></td>
+ </tr>
+ <tr>
+ <td><img
src="images/presentations/02_19_2015_aurora_at_tellapart_thumb.png" alt="Apache
Aurora and Mesos at TellApart" /></td>
+ <td><strong><a
href="https://www.youtube.com/watch?v=ZZXtXLvTXAE">Apache Aurora and Mesos at
TellApart (Video)</a></strong>
+ <p>Presented by Steve Niemitz</p>
+ <p>February 19, 2015 at <a
href="http://www.meetup.com/Bay-Area-Mesos-User-Group/events/220279080/">Bay
Area Mesos Users Group</a></p></td>
+ </tr>
+ <tr>
+ <td><img
src="images/presentations/08_21_2014_past_present_future_thumb.png" alt="Past,
Present, and Future of the Aurora Scheduler Video Thumbnail" /></td>
+ <td><strong><a
href="https://www.youtube.com/watch?v=Dsc5CPhKs4o">Past, Present, and Future of
the Aurora Scheduler (Video)</a></strong>
+ <p>Presented by Bill Farner</p>
+ <p>August 21, 2014 at <a
href="http://events.linuxfoundation.org/events/archive/2014/mesoscon">#MesosCon
2014</a></p>
+</td>
+ </tr>
+ <tr>
+ <td><img
src="images/presentations/03_25_2014_introduction_to_aurora_thumb.png"
alt="Introduction to Apache Aurora Video Thumbnail" /></td>
+ <td><strong><a
href="https://www.youtube.com/watch?v=asd_h6VzaJc">Introduction to Apache
Aurora (Video)</a></strong>
+ <p>Presented by Bill Farner</p>
+ <p>March 25, 2014 at <a
href="https://www.eventbrite.com/e/aurora-and-mesosframeworksmeetup-tickets-10850994617">Aurora
and Mesos Frameworks Meetup</a></p></td>
+ </tr>
+</table>
+</div>
+
+ </div>
+ </div>
+
+ <div class="container-fluid section-footer buffer">
+ <div class="container">
+ <div class="row">
+ <div class="col-md-2 col-md-offset-1"><h3>Quick Links</h3>
+ <ul>
+ <li><a href="/downloads/">Downloads</a></li>
+ <li><a href="/community/">Mailing Lists</a></li>
+ <li><a
href="http://issues.apache.org/jira/browse/AURORA">Issue Tracking</a></li>
+ <li><a href="/documentation/latest/contributing/">How
To Contribute</a></li>
+ </ul>
+ </div>
+ <div class="col-md-2"><h3>The ASF</h3>
+ <ul>
+ <li><a href="http://www.apache.org/licenses/">License</a></li>
+ <li><a
href="http://www.apache.org/foundation/sponsorship.html">Sponsorship</a></li>
+ <li><a
href="http://www.apache.org/foundation/thanks.html">Thanks</a></li>
+ <li><a href="http://www.apache.org/security/">Security</a></li>
+ </ul>
+ </div>
+ <div class="col-md-6">
+ <p class="disclaimer">Copyright 2014 <a
href="http://www.apache.org/">Apache Software Foundation</a>. Licensed under
the <a href="http://www.apache.org/licenses/">Apache License v2.0</a>. The <a
href="https://www.flickr.com/photos/trondk/12706051375/">Aurora Borealis IX
photo</a> displayed on the homepage is available under a <a
href="https://creativecommons.org/licenses/by-nc-nd/2.0/">Creative Commons
BY-NC-ND 2.0 license</a>. Apache, Apache Aurora, and the Apache feather logo
are trademarks of The Apache Software Foundation.</p>
+ </div>
+ </div>
+ </div>
+ </body>
+</html>
\ No newline at end of file
Modified: aurora/site/publish/documentation/latest/sla/index.html
URL:
http://svn.apache.org/viewvc/aurora/site/publish/documentation/latest/sla/index.html?rev=1697999&r1=1697998&r2=1697999&view=diff
==============================================================================
--- aurora/site/publish/documentation/latest/sla/index.html (original)
+++ aurora/site/publish/documentation/latest/sla/index.html Wed Aug 26 20:12:12
2015
@@ -60,8 +60,9 @@
Agreements) metrics that defining a contractual relationship between the
Aurora/Mesos platform
and hosted services.</p>
-<p>The Aurora SLA feature currently supports stat collection only for service
(non-cron)
-production jobs (<code>"production = True"</code> in your
<code>.aurora</code> config).</p>
+<p>The Aurora SLA feature is by default only enabled for service (non-cron)
+production jobs (<code>"production = True"</code> in your
<code>.aurora</code> config). It can be enabled for
+non-production services via the scheduler command line flag
<code>-sla_non_prod_metrics</code>.</p>
<p>Counters that track SLA measurements are computed periodically within the
scheduler.
The individual instance metrics are refreshed every minute (configurable via
Modified: aurora/site/publish/documentation/latest/storage-config/index.html
URL:
http://svn.apache.org/viewvc/aurora/site/publish/documentation/latest/storage-config/index.html?rev=1697999&r1=1697998&r2=1697999&view=diff
==============================================================================
--- aurora/site/publish/documentation/latest/storage-config/index.html
(original)
+++ aurora/site/publish/documentation/latest/storage-config/index.html Wed Aug
26 20:12:12 2015
@@ -158,9 +158,9 @@ accomplished by updating the following s
registering with Mesos. E.g.:
<code>-mesos_master_address=zk://localhost:2181</code></li>
<li><code>-max_registration_delay</code> - set to sufficiently long interval
to prevent registration timeout
and as a result scheduler suicide. E.g:
<code>-max_registration_delay=360min</code></li>
-<li>Make sure <code>-gc_executor_path</code> option is not set to prevent
accidental task GC. This is
-important as scheduler will attempt to reconcile the cluster state and will
kill all tasks when
-restarted with an empty Mesos replicated log.</li>
+<li>Make sure <code>-reconciliation_initial_delay</code> option is set high
enough (e.g.: <code>365days</code>) to
+prevent accidental task GC. This is important as scheduler will attempt to
reconcile the cluster
+state and will kill all tasks when restarted with an empty Mesos replicated
log.</li>
</ul></li>
<li><p>Restart all schedulers</p></li>
</ul>
Modified:
aurora/site/publish/documentation/latest/test-resource-generation/index.html
URL:
http://svn.apache.org/viewvc/aurora/site/publish/documentation/latest/test-resource-generation/index.html?rev=1697999&r1=1697998&r2=1697999&view=diff
==============================================================================
---
aurora/site/publish/documentation/latest/test-resource-generation/index.html
(original)
+++
aurora/site/publish/documentation/latest/test-resource-generation/index.html
Wed Aug 26 20:12:12 2015
@@ -46,9 +46,8 @@
<p>The Aurora source repository and distributions contain several
<a href="../src/test/resources/org/apache/thermos/root/checkpoints">binary
files</a> to
qualify the backwards-compatibility of thermos with checkpoint data. Since
-thermos persists state to disk, to be read by other components (the GC executor
-and the thermos observer), it is important that we have tests that prevent
-regressions affecting the ability to parse previously-written data.</p>
+thermos persists state to disk, to be read by the thermos observer), it is
important that we have
+tests that prevent regressions affecting the ability to parse
previously-written data.</p>
<h2 id="generating-test-files">Generating test files</h2>
Modified: aurora/site/publish/documentation/latest/vagrant/index.html
URL:
http://svn.apache.org/viewvc/aurora/site/publish/documentation/latest/vagrant/index.html?rev=1697999&r1=1697998&r2=1697999&view=diff
==============================================================================
--- aurora/site/publish/documentation/latest/vagrant/index.html (original)
+++ aurora/site/publish/documentation/latest/vagrant/index.html Wed Aug 26
20:12:12 2015
@@ -78,7 +78,7 @@ common commands for this tool.</p>
<h2 id="clone-the-aurora-repository">Clone the Aurora repository</h2>
<p>To obtain the Aurora source distribution, clone its Git repository using
the following command:</p>
-<pre class="highlight text"> git clone http://git.apache.org/aurora.git
+<pre class="highlight text"> git clone git://git.apache.org/aurora.git
</pre>
<h2 id="start-the-local-cluster">Start the local cluster</h2>
Modified: aurora/site/publish/sitemap.xml
URL:
http://svn.apache.org/viewvc/aurora/site/publish/sitemap.xml?rev=1697999&r1=1697998&r2=1697999&view=diff
==============================================================================
--- aurora/site/publish/sitemap.xml (original)
+++ aurora/site/publish/sitemap.xml Wed Aug 26 20:12:12 2015
@@ -2,146 +2,154 @@
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>http://aurora.apache.org/blog/aurora-0-6-0-incubating-released/</loc>
- <lastmod>2015-07-24T00:00:00-04:00</lastmod>
+ <lastmod>2015-08-26T00:00:00-07:00</lastmod>
</url>
<url>
<loc>http://aurora.apache.org/blog/aurora-0-7-0-incubating-released/</loc>
- <lastmod>2015-07-24T00:00:00-04:00</lastmod>
+ <lastmod>2015-08-26T00:00:00-07:00</lastmod>
</url>
<url>
<loc>http://aurora.apache.org/blog/2015-upcoming-apache-aurora-meetups/</loc>
- <lastmod>2015-07-24T00:00:00-04:00</lastmod>
+ <lastmod>2015-08-26T00:00:00-07:00</lastmod>
</url>
<url>
<loc>http://aurora.apache.org/blog/aurora-0-8-0-released/</loc>
- <lastmod>2015-07-24T00:00:00-04:00</lastmod>
+ <lastmod>2015-08-26T00:00:00-07:00</lastmod>
</url>
<url>
<loc>http://aurora.apache.org/blog/aurora-0-9-0-released/</loc>
- <lastmod>2015-07-24T00:00:00-04:00</lastmod>
+ <lastmod>2015-08-26T00:00:00-07:00</lastmod>
</url>
<url>
<loc>http://aurora.apache.org/blog/</loc>
- <lastmod>2015-07-24T00:00:00-04:00</lastmod>
+ <lastmod>2015-08-26T00:00:00-07:00</lastmod>
</url>
<url>
<loc>http://aurora.apache.org/community/</loc>
- <lastmod>2015-07-24T00:00:00-04:00</lastmod>
+ <lastmod>2015-08-26T00:00:00-07:00</lastmod>
</url>
<url>
<loc>http://aurora.apache.org/developers/</loc>
- <lastmod>2015-07-24T00:00:00-04:00</lastmod>
+ <lastmod>2015-08-26T00:00:00-07:00</lastmod>
</url>
<url>
<loc>http://aurora.apache.org/docs/gettingstarted/</loc>
- <lastmod>2015-07-24T00:00:00-04:00</lastmod>
+ <lastmod>2015-08-26T00:00:00-07:00</lastmod>
</url>
<url>
<loc>http://aurora.apache.org/docs/howtocontribute/</loc>
- <lastmod>2015-07-24T00:00:00-04:00</lastmod>
+ <lastmod>2015-08-26T00:00:00-07:00</lastmod>
+ </url>
+ <url>
+ <loc>http://aurora.apache.org/documentation/latest/build-system/</loc>
+ <lastmod>2015-08-26T00:00:00-07:00</lastmod>
</url>
<url>
<loc>http://aurora.apache.org/documentation/latest/client-cluster-configuration/</loc>
- <lastmod>2015-07-24T00:00:00-04:00</lastmod>
+ <lastmod>2015-08-26T00:00:00-07:00</lastmod>
</url>
<url>
<loc>http://aurora.apache.org/documentation/latest/client-commands/</loc>
- <lastmod>2015-07-24T00:00:00-04:00</lastmod>
+ <lastmod>2015-08-26T00:00:00-07:00</lastmod>
</url>
<url>
<loc>http://aurora.apache.org/documentation/latest/committers/</loc>
- <lastmod>2015-07-24T00:00:00-04:00</lastmod>
+ <lastmod>2015-08-26T00:00:00-07:00</lastmod>
</url>
<url>
<loc>http://aurora.apache.org/documentation/latest/configuration-reference/</loc>
- <lastmod>2015-07-24T00:00:00-04:00</lastmod>
+ <lastmod>2015-08-26T00:00:00-07:00</lastmod>
</url>
<url>
<loc>http://aurora.apache.org/documentation/latest/configuration-tutorial/</loc>
- <lastmod>2015-07-24T00:00:00-04:00</lastmod>
+ <lastmod>2015-08-26T00:00:00-07:00</lastmod>
</url>
<url>
<loc>http://aurora.apache.org/documentation/latest/contributing/</loc>
- <lastmod>2015-07-24T00:00:00-04:00</lastmod>
+ <lastmod>2015-08-26T00:00:00-07:00</lastmod>
</url>
<url>
<loc>http://aurora.apache.org/documentation/latest/cron-jobs/</loc>
- <lastmod>2015-07-24T00:00:00-04:00</lastmod>
+ <lastmod>2015-08-26T00:00:00-07:00</lastmod>
</url>
<url>
<loc>http://aurora.apache.org/documentation/latest/deploying-aurora-scheduler/</loc>
- <lastmod>2015-07-24T00:00:00-04:00</lastmod>
+ <lastmod>2015-08-26T00:00:00-07:00</lastmod>
</url>
<url>
<loc>http://aurora.apache.org/documentation/latest/developing-aurora-client/</loc>
- <lastmod>2015-07-24T00:00:00-04:00</lastmod>
+ <lastmod>2015-08-26T00:00:00-07:00</lastmod>
</url>
<url>
<loc>http://aurora.apache.org/documentation/latest/developing-aurora-scheduler/</loc>
- <lastmod>2015-07-24T00:00:00-04:00</lastmod>
+ <lastmod>2015-08-26T00:00:00-07:00</lastmod>
</url>
<url>
<loc>http://aurora.apache.org/documentation/latest/hooks/</loc>
- <lastmod>2015-07-24T00:00:00-04:00</lastmod>
+ <lastmod>2015-08-26T00:00:00-07:00</lastmod>
</url>
<url>
<loc>http://aurora.apache.org/documentation/latest/monitoring/</loc>
- <lastmod>2015-07-24T00:00:00-04:00</lastmod>
+ <lastmod>2015-08-26T00:00:00-07:00</lastmod>
+ </url>
+ <url>
+ <loc>http://aurora.apache.org/documentation/latest/presentations/</loc>
+ <lastmod>2015-08-26T00:00:00-07:00</lastmod>
</url>
<url>
<loc>http://aurora.apache.org/documentation/latest/resource-isolation/</loc>
- <lastmod>2015-07-24T00:00:00-04:00</lastmod>
+ <lastmod>2015-08-26T00:00:00-07:00</lastmod>
</url>
<url>
<loc>http://aurora.apache.org/documentation/latest/scheduler-storage/</loc>
- <lastmod>2015-07-24T00:00:00-04:00</lastmod>
+ <lastmod>2015-08-26T00:00:00-07:00</lastmod>
</url>
<url>
<loc>http://aurora.apache.org/documentation/latest/security/</loc>
- <lastmod>2015-07-24T00:00:00-04:00</lastmod>
+ <lastmod>2015-08-26T00:00:00-07:00</lastmod>
</url>
<url>
<loc>http://aurora.apache.org/documentation/latest/sla/</loc>
- <lastmod>2015-07-24T00:00:00-04:00</lastmod>
+ <lastmod>2015-08-26T00:00:00-07:00</lastmod>
</url>
<url>
<loc>http://aurora.apache.org/documentation/latest/storage-config/</loc>
- <lastmod>2015-07-24T00:00:00-04:00</lastmod>
+ <lastmod>2015-08-26T00:00:00-07:00</lastmod>
</url>
<url>
<loc>http://aurora.apache.org/documentation/latest/storage/</loc>
- <lastmod>2015-07-24T00:00:00-04:00</lastmod>
+ <lastmod>2015-08-26T00:00:00-07:00</lastmod>
</url>
<url>
<loc>http://aurora.apache.org/documentation/latest/test-resource-generation/</loc>
- <lastmod>2015-07-24T00:00:00-04:00</lastmod>
+ <lastmod>2015-08-26T00:00:00-07:00</lastmod>
</url>
<url>
<loc>http://aurora.apache.org/documentation/latest/thrift-deprecation/</loc>
- <lastmod>2015-07-24T00:00:00-04:00</lastmod>
+ <lastmod>2015-08-26T00:00:00-07:00</lastmod>
</url>
<url>
<loc>http://aurora.apache.org/documentation/latest/tutorial/</loc>
- <lastmod>2015-07-24T00:00:00-04:00</lastmod>
+ <lastmod>2015-08-26T00:00:00-07:00</lastmod>
</url>
<url>
<loc>http://aurora.apache.org/documentation/latest/user-guide/</loc>
- <lastmod>2015-07-24T00:00:00-04:00</lastmod>
+ <lastmod>2015-08-26T00:00:00-07:00</lastmod>
</url>
<url>
<loc>http://aurora.apache.org/documentation/latest/vagrant/</loc>
- <lastmod>2015-07-24T00:00:00-04:00</lastmod>
+ <lastmod>2015-08-26T00:00:00-07:00</lastmod>
</url>
<url>
<loc>http://aurora.apache.org/documentation/latest/</loc>
- <lastmod>2015-07-24T00:00:00-04:00</lastmod>
+ <lastmod>2015-08-26T00:00:00-07:00</lastmod>
</url>
<url>
<loc>http://aurora.apache.org/downloads/</loc>
- <lastmod>2015-07-24T00:00:00-04:00</lastmod>
+ <lastmod>2015-08-26T00:00:00-07:00</lastmod>
</url>
<url>
<loc>http://aurora.apache.org/</loc>
- <lastmod>2015-07-24T00:00:00-04:00</lastmod>
+ <lastmod>2015-08-26T00:00:00-07:00</lastmod>
</url>
</urlset>
\ No newline at end of file
Modified: aurora/site/source/documentation/latest.html.md
URL:
http://svn.apache.org/viewvc/aurora/site/source/documentation/latest.html.md?rev=1697999&r1=1697998&r2=1697999&view=diff
==============================================================================
--- aurora/site/source/documentation/latest.html.md (original)
+++ aurora/site/source/documentation/latest.html.md Wed Aug 26 20:12:12 2015
@@ -27,7 +27,11 @@ We encourage you to ask questions on the
* [Generating test resources](/documentation/latest/test-resource-generation/)
## Developers
- * [Contributing to the project](/documentation/latest/contributing/)
+ * [Contributing to the project](../CONTRIBUTING.md)
* [Developing the Aurora
Scheduler](/documentation/latest/developing-aurora-scheduler/)
* [Developing the Aurora
Client](/documentation/latest/developing-aurora-client/)
* [Committers Guide](/documentation/latest/committers/)
+ * [Build System](/documentation/latest/build-system/)
+
+## Additional Resources
+ * [Presentation videos and slides](/documentation/latest/presentations/)
Added: aurora/site/source/documentation/latest/build-system.md
URL:
http://svn.apache.org/viewvc/aurora/site/source/documentation/latest/build-system.md?rev=1697999&view=auto
==============================================================================
--- aurora/site/source/documentation/latest/build-system.md (added)
+++ aurora/site/source/documentation/latest/build-system.md Wed Aug 26 20:12:12
2015
@@ -0,0 +1,100 @@
+The Python components of Aurora are built using
[Pants](https://pantsbuild.github.io).
+
+Python Build Conventions
+========================
+The Python code is laid out according to the following conventions:
+
+1. 1 `BUILD` per 3rd level directory. For a list of current top-level packages
run:
+
+ % find src/main/python -maxdepth 3 -mindepth 3 -type d |\
+ while read dname; do echo $dname |\
+ sed 's@src/main/python/\(.*\)/\(.*\)/\(.*\).*@\1.\2.\3@'; done
+
+2. Each `BUILD` file exports 1
+
[`python_library`](https://pantsbuild.github.io/build_dictionary.html#bdict_python_library)
+ that provides a
+ [`setup_py`](https://pantsbuild.github.io/build_dictionary.html#setup_py)
+ containing each
+
[`python_binary`](https://pantsbuild.github.io/build_dictionary.html#python_binary)
+ in the `BUILD` file, named the same as the directory it's in so that it
can be referenced
+ without a ':' character. The `sources` field in the `python_library` will
almost always be
+ `rglobs('*.py')`.
+
+3. Other BUILD files may only depend on this single public `python_library`
+ target. Any other target is considered a private implementation detail and
+ should be prefixed with an `_`.
+
+4. `python_binary` targets are always named the same as the exported console
script.
+
+5. `python_binary` targets must have identical `dependencies` to the
`python_library` exported
+ by the package and must use `entry_point`.
+
+ The means a PEX file generated by pants will contain exactly the same
files that will be
+ available on the `PYTHONPATH` in the case of `pip install` of the
corresponding library
+ target. This will help our migration off of Pants in the future.
+
+Annotated example - apache.thermos.runner
+-----------------------------------------
+```
+% find src/main/python/apache/thermos/runner
+src/main/python/apache/thermos/runner
+src/main/python/apache/thermos/runner/__init__.py
+src/main/python/apache/thermos/runner/thermos_runner.py
+src/main/python/apache/thermos/runner/BUILD
+% cat src/main/python/apache/thermos/runner/BUILD
+# License boilerplate omitted
+import os
+
+
+# Private target so that a setup_py can exist without a circular dependency.
Only targets within
+# this file should depend on this.
+python_library(
+ name = '_runner',
+ # The target covers every python file under this directory and
subdirectories.
+ sources = rglobs('*.py'),
+ dependencies = [
+ '3rdparty/python:twitter.common.app',
+ '3rdparty/python:twitter.common.log',
+ # Source dependencies are always referenced without a ':'.
+ 'src/main/python/apache/thermos/common',
+ 'src/main/python/apache/thermos/config',
+ 'src/main/python/apache/thermos/core',
+ ],
+)
+
+# Binary target for thermos_runner.pex. Nothing should depend on this - it's
only used as an
+# argument to ./pants binary.
+python_binary(
+ name = 'thermos_runner',
+ # Use entry_point, not source so the files used here are the same ones tests
see.
+ entry_point = 'apache.thermos.bin.thermos_runner',
+ dependencies = [
+ # Notice that we depend only on the single private target from this BUILD
file here.
+ ':_runner',
+ ],
+)
+
+# The public library that everyone importing the runner symbols uses.
+# The test targets and any other dependent source code should depend on this.
+python_library(
+ name = 'runner',
+ dependencies = [
+ # Again, notice that we depend only on the single private target from this
BUILD file here.
+ ':_runner',
+ ],
+ # We always provide a setup_py. This will cause any dependee libraries to
automatically
+ # reference this library in their requirements.txt rather than copy the
source files into their
+ # sdist.
+ provides = setup_py(
+ # Conventionally named and versioned.
+ name = 'apache.thermos.runner',
+ version = open(os.path.join(get_buildroot(),
'.auroraversion')).read().strip().upper(),
+ ).with_binaries({
+ # Every binary in this file should also be repeated here.
+ # Always use the dict-form of .with_binaries so that commands with dashes
in their names are
+ # supported.
+ # The console script name is always the same as the PEX with .pex stripped.
+ 'thermos_runner': ':thermos_runner',
+ }),
+)
+```
Modified: aurora/site/source/documentation/latest/configuration-reference.md
URL:
http://svn.apache.org/viewvc/aurora/site/source/documentation/latest/configuration-reference.md?rev=1697999&r1=1697998&r2=1697999&view=diff
==============================================================================
--- aurora/site/source/documentation/latest/configuration-reference.md
(original)
+++ aurora/site/source/documentation/latest/configuration-reference.md Wed Aug
26 20:12:12 2015
@@ -30,6 +30,7 @@ Aurora + Thermos Configuration Reference
- [HealthCheckConfig Objects](#healthcheckconfig-objects)
- [Announcer Objects](#announcer-objects)
- [Container Objects](#container)
+ - [LifecycleConfig Objects](#lifecycleconfig-objects)
- [Specifying Scheduling Constraints](#specifying-scheduling-constraints)
- [Template Namespaces](#template-namespaces)
- [mesos Namespace](#mesos-namespace)
@@ -277,6 +278,7 @@ Client applications with higher priority
finalization wait (e.g. through parameters to `thermos kill`), so this
is mostly a best-effort signal.
+
### Constraint Object
Current constraint objects only support a single ordering constraint, `order`,
@@ -325,6 +327,7 @@ Job Schema
```production``` | Boolean | Whether or not this is a production task
backed by quota (Default: False). Production jobs may preempt any
non-production job, and may only be preempted by production jobs in the same
role and of higher priority. To run jobs at this level, the job role must have
the appropriate quota. To grant quota to a particular role in production,
operators use the ``aurora_admin set_quota`` command.
```health_check_config``` | ```heath_check_config``` object | Parameters for
controlling a task's health checks via HTTP. Only used if a health port was
assigned with a command line wildcard.
```container``` | ```Container``` object | An optional container to run all
processes inside of.
+ ```lifecycle``` | ```LifecycleConfig``` object | An optional task lifecycle
configuration that dictates commands to be executed on startup/teardown. HTTP
lifecycle is enabled by default if the "health" port is requested. See
[LifecycleConfig Objects](#lifecycleconfig-objects) for more information.
### Services
@@ -359,8 +362,11 @@ Parameters for controlling a task's heal
| ------- | :-------: | --------
| ```initial_interval_secs``` | Integer | Initial delay for performing an
HTTP health check. (Default: 15)
| ```interval_secs``` | Integer | Interval on which to check the
task's health via HTTP. (Default: 10)
-| ```timeout_secs``` | Integer | HTTP request timeout. (Default:
1)
| ```max_consecutive_failures``` | Integer | Maximum number of consecutive
failures that tolerated before considering a task unhealthy (Default: 0)
+| ```timeout_secs``` | Integer | HTTP request timeout. (Default:
1)
+| ```endpoint``` | String | HTTP endpoint to check
(Default: /health)
+| ```expected_response``` | String | If not empty, fail the health
check if the response differs. Case insensitive. (Default: ok)
+| ```expected_response_code``` | Integer | If not zero, fail the health
check if the response code differs. (Default: 0)
### Announcer Objects
@@ -411,9 +417,51 @@ Describes the container the job's proces
### Docker Object
- param | type | description
- ----- | :----: | -----------
- ```image``` | String | The name of the docker image to execute.
If the image does not exist locally it will be pulled with ```docker pull```.
+ param | type | description
+ ----- | :----: | -----------
+ ```image``` | String | The name of the docker image to
execute. If the image does not exist locally it will be pulled with ```docker
pull```.
+ ```parameters``` | List(Parameter) | Additional parameters to pass to the
docker containerizer.
+
+### Docker Parameter Object
+
+Docker CLI parameters. This needs to be enabled by the scheduler
`enable_docker_parameters` option.
+See [Docker Command Line
Reference](https://docs.docker.com/reference/commandline/run/) for valid
parameters.
+
+ param | type | description
+ ----- | :----: | -----------
+ ```name``` | String | The name of the docker parameter. E.g.
volume
+ ```value``` | String | The value of the parameter. E.g.
/usr/local/bin:/usr/bin:rw
+
+### LifecycleConfig Objects
+
+*Note: The only lifecycle configuration supported is the HTTP lifecycle via
the HTTPLifecycleConfig.*
+
+ param | type | description
+ ----- | :----: | -----------
+ ```http``` | HTTPLifecycleConfig | Configure the lifecycle manager to
send lifecycle commands to the task via HTTP.
+
+### HTTPLifecycleConfig Objects
+
+ param | type | description
+ ----- | :----: | -----------
+ ```port``` | String | The named port to send POST commands
(Default: health)
+ ```graceful_shutdown_endpoint``` | String | Endpoint to hit to indicate that
a task should gracefully shutdown. (Default: /quitquitquit)
+ ```shutdown_endpoint``` | String | Endpoint to hit to give a task its final
warning before being killed. (Default: /abortabortabort)
+
+#### graceful_shutdown_endpoint
+
+If the Job is listening on the port as specified by the HTTPLifecycleConfig
+(default: `health`), a HTTP POST request will be sent over localhost to this
+endpoint to request that the task gracefully shut itself down. This is a
+courtesy call before the `shutdown_endpoint` is invoked a fixed amount of
+time later.
+
+#### shutdown_endpoint
+
+If the Job is listening on the port as specified by the HTTPLifecycleConfig
+(default: `health`), a HTTP POST request will be sent over localhost to this
+endpoint to request as a final warning before being shut down. If the task
+does not shut down on its own after this, it will be forcefully killed
Specifying Scheduling Constraints
Modified: aurora/site/source/documentation/latest/cron-jobs.md
URL:
http://svn.apache.org/viewvc/aurora/site/source/documentation/latest/cron-jobs.md?rev=1697999&r1=1697998&r2=1697999&view=diff
==============================================================================
--- aurora/site/source/documentation/latest/cron-jobs.md (original)
+++ aurora/site/source/documentation/latest/cron-jobs.md Wed Aug 26 20:12:12
2015
@@ -67,7 +67,7 @@ grow faster than they can process it.
Unlike with services, which aurora will always re-execute regardless of exit
status, instances of
cron jobs retry according to the `max_task_failures` attribute of the
-[Task](configuration-reference.md#task-objects) object. To get
"run-until-failure" semantics,
+[Task](configuration-reference.md#task-objects) object. To get
"run-until-success" semantics,
set `max_task_failures` to `-1`.
## Interacting with cron jobs via the Aurora CLI
Modified: aurora/site/source/documentation/latest/deploying-aurora-scheduler.md
URL:
http://svn.apache.org/viewvc/aurora/site/source/documentation/latest/deploying-aurora-scheduler.md?rev=1697999&r1=1697998&r2=1697999&view=diff
==============================================================================
--- aurora/site/source/documentation/latest/deploying-aurora-scheduler.md
(original)
+++ aurora/site/source/documentation/latest/deploying-aurora-scheduler.md Wed
Aug 26 20:12:12 2015
@@ -35,7 +35,7 @@ machines. This guide helps you get the
## Installing Aurora
The Aurora scheduler is a standalone Java server. As part of the build process
it creates a bundle
of all its dependencies, with the notable exceptions of the JVM and libmesos.
Each target server
-should have a JVM (Java 7 or higher) and libmesos (0.22.0) installed.
+should have a JVM (Java 7 or higher) and libmesos (0.23.0) installed.
### Creating the Distribution .zip File (Optional)
To create a distribution for installation you will need build tools installed.
On Ubuntu this can be
@@ -278,7 +278,7 @@ is the same as the one on the scheduler:
### Tasks are stuck in `PENDING` forever
#### Symptoms
-The scheduler is registered, and (receiving
offers](docs/monitoring.md#scheduler_resource_offers),
+The scheduler is registered, and [receiving
offers](monitoring.md#scheduler_resource_offers),
but tasks are perpetually shown as `PENDING - Constraint not satisfied: host`.
#### Solution
Modified: aurora/site/source/documentation/latest/developing-aurora-client.md
URL:
http://svn.apache.org/viewvc/aurora/site/source/documentation/latest/developing-aurora-client.md?rev=1697999&r1=1697998&r2=1697999&view=diff
==============================================================================
--- aurora/site/source/documentation/latest/developing-aurora-client.md
(original)
+++ aurora/site/source/documentation/latest/developing-aurora-client.md Wed Aug
26 20:12:12 2015
@@ -30,7 +30,7 @@ To start a virtual cluster, you need to
the aurora workspace. This will create a vagrant host named "devcluster", with
a mesos master, a set
of mesos slaves, and an aurora scheduler.
-If you have changed you would like to test in your local cluster, you'll
rebuild the client:
+If you have a change you would like to test in your local cluster, you'll
rebuild the client:
vagrant ssh -c 'aurorabuild client'
Modified: aurora/site/source/documentation/latest/developing-aurora-scheduler.md
URL:
http://svn.apache.org/viewvc/aurora/site/source/documentation/latest/developing-aurora-scheduler.md?rev=1697999&r1=1697998&r2=1697999&view=diff
==============================================================================
--- aurora/site/source/documentation/latest/developing-aurora-scheduler.md
(original)
+++ aurora/site/source/documentation/latest/developing-aurora-scheduler.md Wed
Aug 26 20:12:12 2015
@@ -90,6 +90,25 @@ use the following commands to view and m
bower update <library name>
bower help
+Faster Iteration in Vagrant
+---------------------------
+The scheduler serves UI assets from the classpath. For production deployments
this means the assets
+are served from within a jar. However, for faster development iteration, the
vagrant image is
+configured to add `/vagrant/dist/resources/main` to the head of CLASSPATH.
This path is configured
+as a shared filesystem to the path on the host system where your Aurora
repository lives. This means
+that any updates to dist/resources/main in your checkout will be reflected
immediately in the UI
+served from within the vagrant image.
+
+The one caveat to this is that this path is under `dist` not `src`. This is
because the assets must
+be processed by gradle before they can be served. So, unfortunately, you
cannot just save your local
+changes and see them reflected in the UI, you must first run `./gradlew
processResources`. This is
+less than ideal, but better than having to restart the scheduler after every
change. Additionally,
+gradle makes this process somewhat easier with the use of the `--continuous`
flag. If you run:
+`./gradlew processResources --continuous` gradle will monitor the filesystem
for changes and run the
+task automatically as necessary. This doesn't quite provide hot-reload
capabilities, but it does
+allow for <5s from save to changes being visibile in the UI with no further
action required on the
+part of the developer.
+
Developing the Aurora Build System
==================================
Added: aurora/site/source/documentation/latest/presentations.md
URL:
http://svn.apache.org/viewvc/aurora/site/source/documentation/latest/presentations.md?rev=1697999&view=auto
==============================================================================
--- aurora/site/source/documentation/latest/presentations.md (added)
+++ aurora/site/source/documentation/latest/presentations.md Wed Aug 26
20:12:12 2015
@@ -0,0 +1,50 @@
+# Apache Aurora Presentations
+Video and slides from presentations and panel discussions about Apache Aurora.
+
+_(Listed in date descending order)_
+
+<table>
+ <tr>
+ <td><img
src="images/presentations/04_30_2015_monolith_to_microservices_thumb.png"
alt="From Monolith to Microservices with Aurora Video Thumbnail" /></td>
+ <td><strong><a
href="https://www.youtube.com/watch?v=yXkOgnyK4Hw">>From Monolith to
Microservices w/ Aurora (Video)</a></strong>
+ <p>Presented by Thanos Baskous, Tony Dong, Dobromir Montauk</p>
+ <p>April 30, 2015 at <a
href="http://www.meetup.com/Bay-Area-Apache-Aurora-Users-Group/events/221219480/">Bay
Area Apache Aurora Users Group</a></p></td>
+ </tr>
+ <tr>
+ <td><img
src="images/presentations/02_28_2015_apache_aurora_thumb.png" alt="Apache
Auroraã®å§ããã Slideshow Thumbnail" /></td>
+ <td><strong><a
href="http://www.slideshare.net/zembutsu/apache-aurora-introduction-and-tutorial-osc15tk">Apache
Auroraã®å§ããã (Slides)</a></strong>
+ <p>Presented by Masahito Zembutsu</p>
+ <p>February 28, 2015 at <a
href="http://www.ospn.jp/osc2015-spring/">Open Source Conference 2015 Tokyo
Spring</a></p></td>
+ </tr>
+ <tr>
+ <td><img
src="images/presentations/02_19_2015_aurora_adopters_panel_thumb.png"
alt="Apache Aurora Adopters Panel Video Thumbnail" /></td>
+ <td><strong><a
href="https://www.youtube.com/watch?v=2Jsj0zFdRlg">Apache Aurora Adopters Panel
(Video)</a></strong>
+ <p>Panelists Ben Staffin, Josh Adams, Bill Farner, Berk
Demir</p>
+ <p>February 19, 2015 at <a
href="http://www.meetup.com/Bay-Area-Mesos-User-Group/events/220279080/">Bay
Area Mesos Users Group</a></p></td>
+ </tr>
+ <tr>
+ <td><img
src="images/presentations/02_19_2015_aurora_at_twitter_thumb.png"
alt="Operating Apache Aurora and Mesos at Twitter Video Thumbnail" /></td>
+ <td><strong><a
href="https://www.youtube.com/watch?v=E4lxX6epM_U">Operating Apache Aurora and
Mesos at Twitter (Video)</a></strong>
+ <p>Presented by Joe Smith</p>
+ <p>February 19, 2015 at <a
href="http://www.meetup.com/Bay-Area-Mesos-User-Group/events/220279080/">Bay
Area Mesos Users Group</a></p></td>
+ </tr>
+ <tr>
+ <td><img
src="images/presentations/02_19_2015_aurora_at_tellapart_thumb.png" alt="Apache
Aurora and Mesos at TellApart" /></td>
+ <td><strong><a
href="https://www.youtube.com/watch?v=ZZXtXLvTXAE">Apache Aurora and Mesos at
TellApart (Video)</a></strong>
+ <p>Presented by Steve Niemitz</p>
+ <p>February 19, 2015 at <a
href="http://www.meetup.com/Bay-Area-Mesos-User-Group/events/220279080/">Bay
Area Mesos Users Group</a></p></td>
+ </tr>
+ <tr>
+ <td><img
src="images/presentations/08_21_2014_past_present_future_thumb.png" alt="Past,
Present, and Future of the Aurora Scheduler Video Thumbnail" /></td>
+ <td><strong><a
href="https://www.youtube.com/watch?v=Dsc5CPhKs4o">Past, Present, and Future of
the Aurora Scheduler (Video)</a></strong>
+ <p>Presented by Bill Farner</p>
+ <p>August 21, 2014 at <a
href="http://events.linuxfoundation.org/events/archive/2014/mesoscon">#MesosCon
2014</a></p>
+</td>
+ </tr>
+ <tr>
+ <td><img
src="images/presentations/03_25_2014_introduction_to_aurora_thumb.png"
alt="Introduction to Apache Aurora Video Thumbnail" /></td>
+ <td><strong><a
href="https://www.youtube.com/watch?v=asd_h6VzaJc">Introduction to Apache
Aurora (Video)</a></strong>
+ <p>Presented by Bill Farner</p>
+ <p>March 25, 2014 at <a
href="https://www.eventbrite.com/e/aurora-and-mesosframeworksmeetup-tickets-10850994617">Aurora
and Mesos Frameworks Meetup</a></p></td>
+ </tr>
+</table>
\ No newline at end of file
Modified: aurora/site/source/documentation/latest/sla.md
URL:
http://svn.apache.org/viewvc/aurora/site/source/documentation/latest/sla.md?rev=1697999&r1=1697998&r2=1697999&view=diff
==============================================================================
--- aurora/site/source/documentation/latest/sla.md (original)
+++ aurora/site/source/documentation/latest/sla.md Wed Aug 26 20:12:12 2015
@@ -15,8 +15,9 @@ The primary goal of the feature is colle
Agreements) metrics that defining a contractual relationship between the
Aurora/Mesos platform
and hosted services.
-The Aurora SLA feature currently supports stat collection only for service
(non-cron)
-production jobs (`"production = True"` in your `.aurora` config).
+The Aurora SLA feature is by default only enabled for service (non-cron)
+production jobs (`"production = True"` in your `.aurora` config). It can be
enabled for
+non-production services via the scheduler command line flag
`-sla_non_prod_metrics`.
Counters that track SLA measurements are computed periodically within the
scheduler.
The individual instance metrics are refreshed every minute (configurable via
@@ -173,4 +174,4 @@ unreasonable resource constraints) do no
* The availability of Aurora SLA metrics is bound by the scheduler
availability.
* All metrics are calculated at a pre-defined interval (currently set at 1
minute).
- Scheduler restarts may result in missed collections.
\ No newline at end of file
+ Scheduler restarts may result in missed collections.
Modified: aurora/site/source/documentation/latest/storage-config.md
URL:
http://svn.apache.org/viewvc/aurora/site/source/documentation/latest/storage-config.md?rev=1697999&r1=1697998&r2=1697999&view=diff
==============================================================================
--- aurora/site/source/documentation/latest/storage-config.md (original)
+++ aurora/site/source/documentation/latest/storage-config.md Wed Aug 26
20:12:12 2015
@@ -100,9 +100,9 @@ accomplished by updating the following s
registering with Mesos. E.g.: `-mesos_master_address=zk://localhost:2181`
* `-max_registration_delay` - set to sufficiently long interval to prevent
registration timeout
and as a result scheduler suicide. E.g: `-max_registration_delay=360min`
- * Make sure `-gc_executor_path` option is not set to prevent accidental task
GC. This is
- important as scheduler will attempt to reconcile the cluster state and
will kill all tasks when
- restarted with an empty Mesos replicated log.
+ * Make sure `-reconciliation_initial_delay` option is set high enough (e.g.:
`365days`) to
+ prevent accidental task GC. This is important as scheduler will attempt to
reconcile the cluster
+ state and will kill all tasks when restarted with an empty Mesos
replicated log.
* Restart all schedulers
Modified: aurora/site/source/documentation/latest/test-resource-generation.md
URL:
http://svn.apache.org/viewvc/aurora/site/source/documentation/latest/test-resource-generation.md?rev=1697999&r1=1697998&r2=1697999&view=diff
==============================================================================
--- aurora/site/source/documentation/latest/test-resource-generation.md
(original)
+++ aurora/site/source/documentation/latest/test-resource-generation.md Wed Aug
26 20:12:12 2015
@@ -4,9 +4,8 @@
The Aurora source repository and distributions contain several
[binary files](../src/test/resources/org/apache/thermos/root/checkpoints) to
qualify the backwards-compatibility of thermos with checkpoint data. Since
-thermos persists state to disk, to be read by other components (the GC executor
-and the thermos observer), it is important that we have tests that prevent
-regressions affecting the ability to parse previously-written data.
+thermos persists state to disk, to be read by the thermos observer), it is
important that we have
+tests that prevent regressions affecting the ability to parse
previously-written data.
## Generating test files
The files included represent persisted checkpoints that exercise different
Modified: aurora/site/source/documentation/latest/vagrant.md
URL:
http://svn.apache.org/viewvc/aurora/site/source/documentation/latest/vagrant.md?rev=1697999&r1=1697998&r2=1697999&view=diff
==============================================================================
--- aurora/site/source/documentation/latest/vagrant.md (original)
+++ aurora/site/source/documentation/latest/vagrant.md Wed Aug 26 20:12:12 2015
@@ -43,7 +43,7 @@ Clone the Aurora repository
To obtain the Aurora source distribution, clone its Git repository using the
following command:
- git clone http://git.apache.org/aurora.git
+ git clone git://git.apache.org/aurora.git
Start the local cluster