You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mesos.apache.org by vi...@apache.org on 2015/07/30 19:12:20 UTC

svn commit: r1693459 [1/3] - in /mesos/site: publish/ publish/documentation/ publish/documentation/authorization/ publish/documentation/committers/ publish/documentation/getting-started/ publish/documentation/latest/ publish/documentation/latest/author...

Author: vinodkone
Date: Thu Jul 30 17:12:19 2015
New Revision: 1693459

URL: http://svn.apache.org/r1693459
Log:
Website update.

Modified:
    mesos/site/publish/documentation/authorization/index.html
    mesos/site/publish/documentation/committers/index.html
    mesos/site/publish/documentation/getting-started/index.html
    mesos/site/publish/documentation/index.html
    mesos/site/publish/documentation/latest/authorization/index.html
    mesos/site/publish/documentation/latest/committers/index.html
    mesos/site/publish/documentation/latest/getting-started/index.html
    mesos/site/publish/documentation/latest/index.html
    mesos/site/publish/documentation/latest/mesos-ssl/index.html
    mesos/site/publish/documentation/latest/operational-guide/index.html
    mesos/site/publish/documentation/latest/oversubscription/index.html
    mesos/site/publish/documentation/latest/reconciliation/index.html
    mesos/site/publish/documentation/latest/release-guide/index.html
    mesos/site/publish/documentation/latest/upgrades/index.html
    mesos/site/publish/documentation/mesos-ssl/index.html
    mesos/site/publish/documentation/operational-guide/index.html
    mesos/site/publish/documentation/oversubscription/index.html
    mesos/site/publish/documentation/reconciliation/index.html
    mesos/site/publish/documentation/release-guide/index.html
    mesos/site/publish/documentation/upgrades/index.html
    mesos/site/publish/gettingstarted/index.html
    mesos/site/publish/sitemap.xml
    mesos/site/source/documentation/latest.html.md
    mesos/site/source/documentation/latest/authorization.md
    mesos/site/source/documentation/latest/committers.md
    mesos/site/source/documentation/latest/getting-started.md
    mesos/site/source/documentation/latest/mesos-ssl.md
    mesos/site/source/documentation/latest/operational-guide.md
    mesos/site/source/documentation/latest/oversubscription.md
    mesos/site/source/documentation/latest/reconciliation.md
    mesos/site/source/documentation/latest/release-guide.md
    mesos/site/source/documentation/latest/upgrades.md

Modified: mesos/site/publish/documentation/authorization/index.html
URL: http://svn.apache.org/viewvc/mesos/site/publish/documentation/authorization/index.html?rev=1693459&r1=1693458&r2=1693459&view=diff
==============================================================================
--- mesos/site/publish/documentation/authorization/index.html (original)
+++ mesos/site/publish/documentation/authorization/index.html Thu Jul 30 17:12:19 2015
@@ -139,7 +139,7 @@
 
 <p>Similarly, when a framework launches a task(s), &ldquo;run_tasks&rdquo; ACLs are checked to see if the framework (<code>FrameworkInfo.principal</code>) is authorized to run the task/executor as the given <code>user</code>. If not authorized, the launch is rejected and the framework gets a TASK_LOST.</p>
 
-<p>In the same vein, when a user/principal attempts to shutdown a framework through the &ldquo;/shutdown&rdquo; HTTP endpoint on the master, &ldquo;shutdown_frameworks&rdquo; ACLs are checked to see if the <code>principal</code> is authorized to shutdown the given framework. If not authorized, the shutdown is rejected and the user receives an <code>Unauthorized</code> HTTP response.</p>
+<p>In the same vein, when a user/principal attempts to shutdown a framework through the &ldquo;/teardown&rdquo; HTTP endpoint on the master, &ldquo;shutdown_frameworks&rdquo; ACLs are checked to see if the <code>principal</code> is authorized to shutdown the given framework. If not authorized, the shutdown is rejected and the user receives an <code>Unauthorized</code> HTTP response.</p>
 
 <p>There are couple of important things to note:</p>
 
@@ -239,7 +239,7 @@
                               ]
      }
 </code></pre></li>
-<li><p>Only <code>ops</code> principal can shutdown any frameworks through &ldquo;/shutdown&rdquo; HTTP endpoint.</p>
+<li><p>Only <code>ops</code> principal can shutdown any frameworks through &ldquo;/teardown&rdquo; HTTP endpoint.</p>
 
 <pre><code>     {
        "permissive" : false,

Modified: mesos/site/publish/documentation/committers/index.html
URL: http://svn.apache.org/viewvc/mesos/site/publish/documentation/committers/index.html?rev=1693459&r1=1693458&r2=1693459&view=diff
==============================================================================
--- mesos/site/publish/documentation/committers/index.html (original)
+++ mesos/site/publish/documentation/committers/index.html Thu Jul 30 17:12:19 2015
@@ -83,9 +83,15 @@
 	<div class="col-md-8">
 		<h1>Committers</h1>
 
+<p>An Apache Mesos committer is a contributor who has been given write access to the Apache Mesos code repository and related Apache infrastructure. In the Mesos project, each committer is also a voting member of the PMC.</p>
+
+<h2>Becoming a committer</h2>
+
+<p>Every new committer has to be proposed by a current committer and then voted in by the members of the Mesos PMC. For details about this process and for candidate requirements see the general <a href="https://community.apache.org/newcommitter.html">Apache guidelines for assessing new candidates for committership</a>. Candidates prepare for their nomination as committer by contributing to the Mesos project and its community, by acting according to the <a href="http://theapacheway.com">Apache Way</a>, and by generally following the path <a href="https://community.apache.org/contributors/">from contributor to committer</a> for Apache projects. Specifically for the Mesos project, you can make use of the <a href="https://community.apache.org/committer-candidate-checklist/">Apache Mesos Committer Candidate Checklist</a> for suggestions of what kind of contributions and demonstrated behaviors can be instrumental, and to keep track of your progress.</p>
+
 <h2>Current Committers</h2>
 
-<p>We&rsquo;d like to thank the following committers to the Apache Mesos project who have helped get the project to where it is today. Committers are voted on by members of the Mesos PMC. This list might be stale, the canonical list is located on <a href="http://people.apache.org/committers-by-project.html#mesos">Apache&rsquo;s website</a>.</p>
+<p>We&rsquo;d like to thank the following committers to the Apache Mesos project who have helped get the project to where it is today. This list might be stale, the canonical list is located on <a href="http://people.apache.org/committers-by-project.html#mesos">Apache&rsquo;s website</a>.</p>
 
 <table class="table table-hover table-condensed">
   <thead>

Modified: mesos/site/publish/documentation/getting-started/index.html
URL: http://svn.apache.org/viewvc/mesos/site/publish/documentation/getting-started/index.html?rev=1693459&r1=1693458&r2=1693459&view=diff
==============================================================================
--- mesos/site/publish/documentation/getting-started/index.html (original)
+++ mesos/site/publish/documentation/getting-started/index.html Thu Jul 30 17:12:19 2015
@@ -90,8 +90,8 @@
 <ol>
 <li><p>Download the latest stable release from <a href="http://mesos.apache.org/downloads/">Apache</a> (<strong><em>Recommended</em></strong>)</p>
 
-<pre><code> $ wget http://www.apache.org/dist/mesos/0.22.1/mesos-0.22.1.tar.gz
- $ tar -zxf mesos-0.22.1.tar.gz
+<pre><code> $ wget http://www.apache.org/dist/mesos/0.23.0/mesos-0.23.0.tar.gz
+ $ tar -zxf mesos-0.23.0.tar.gz
 </code></pre></li>
 <li><p>Clone the Mesos git <a href="https://git-wip-us.apache.org/repos/asf/mesos.git">repository</a> (<strong><em>Advanced Users Only</em></strong>)</p>
 

Modified: mesos/site/publish/documentation/index.html
URL: http://svn.apache.org/viewvc/mesos/site/publish/documentation/index.html?rev=1693459&r1=1693458&r2=1693459&view=diff
==============================================================================
--- mesos/site/publish/documentation/index.html (original)
+++ mesos/site/publish/documentation/index.html Thu Jul 30 17:12:19 2015
@@ -107,6 +107,7 @@
 <li><a href="/documentation/latest/network-monitoring/">Network Monitoring and Isolation</a></li>
 <li><a href="/documentation/latest/slave-recovery/">Slave Recovery</a> for doing seamless upgrades.</li>
 <li><a href="/documentation/latest/tools/">Tools</a> for setting up and running a Mesos cluster.</li>
+<li><a href="/documentation/latest/mesos-ssl/">SSL</a> for enabling and enforcing SSL communication.</li>
 </ul>
 
 

Modified: mesos/site/publish/documentation/latest/authorization/index.html
URL: http://svn.apache.org/viewvc/mesos/site/publish/documentation/latest/authorization/index.html?rev=1693459&r1=1693458&r2=1693459&view=diff
==============================================================================
--- mesos/site/publish/documentation/latest/authorization/index.html (original)
+++ mesos/site/publish/documentation/latest/authorization/index.html Thu Jul 30 17:12:19 2015
@@ -139,7 +139,7 @@
 
 <p>Similarly, when a framework launches a task(s), &ldquo;run_tasks&rdquo; ACLs are checked to see if the framework (<code>FrameworkInfo.principal</code>) is authorized to run the task/executor as the given <code>user</code>. If not authorized, the launch is rejected and the framework gets a TASK_LOST.</p>
 
-<p>In the same vein, when a user/principal attempts to shutdown a framework through the &ldquo;/shutdown&rdquo; HTTP endpoint on the master, &ldquo;shutdown_frameworks&rdquo; ACLs are checked to see if the <code>principal</code> is authorized to shutdown the given framework. If not authorized, the shutdown is rejected and the user receives an <code>Unauthorized</code> HTTP response.</p>
+<p>In the same vein, when a user/principal attempts to shutdown a framework through the &ldquo;/teardown&rdquo; HTTP endpoint on the master, &ldquo;shutdown_frameworks&rdquo; ACLs are checked to see if the <code>principal</code> is authorized to shutdown the given framework. If not authorized, the shutdown is rejected and the user receives an <code>Unauthorized</code> HTTP response.</p>
 
 <p>There are couple of important things to note:</p>
 
@@ -239,7 +239,7 @@
                               ]
      }
 </code></pre></li>
-<li><p>Only <code>ops</code> principal can shutdown any frameworks through &ldquo;/shutdown&rdquo; HTTP endpoint.</p>
+<li><p>Only <code>ops</code> principal can shutdown any frameworks through &ldquo;/teardown&rdquo; HTTP endpoint.</p>
 
 <pre><code>     {
        "permissive" : false,

Modified: mesos/site/publish/documentation/latest/committers/index.html
URL: http://svn.apache.org/viewvc/mesos/site/publish/documentation/latest/committers/index.html?rev=1693459&r1=1693458&r2=1693459&view=diff
==============================================================================
--- mesos/site/publish/documentation/latest/committers/index.html (original)
+++ mesos/site/publish/documentation/latest/committers/index.html Thu Jul 30 17:12:19 2015
@@ -83,9 +83,15 @@
 	<div class="col-md-8">
 		<h1>Committers</h1>
 
+<p>An Apache Mesos committer is a contributor who has been given write access to the Apache Mesos code repository and related Apache infrastructure. In the Mesos project, each committer is also a voting member of the PMC.</p>
+
+<h2>Becoming a committer</h2>
+
+<p>Every new committer has to be proposed by a current committer and then voted in by the members of the Mesos PMC. For details about this process and for candidate requirements see the general <a href="https://community.apache.org/newcommitter.html">Apache guidelines for assessing new candidates for committership</a>. Candidates prepare for their nomination as committer by contributing to the Mesos project and its community, by acting according to the <a href="http://theapacheway.com">Apache Way</a>, and by generally following the path <a href="https://community.apache.org/contributors/">from contributor to committer</a> for Apache projects. Specifically for the Mesos project, you can make use of the <a href="https://community.apache.org/committer-candidate-checklist/">Apache Mesos Committer Candidate Checklist</a> for suggestions of what kind of contributions and demonstrated behaviors can be instrumental, and to keep track of your progress.</p>
+
 <h2>Current Committers</h2>
 
-<p>We&rsquo;d like to thank the following committers to the Apache Mesos project who have helped get the project to where it is today. Committers are voted on by members of the Mesos PMC. This list might be stale, the canonical list is located on <a href="http://people.apache.org/committers-by-project.html#mesos">Apache&rsquo;s website</a>.</p>
+<p>We&rsquo;d like to thank the following committers to the Apache Mesos project who have helped get the project to where it is today. This list might be stale, the canonical list is located on <a href="http://people.apache.org/committers-by-project.html#mesos">Apache&rsquo;s website</a>.</p>
 
 <table class="table table-hover table-condensed">
   <thead>

Modified: mesos/site/publish/documentation/latest/getting-started/index.html
URL: http://svn.apache.org/viewvc/mesos/site/publish/documentation/latest/getting-started/index.html?rev=1693459&r1=1693458&r2=1693459&view=diff
==============================================================================
--- mesos/site/publish/documentation/latest/getting-started/index.html (original)
+++ mesos/site/publish/documentation/latest/getting-started/index.html Thu Jul 30 17:12:19 2015
@@ -90,8 +90,8 @@
 <ol>
 <li><p>Download the latest stable release from <a href="http://mesos.apache.org/downloads/">Apache</a> (<strong><em>Recommended</em></strong>)</p>
 
-<pre><code> $ wget http://www.apache.org/dist/mesos/0.22.1/mesos-0.22.1.tar.gz
- $ tar -zxf mesos-0.22.1.tar.gz
+<pre><code> $ wget http://www.apache.org/dist/mesos/0.23.0/mesos-0.23.0.tar.gz
+ $ tar -zxf mesos-0.23.0.tar.gz
 </code></pre></li>
 <li><p>Clone the Mesos git <a href="https://git-wip-us.apache.org/repos/asf/mesos.git">repository</a> (<strong><em>Advanced Users Only</em></strong>)</p>
 

Modified: mesos/site/publish/documentation/latest/index.html
URL: http://svn.apache.org/viewvc/mesos/site/publish/documentation/latest/index.html?rev=1693459&r1=1693458&r2=1693459&view=diff
==============================================================================
--- mesos/site/publish/documentation/latest/index.html (original)
+++ mesos/site/publish/documentation/latest/index.html Thu Jul 30 17:12:19 2015
@@ -107,6 +107,7 @@
 <li><a href="/documentation/latest/network-monitoring/">Network Monitoring and Isolation</a></li>
 <li><a href="/documentation/latest/slave-recovery/">Slave Recovery</a> for doing seamless upgrades.</li>
 <li><a href="/documentation/latest/tools/">Tools</a> for setting up and running a Mesos cluster.</li>
+<li><a href="/documentation/latest/mesos-ssl/">SSL</a> for enabling and enforcing SSL communication.</li>
 </ul>
 
 

Modified: mesos/site/publish/documentation/latest/mesos-ssl/index.html
URL: http://svn.apache.org/viewvc/mesos/site/publish/documentation/latest/mesos-ssl/index.html?rev=1693459&r1=1693458&r2=1693459&view=diff
==============================================================================
--- mesos/site/publish/documentation/latest/mesos-ssl/index.html (original)
+++ mesos/site/publish/documentation/latest/mesos-ssl/index.html Thu Jul 30 17:12:19 2015
@@ -85,7 +85,7 @@
 
 <p>There is currently only one implementation of the <a href="https://github.com/apache/mesos/blob/master/3rdparty/libprocess/include/process/socket.hpp">libprocess socket interface</a> that supports SSL. This implementation uses <a href="https://github.com/libevent/libevent">libevent</a>. Specifically it relies on the <code>libevent-openssl</code> library that wraps <code>openssl</code>.</p>
 
-<p>After building <code>Mesos 0.23.0</code> from source, assuming you have installed the required <a href="#Dependencies">Dependencies</a>, you can modify your configure line to enable SSL as follows:</p>
+<p>After building Mesos 0.23.0 from source, assuming you have installed the required <a href="#Dependencies">Dependencies</a>, you can modify your configure line to enable SSL as follows:</p>
 
 <pre><code>../configure --enable-libevent --enable-ssl
 </code></pre>
@@ -94,96 +94,96 @@
 
 <p>Once you have successfully built and installed your new binaries, here are the environment variables that are applicable to the <code>Master</code>, <code>Slave</code>, <code>Framework Scheduler/Executor</code>, or any <code>libprocess process</code>:</p>
 
-<h5>SSL_ENABLED=(false|0,true|1) [default=false|0]</h5>
+<h4>SSL_ENABLED=(false|0,true|1) [default=false|0]</h4>
 
 <p>Turn on or off SSL. When it is turned off it is the equivalent of default mesos with libevent as the backing for events. All sockets default to the non-SSL implementation. When it is turned on, the default configuration for sockets is SSL. This means outgoing connections will use SSL, and incoming connections will be expected to speak SSL as well. None of the below flags are relevant if SSL is not enabled.</p>
 
-<h5>SSL_SUPPORT_DOWNGRADE=(false|0,true|1) [default=false|0]</h5>
+<h4>SSL_SUPPORT_DOWNGRADE=(false|0,true|1) [default=false|0]</h4>
 
-<p>Control whether or not non-SSL connections can be established. If this is enabled <strong>on the accepting side</strong>, then the accepting side will downgrade to a non-SSL socket if the connecting side is attempting to communicate via non-SSL. (e.g. http). See <a href="#Upgrading">Upgrading Your Cluster</a> for more details.</p>
+<p>Control whether or not non-SSL connections can be established. If this is enabled <strong>on the accepting side</strong>, then the accepting side will downgrade to a non-SSL socket if the connecting side is attempting to communicate via non-SSL. (e.g. HTTP). See <a href="#Upgrading">Upgrading Your Cluster</a> for more details.</p>
 
-<h5>SSL_CERT_FILE=(path to certificate)</h5>
+<h4>SSL_CERT_FILE=(path to certificate)</h4>
 
-<p>The location of the certificate this binary will present.</p>
+<p>The location of the certificate that will be presented.</p>
 
-<h5>SSL_KEY_FILE=(path to key)</h5>
+<h4>SSL_KEY_FILE=(path to key)</h4>
 
 <p>The location of the private key used by OpenSSL.</p>
 
-<h5>SSL_VERIFY_CERT=(false|0,true|1) [default=false|0]</h5>
+<h4>SSL_VERIFY_CERT=(false|0,true|1) [default=false|0]</h4>
 
 <p>Control whether certificates are verified when presented. If this is false, even when a certificate is presented, it will not be verified. When <code>SSL_REQUIRE_CERT</code> is true, <code>SSL_VERIFY_CERT</code> is overridden and all certificates will be verified <em>and</em> required.</p>
 
-<h5>SSL_REQUIRE_CERT=(false|0,true|1) [default=false|0]</h5>
+<h4>SSL_REQUIRE_CERT=(false|0,true|1) [default=false|0]</h4>
 
 <p>Enforce that certificates must be presented by connecting clients. This means all connections (including tools hitting endpoints) must present valid certificates in order to establish a connection.</p>
 
-<h5>SSL_VERIFY_DEPTH=(4) [default=4]</h5>
+<h4>SSL_VERIFY_DEPTH=(N) [default=4]</h4>
 
 <p>The maximum depth used to verify certificates. The default is 4. See the OpenSSL documentation or contact your system administrator to learn why you may want to change this.</p>
 
-<h5>SSL_CA_DIR=(path to CA directory)</h5>
+<h4>SSL_CA_DIR=(path to CA directory)</h4>
 
 <p>The directory used to find the certificate authority / authorities. You can specify <code>SSL_CA_DIR</code> or <code>SSL_CA_FILE</code> depending on how you want to restrict your certificate authorization.</p>
 
-<h5>SSL_CA_FILE=(path to CA file)</h5>
+<h4>SSL_CA_FILE=(path to CA file)</h4>
 
 <p>The file used to find the certificate authority. You can specify <code>SSL_CA_DIR</code> or <code>SSL_CA_FILE</code> depending on how you want to restrict your certificate authorization.</p>
 
-<h5>SSL_CIPHERS=(accepted ciphers separated by &lsquo;:&rsquo;) [default=AES128-SHA:AES256-SHA:RC4-SHA:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA:DHE-RSA-AES256-SHA:DHE-DSS-AES256-SHA]</h5>
+<h4>SSL_CIPHERS=(accepted ciphers separated by &lsquo;:&rsquo;) [default=AES128-SHA:AES256-SHA:RC4-SHA:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA:DHE-RSA-AES256-SHA:DHE-DSS-AES256-SHA]</h4>
 
 <p>A list of <code>:</code>-separated ciphers. Use these if you want to restrict or open up the accepted ciphers for OpenSSL. Read the OpenSSL documentation or contact your system administrators to see whether you want to override the default values.</p>
 
-<h5>SSL_ENABLE_SSL_V2=(false|0,true|1) [default=false|0]</h5>
+<h4>SSL_ENABLE_SSL_V3=(false|0,true|1) [default=false|0]</h4>
 
-<h5>SSL_ENABLE_SSL_V3=(false|0,true|1) [default=false|0]</h5>
+<h4>SSL_ENABLE_TLS_V1_0=(false|0,true|1) [default=false|0]</h4>
 
-<h5>SSL_ENABLE_TLS_V1_0=(false|0,true|1) [default=false|0]</h5>
+<h4>SSL_ENABLE_TLS_V1_1=(false|0,true|1) [default=false|0]</h4>
 
-<h5>SSL_ENABLE_TLS_V1_1=(false|0,true|1) [default=false|0]</h5>
+<h4>SSL_ENABLE_TLS_V1_2=(false|0,true|1) [default=true|1]</h4>
 
-<h5>SSL_ENABLE_TLS_V1_2=(false|0,true|1) [default=true|1]</h5>
-
-<p>The above switches enable / disable the specified protocols. By default only TLS V1.2 is enabled. The mentality here is to restrict security by default, and force users to open it up explicitly. Many older version of the protocols have known vulnerabilities, so only enable these if you understand the risks fully.</p>
+<p>The above switches enable / disable the specified protocols. By default only TLS V1.2 is enabled. SSL V2 is always disabled; there is no switch to enable it. The mentality here is to restrict security by default, and force users to open it up explicitly. Many older version of the protocols have known vulnerabilities, so only enable these if you fully understand the risks.
+<em>SSLv2 is disabled completely because modern versions of OpenSSL disable it using multiple compile time configuration options.</em></p>
 
 <h1><a name="Dependencies"></a>Dependencies</h1>
 
 <h3>libevent</h3>
 
-<p>We require the OpenSSL support from libevent. The suggested version of libevent is <a href="https://github.com/libevent/libevent/releases/tag/release-2.0.22-stable"><code>2.0.22-stable</code></a>. As new releases come out we will try to maintain compatibility.
-~~~
-// For example, on OSX:
+<p>We require the OpenSSL support from libevent. The suggested version of libevent is <a href="https://github.com/libevent/libevent/releases/tag/release-2.0.22-stable"><code>2.0.22-stable</code></a>. As new releases come out we will try to maintain compatibility.</p>
+
+<pre><code>// For example, on OSX:
 brew install libevent
-~~~</p>
+</code></pre>
 
 <h3>OpenSSL</h3>
 
 <p>We require <a href="https://github.com/openssl/openssl">OpenSSL</a>. There are multiple branches of OpenSSL that are being maintained by the community. Since security requires being vigilant, we recommend reading the release notes for the current releases of OpenSSL and deciding on a version within your organization based on your security needs. Mesos is not too deeply dependent on specific OpenSSL versions, so there is room for you to make security decisions as an organization.
-Please ensure the <code>event2</code> and <code>openssl</code> headers are available for building mesos.
-~~~
-// For example, on OSX:
+Please ensure the <code>event2</code> and <code>openssl</code> headers are available for building mesos.</p>
+
+<pre><code>// For example, on OSX:
 brew install openssl
-~~~</p>
+</code></pre>
 
 <h1><a name="Upgrading"></a>Upgrading Your Cluster</h1>
 
 <p><em>There is no SSL specific requirement for upgrading different components in a specific order.</em></p>
 
-<p>The recommended strategy is to restart all your components to enable SSL with downgrades support enabled. Once all components have SSL enabled, then do a second restart of all your components to disable downgrades. This strategy will allow each component to be restarted independently at your own convenience with no time restrictions. It will also allow you to try SSL in a subset of your cluster. <em>Please note:</em> While different components in your cluster are serving SSL vs non-SSL traffic, any relative links in the WebUI may be broken. Please see the <a href="#WebUI">WebUI</a> section for details. Here are sample commands for upgrading your cluster:
-~~~
-// Restart each component with downgrade support (master, slave, framework):
-SSL_ENABLED=true SSL_SUPPORT_DOWNGRADE=true SSL_KEY_FILE=<path-to-your-private-key> SSL_CERT_FILE=<path-to-your-certificate> <Any other SSL_* environment variables you may choose> <your-component (e.g. bin/master.sh)> <your-flags></p>
-
-<p>// Restart each component WITHOUT downgrade support (master, slave, framework):
-SSL_ENABLED=true SSL_SUPPORT_DOWNGRADE=false SSL_KEY_FILE=<path-to-your-private-key> SSL_CERT_FILE=<path-to-your-certificate> <Any other SSL_* environment variables you may choose> <your-component (e.g. bin/master.sh)> <your-flags>
-~~~
-The end state is a cluster that is only communicating with SSL.</p>
+<p>The recommended strategy is to restart all your components to enable SSL with downgrades support enabled. Once all components have SSL enabled, then do a second restart of all your components to disable downgrades. This strategy will allow each component to be restarted independently at your own convenience with no time restrictions. It will also allow you to try SSL in a subset of your cluster. <strong>NOTE:</strong> While different components in your cluster are serving SSL vs non-SSL traffic, any relative links in the WebUI may be broken. Please see the <a href="#WebUI">WebUI</a> section for details. Here are sample commands for upgrading your cluster:</p>
+
+<pre><code>// Restart each component with downgrade support (master, slave, framework):
+SSL_ENABLED=true SSL_SUPPORT_DOWNGRADE=true SSL_KEY_FILE=&lt;path-to-your-private-key&gt; SSL_CERT_FILE=&lt;path-to-your-certificate&gt; &lt;Any other SSL_* environment variables you may choose&gt; &lt;your-component (e.g. bin/master.sh)&gt; &lt;your-flags&gt;
+
+// Restart each component WITHOUT downgrade support (master, slave, framework):
+SSL_ENABLED=true SSL_SUPPORT_DOWNGRADE=false SSL_KEY_FILE=&lt;path-to-your-private-key&gt; SSL_CERT_FILE=&lt;path-to-your-certificate&gt; &lt;Any other SSL_* environment variables you may choose&gt; &lt;your-component (e.g. bin/master.sh)&gt; &lt;your-flags&gt;
+</code></pre>
+
+<p>The end state is a cluster that is only communicating with SSL.</p>
 
-<p><em>Please note:</em> Any tools you may use that communicate with your components must be able to talk SSL, or they will be denied. You may choose to maintain <code>SSL_SUPPORT_DOWNGRADE=true</code> for some time as you upgrade your internal tooling. The advantage of <code>SSL_SUPPORT_DOWNGRADE=true</code> is that all components that speak SSL will do so, while other components may still communicate over insecure channels.</p>
+<p><strong>NOTE:</strong> Any tools you may use that communicate with your components must be able to speak SSL, or they will be denied. You may choose to maintain <code>SSL_SUPPORT_DOWNGRADE=true</code> for some time as you upgrade your internal tooling. The advantage of <code>SSL_SUPPORT_DOWNGRADE=true</code> is that all components that speak SSL will do so, while other components may still communicate over insecure channels.</p>
 
 <h1><a name="WebUI"></a>WebUI</h1>
 
-<p>The default Mesos WebUI uses relative links. Some of these links transition between endpoints served by the master and slaves. The WebUI currently does not have enough information to change the &lsquo;http&rsquo; vs &lsquo;https&rsquo; links based on whether the target endpoint is currently being served by an SSL-enabled binary. This may cause certain links in the WebUI to be broken when a cluster is in a transition state between SSL and non-SSL. Any tools that hit these endpoints will still be able to access them as long as they hit the endpoint using the right protocol, or the SSL_SUPPORT_DOWNGRADE option is set to true.</p>
+<p>The default Mesos WebUI uses relative links. Some of these links transition between endpoints served by the master and slaves. The WebUI currently does not have enough information to change the &lsquo;http&rsquo; vs &lsquo;https&rsquo; links based on whether the target endpoint is currently being served by an SSL-enabled binary. This may cause certain links in the WebUI to be broken when a cluster is in a transition state between SSL and non-SSL. Any tools that hit these endpoints will still be able to access them as long as they hit the endpoint using the right protocol, or the <code>SSL_SUPPORT_DOWNGRADE</code> option is set to true.</p>
 
 <h3>Certificates</h3>
 

Modified: mesos/site/publish/documentation/latest/operational-guide/index.html
URL: http://svn.apache.org/viewvc/mesos/site/publish/documentation/latest/operational-guide/index.html?rev=1693459&r1=1693458&r2=1693459&view=diff
==============================================================================
--- mesos/site/publish/documentation/latest/operational-guide/index.html (original)
+++ mesos/site/publish/documentation/latest/operational-guide/index.html Thu Jul 30 17:12:19 2015
@@ -150,6 +150,17 @@
 
 <p>To increase the quorum by N, repeat this process to increment the quorum size N times.</p>
 
+<p>NOTE: Currently, moving out of a single master setup requires wiping the replicated log
+state and starting fresh. This will wipe all persistent data (e.g. slaves, maintenance
+information, quota information, etc). To move from 1 master to 3 masters:</p>
+
+<ol>
+<li>Stop the standalone master.</li>
+<li>Remove the replicated log data (<code>replicated_log</code> under the <code>--work_dir</code>).</li>
+<li>Start the original master and two new masters with <code>--quorum=2</code></li>
+</ol>
+
+
 <h3>Decreasing the quorum size</h3>
 
 <p>The following steps indicate how to decrement the quorum size, using 5 -> 3 masters as an example (quorum size 3 -> 2):</p>

Modified: mesos/site/publish/documentation/latest/oversubscription/index.html
URL: http://svn.apache.org/viewvc/mesos/site/publish/documentation/latest/oversubscription/index.html?rev=1693459&r1=1693458&r2=1693459&view=diff
==============================================================================
--- mesos/site/publish/documentation/latest/oversubscription/index.html (original)
+++ mesos/site/publish/documentation/latest/oversubscription/index.html Thu Jul 30 17:12:19 2015
@@ -81,9 +81,7 @@
 		<p>See our <a href="/community/">community</a> page for more details.</p>
 	</div>
 	<div class="col-md-8">
-		<p>&mdash; layout: documentation &mdash;</p>
-
-<h1>Oversubscription</h1>
+		<h1>Oversubscription</h1>
 
 <p>High-priority user-facing services are typically provisioned on large clusters
 for peak load and unexpected load spikes. Hence, for most of time, the
@@ -136,7 +134,7 @@ resources such as cpu shares, bandwidth,
 the regular launchTasks() API. To safe-guard frameworks that are not
 designed to deal with preemption, only frameworks registering with the
 <code>REVOCABLE_RESOURCES</code> capability set in its framework info will receive offers
-with revocable resources.  Further more, recovable resources cannot be
+with revocable resources.  Further more, revocable resources cannot be
 dynamically reserved and persistent volumes should not be created on revocable
 disk resources.</li>
 </ul>
@@ -187,8 +185,8 @@ instructions how to configure Mesos for
 
 <h3>Launching tasks using revocable resources</h3>
 
-<p>Launching tasks using recovable resources is done through the existing
-<code>launchTasks</code> API. Revocable resources will have the <code>recovable</code> field set. See
+<p>Launching tasks using revocable resources is done through the existing
+<code>launchTasks</code> API. Revocable resources will have the <code>revocable</code> field set. See
 below for an example offer with regular and revocable resources.</p>
 
 <pre><code class="{.json}">{
@@ -392,7 +390,7 @@ between these corrections is controlled
 <p>In the example above, a fixed amount of 14 cpus will be offered as revocable
 resources.</p>
 
-<p>To select custom a resource estimator and QoS controller, please refer to the
+<p>To install a custom resource estimator and QoS controller, please refer to the
 <a href="/documentation/latest/modules/">modules documentation</a>.</p>
 
 	</div>

Modified: mesos/site/publish/documentation/latest/reconciliation/index.html
URL: http://svn.apache.org/viewvc/mesos/site/publish/documentation/latest/reconciliation/index.html?rev=1693459&r1=1693458&r2=1693459&view=diff
==============================================================================
--- mesos/site/publish/documentation/latest/reconciliation/index.html (original)
+++ mesos/site/publish/documentation/latest/reconciliation/index.html Thu Jul 30 17:12:19 2015
@@ -124,6 +124,18 @@ task state reconciliation.</p>
 
 <h2>Task Reconciliation</h2>
 
+<p>Mesos provides two forms of reconciliation:</p>
+
+<ul>
+<li>&ldquo;Explicit&rdquo; reconciliation: the scheduler sends some of its non-terminal
+tasks and the master responds with the latest state for each task, if
+possible.</li>
+<li>&ldquo;Implicit&rdquo; reconciliation: the scheduler sends an empty list of tasks
+and the master responds with the latest state for all currently known
+non-terminal tasks.</li>
+</ul>
+
+
 <p><strong>Tasks must be reconciled explicitly by the framework after a failure.</strong></p>
 
 <p>This is because the scheduler driver does not persist any task information.
@@ -160,29 +172,41 @@ slaves that are transitioning between st
 
 <h3>Algorithm</h3>
 
-<p>The technique for performing reconciliation should reconcile all non-terminal
-tasks, until an update is received for each task, using exponential backoff:</p>
+<p>This technique for explicit reconciliation reconciles all non-terminal tasks,
+until an update is received for each task, using exponential backoff to retry
+tasks that remain unreconciled. Retries are needed because the master temporarily
+may not be able to reply for a particular task. For example, during master
+failover the master must re-register all of the slaves to rebuild its
+set of known tasks (this process can take minutes for large clusters, and
+is bounded by the <code>--slave_reregister_timeout</code> flag on the master).</p>
+
+<p>Steps:</p>
 
 <ol>
 <li>let <code>start = now()</code></li>
 <li>let <code>remaining = { T in tasks | T is non-terminal }</code></li>
 <li>Perform reconciliation: <code>reconcile(remaining)</code></li>
 <li>Wait for status updates to arrive (use truncated exponential backoff). For each update, note the time of arrival.</li>
-<li>let <code>remaining = { T in remaining | T.last_update_arrival() &lt; start }</code></li>
+<li>let <code>remaining = { T ϵ remaining | T.last_update_arrival() &lt; start }</code></li>
 <li>If <code>remaining</code> is non-empty, go to 3.</li>
 </ol>
 
 
 <p>This reconciliation algorithm <strong>must</strong> be run after each (re-)registration.</p>
 
+<p>Implicit reconciliation (passing an empty list) should also be used
+periodically, as a defense against data loss in the framework. Unless a
+strict registry is in use on the master, its possible for tasks to resurrect
+from a LOST state (without a strict registry the master does not enforce
+slave removal across failovers). When an unknown task is encountered, the
+scheduler should kill or recover the task.</p>
+
 <p>Notes:</p>
 
 <ul>
 <li>When waiting for updates to arrive, <strong>use a truncated exponential backoff</strong>.
 This will avoid a snowball effect in the case of the driver or master being
 backed up.</li>
-<li>Implicit reconciliation (passing an empty list) can also be used
-periodically, As a defense against data loss in the framework.</li>
 <li>It is beneficial to ensure that only 1 reconciliation is in progress at a
 time, to avoid a snowball effect in the face of many re-registrations.
 If another reconciliation should be started while one is in-progress,

Modified: mesos/site/publish/documentation/latest/release-guide/index.html
URL: http://svn.apache.org/viewvc/mesos/site/publish/documentation/latest/release-guide/index.html?rev=1693459&r1=1693458&r2=1693459&view=diff
==============================================================================
--- mesos/site/publish/documentation/latest/release-guide/index.html (original)
+++ mesos/site/publish/documentation/latest/release-guide/index.html Thu Jul 30 17:12:19 2015
@@ -256,6 +256,7 @@ for details on how to build and publish
 <pre><code> $ svn co https://svn.apache.org/repos/asf/mesos/site mesos-site
 </code></pre></li>
 <li><p>Write a blog post announcing the new release and its features and major bug fixes.</p></li>
+<li><p>Update the Getting Started guide to use the latest release link.</p></li>
 </ol>
 
 

Modified: mesos/site/publish/documentation/latest/upgrades/index.html
URL: http://svn.apache.org/viewvc/mesos/site/publish/documentation/latest/upgrades/index.html?rev=1693459&r1=1693458&r2=1693459&view=diff
==============================================================================
--- mesos/site/publish/documentation/latest/upgrades/index.html (original)
+++ mesos/site/publish/documentation/latest/upgrades/index.html Thu Jul 30 17:12:19 2015
@@ -87,6 +87,10 @@
 
 <h2>Upgrading from 0.22.x to 0.23.x</h2>
 
+<p><strong>NOTE</strong> The &lsquo;stats.json&rsquo; endpoints for masters and slaves have been removed. Please use the &lsquo;metrics/snapshot&rsquo; endpoints instead.</p>
+
+<p><strong>NOTE</strong> The &lsquo;/master/shutdown&rsquo; endpoint is deprecated in favor of the new &lsquo;/master/teardown&rsquo; endpoint.</p>
+
 <p><strong>NOTE</strong> In order to enable decorator modules to remove metadata (environment variables or labels), we changed the meaning of the return value for decorator hooks in Mesos 0.23.0. Please refer to the modules documentation for more details.</p>
 
 <p><strong>NOTE</strong> Slave ping timeouts are now configurable on the master via <code>--slave_ping_timeout</code> and <code>--max_slave_ping_timeouts</code>. Slaves should be upgraded to 0.23.x before changing these flags.</p>

Modified: mesos/site/publish/documentation/mesos-ssl/index.html
URL: http://svn.apache.org/viewvc/mesos/site/publish/documentation/mesos-ssl/index.html?rev=1693459&r1=1693458&r2=1693459&view=diff
==============================================================================
--- mesos/site/publish/documentation/mesos-ssl/index.html (original)
+++ mesos/site/publish/documentation/mesos-ssl/index.html Thu Jul 30 17:12:19 2015
@@ -85,7 +85,7 @@
 
 <p>There is currently only one implementation of the <a href="https://github.com/apache/mesos/blob/master/3rdparty/libprocess/include/process/socket.hpp">libprocess socket interface</a> that supports SSL. This implementation uses <a href="https://github.com/libevent/libevent">libevent</a>. Specifically it relies on the <code>libevent-openssl</code> library that wraps <code>openssl</code>.</p>
 
-<p>After building <code>Mesos 0.23.0</code> from source, assuming you have installed the required <a href="#Dependencies">Dependencies</a>, you can modify your configure line to enable SSL as follows:</p>
+<p>After building Mesos 0.23.0 from source, assuming you have installed the required <a href="#Dependencies">Dependencies</a>, you can modify your configure line to enable SSL as follows:</p>
 
 <pre><code>../configure --enable-libevent --enable-ssl
 </code></pre>
@@ -94,96 +94,96 @@
 
 <p>Once you have successfully built and installed your new binaries, here are the environment variables that are applicable to the <code>Master</code>, <code>Slave</code>, <code>Framework Scheduler/Executor</code>, or any <code>libprocess process</code>:</p>
 
-<h5>SSL_ENABLED=(false|0,true|1) [default=false|0]</h5>
+<h4>SSL_ENABLED=(false|0,true|1) [default=false|0]</h4>
 
 <p>Turn on or off SSL. When it is turned off it is the equivalent of default mesos with libevent as the backing for events. All sockets default to the non-SSL implementation. When it is turned on, the default configuration for sockets is SSL. This means outgoing connections will use SSL, and incoming connections will be expected to speak SSL as well. None of the below flags are relevant if SSL is not enabled.</p>
 
-<h5>SSL_SUPPORT_DOWNGRADE=(false|0,true|1) [default=false|0]</h5>
+<h4>SSL_SUPPORT_DOWNGRADE=(false|0,true|1) [default=false|0]</h4>
 
-<p>Control whether or not non-SSL connections can be established. If this is enabled <strong>on the accepting side</strong>, then the accepting side will downgrade to a non-SSL socket if the connecting side is attempting to communicate via non-SSL. (e.g. http). See <a href="#Upgrading">Upgrading Your Cluster</a> for more details.</p>
+<p>Control whether or not non-SSL connections can be established. If this is enabled <strong>on the accepting side</strong>, then the accepting side will downgrade to a non-SSL socket if the connecting side is attempting to communicate via non-SSL. (e.g. HTTP). See <a href="#Upgrading">Upgrading Your Cluster</a> for more details.</p>
 
-<h5>SSL_CERT_FILE=(path to certificate)</h5>
+<h4>SSL_CERT_FILE=(path to certificate)</h4>
 
-<p>The location of the certificate this binary will present.</p>
+<p>The location of the certificate that will be presented.</p>
 
-<h5>SSL_KEY_FILE=(path to key)</h5>
+<h4>SSL_KEY_FILE=(path to key)</h4>
 
 <p>The location of the private key used by OpenSSL.</p>
 
-<h5>SSL_VERIFY_CERT=(false|0,true|1) [default=false|0]</h5>
+<h4>SSL_VERIFY_CERT=(false|0,true|1) [default=false|0]</h4>
 
 <p>Control whether certificates are verified when presented. If this is false, even when a certificate is presented, it will not be verified. When <code>SSL_REQUIRE_CERT</code> is true, <code>SSL_VERIFY_CERT</code> is overridden and all certificates will be verified <em>and</em> required.</p>
 
-<h5>SSL_REQUIRE_CERT=(false|0,true|1) [default=false|0]</h5>
+<h4>SSL_REQUIRE_CERT=(false|0,true|1) [default=false|0]</h4>
 
 <p>Enforce that certificates must be presented by connecting clients. This means all connections (including tools hitting endpoints) must present valid certificates in order to establish a connection.</p>
 
-<h5>SSL_VERIFY_DEPTH=(4) [default=4]</h5>
+<h4>SSL_VERIFY_DEPTH=(N) [default=4]</h4>
 
 <p>The maximum depth used to verify certificates. The default is 4. See the OpenSSL documentation or contact your system administrator to learn why you may want to change this.</p>
 
-<h5>SSL_CA_DIR=(path to CA directory)</h5>
+<h4>SSL_CA_DIR=(path to CA directory)</h4>
 
 <p>The directory used to find the certificate authority / authorities. You can specify <code>SSL_CA_DIR</code> or <code>SSL_CA_FILE</code> depending on how you want to restrict your certificate authorization.</p>
 
-<h5>SSL_CA_FILE=(path to CA file)</h5>
+<h4>SSL_CA_FILE=(path to CA file)</h4>
 
 <p>The file used to find the certificate authority. You can specify <code>SSL_CA_DIR</code> or <code>SSL_CA_FILE</code> depending on how you want to restrict your certificate authorization.</p>
 
-<h5>SSL_CIPHERS=(accepted ciphers separated by &lsquo;:&rsquo;) [default=AES128-SHA:AES256-SHA:RC4-SHA:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA:DHE-RSA-AES256-SHA:DHE-DSS-AES256-SHA]</h5>
+<h4>SSL_CIPHERS=(accepted ciphers separated by &lsquo;:&rsquo;) [default=AES128-SHA:AES256-SHA:RC4-SHA:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA:DHE-RSA-AES256-SHA:DHE-DSS-AES256-SHA]</h4>
 
 <p>A list of <code>:</code>-separated ciphers. Use these if you want to restrict or open up the accepted ciphers for OpenSSL. Read the OpenSSL documentation or contact your system administrators to see whether you want to override the default values.</p>
 
-<h5>SSL_ENABLE_SSL_V2=(false|0,true|1) [default=false|0]</h5>
+<h4>SSL_ENABLE_SSL_V3=(false|0,true|1) [default=false|0]</h4>
 
-<h5>SSL_ENABLE_SSL_V3=(false|0,true|1) [default=false|0]</h5>
+<h4>SSL_ENABLE_TLS_V1_0=(false|0,true|1) [default=false|0]</h4>
 
-<h5>SSL_ENABLE_TLS_V1_0=(false|0,true|1) [default=false|0]</h5>
+<h4>SSL_ENABLE_TLS_V1_1=(false|0,true|1) [default=false|0]</h4>
 
-<h5>SSL_ENABLE_TLS_V1_1=(false|0,true|1) [default=false|0]</h5>
+<h4>SSL_ENABLE_TLS_V1_2=(false|0,true|1) [default=true|1]</h4>
 
-<h5>SSL_ENABLE_TLS_V1_2=(false|0,true|1) [default=true|1]</h5>
-
-<p>The above switches enable / disable the specified protocols. By default only TLS V1.2 is enabled. The mentality here is to restrict security by default, and force users to open it up explicitly. Many older version of the protocols have known vulnerabilities, so only enable these if you understand the risks fully.</p>
+<p>The above switches enable / disable the specified protocols. By default only TLS V1.2 is enabled. SSL V2 is always disabled; there is no switch to enable it. The mentality here is to restrict security by default, and force users to open it up explicitly. Many older version of the protocols have known vulnerabilities, so only enable these if you fully understand the risks.
+<em>SSLv2 is disabled completely because modern versions of OpenSSL disable it using multiple compile time configuration options.</em></p>
 
 <h1><a name="Dependencies"></a>Dependencies</h1>
 
 <h3>libevent</h3>
 
-<p>We require the OpenSSL support from libevent. The suggested version of libevent is <a href="https://github.com/libevent/libevent/releases/tag/release-2.0.22-stable"><code>2.0.22-stable</code></a>. As new releases come out we will try to maintain compatibility.
-~~~
-// For example, on OSX:
+<p>We require the OpenSSL support from libevent. The suggested version of libevent is <a href="https://github.com/libevent/libevent/releases/tag/release-2.0.22-stable"><code>2.0.22-stable</code></a>. As new releases come out we will try to maintain compatibility.</p>
+
+<pre><code>// For example, on OSX:
 brew install libevent
-~~~</p>
+</code></pre>
 
 <h3>OpenSSL</h3>
 
 <p>We require <a href="https://github.com/openssl/openssl">OpenSSL</a>. There are multiple branches of OpenSSL that are being maintained by the community. Since security requires being vigilant, we recommend reading the release notes for the current releases of OpenSSL and deciding on a version within your organization based on your security needs. Mesos is not too deeply dependent on specific OpenSSL versions, so there is room for you to make security decisions as an organization.
-Please ensure the <code>event2</code> and <code>openssl</code> headers are available for building mesos.
-~~~
-// For example, on OSX:
+Please ensure the <code>event2</code> and <code>openssl</code> headers are available for building mesos.</p>
+
+<pre><code>// For example, on OSX:
 brew install openssl
-~~~</p>
+</code></pre>
 
 <h1><a name="Upgrading"></a>Upgrading Your Cluster</h1>
 
 <p><em>There is no SSL specific requirement for upgrading different components in a specific order.</em></p>
 
-<p>The recommended strategy is to restart all your components to enable SSL with downgrades support enabled. Once all components have SSL enabled, then do a second restart of all your components to disable downgrades. This strategy will allow each component to be restarted independently at your own convenience with no time restrictions. It will also allow you to try SSL in a subset of your cluster. <em>Please note:</em> While different components in your cluster are serving SSL vs non-SSL traffic, any relative links in the WebUI may be broken. Please see the <a href="#WebUI">WebUI</a> section for details. Here are sample commands for upgrading your cluster:
-~~~
-// Restart each component with downgrade support (master, slave, framework):
-SSL_ENABLED=true SSL_SUPPORT_DOWNGRADE=true SSL_KEY_FILE=<path-to-your-private-key> SSL_CERT_FILE=<path-to-your-certificate> <Any other SSL_* environment variables you may choose> <your-component (e.g. bin/master.sh)> <your-flags></p>
-
-<p>// Restart each component WITHOUT downgrade support (master, slave, framework):
-SSL_ENABLED=true SSL_SUPPORT_DOWNGRADE=false SSL_KEY_FILE=<path-to-your-private-key> SSL_CERT_FILE=<path-to-your-certificate> <Any other SSL_* environment variables you may choose> <your-component (e.g. bin/master.sh)> <your-flags>
-~~~
-The end state is a cluster that is only communicating with SSL.</p>
+<p>The recommended strategy is to restart all your components to enable SSL with downgrades support enabled. Once all components have SSL enabled, then do a second restart of all your components to disable downgrades. This strategy will allow each component to be restarted independently at your own convenience with no time restrictions. It will also allow you to try SSL in a subset of your cluster. <strong>NOTE:</strong> While different components in your cluster are serving SSL vs non-SSL traffic, any relative links in the WebUI may be broken. Please see the <a href="#WebUI">WebUI</a> section for details. Here are sample commands for upgrading your cluster:</p>
+
+<pre><code>// Restart each component with downgrade support (master, slave, framework):
+SSL_ENABLED=true SSL_SUPPORT_DOWNGRADE=true SSL_KEY_FILE=&lt;path-to-your-private-key&gt; SSL_CERT_FILE=&lt;path-to-your-certificate&gt; &lt;Any other SSL_* environment variables you may choose&gt; &lt;your-component (e.g. bin/master.sh)&gt; &lt;your-flags&gt;
+
+// Restart each component WITHOUT downgrade support (master, slave, framework):
+SSL_ENABLED=true SSL_SUPPORT_DOWNGRADE=false SSL_KEY_FILE=&lt;path-to-your-private-key&gt; SSL_CERT_FILE=&lt;path-to-your-certificate&gt; &lt;Any other SSL_* environment variables you may choose&gt; &lt;your-component (e.g. bin/master.sh)&gt; &lt;your-flags&gt;
+</code></pre>
+
+<p>The end state is a cluster that is only communicating with SSL.</p>
 
-<p><em>Please note:</em> Any tools you may use that communicate with your components must be able to talk SSL, or they will be denied. You may choose to maintain <code>SSL_SUPPORT_DOWNGRADE=true</code> for some time as you upgrade your internal tooling. The advantage of <code>SSL_SUPPORT_DOWNGRADE=true</code> is that all components that speak SSL will do so, while other components may still communicate over insecure channels.</p>
+<p><strong>NOTE:</strong> Any tools you may use that communicate with your components must be able to speak SSL, or they will be denied. You may choose to maintain <code>SSL_SUPPORT_DOWNGRADE=true</code> for some time as you upgrade your internal tooling. The advantage of <code>SSL_SUPPORT_DOWNGRADE=true</code> is that all components that speak SSL will do so, while other components may still communicate over insecure channels.</p>
 
 <h1><a name="WebUI"></a>WebUI</h1>
 
-<p>The default Mesos WebUI uses relative links. Some of these links transition between endpoints served by the master and slaves. The WebUI currently does not have enough information to change the &lsquo;http&rsquo; vs &lsquo;https&rsquo; links based on whether the target endpoint is currently being served by an SSL-enabled binary. This may cause certain links in the WebUI to be broken when a cluster is in a transition state between SSL and non-SSL. Any tools that hit these endpoints will still be able to access them as long as they hit the endpoint using the right protocol, or the SSL_SUPPORT_DOWNGRADE option is set to true.</p>
+<p>The default Mesos WebUI uses relative links. Some of these links transition between endpoints served by the master and slaves. The WebUI currently does not have enough information to change the &lsquo;http&rsquo; vs &lsquo;https&rsquo; links based on whether the target endpoint is currently being served by an SSL-enabled binary. This may cause certain links in the WebUI to be broken when a cluster is in a transition state between SSL and non-SSL. Any tools that hit these endpoints will still be able to access them as long as they hit the endpoint using the right protocol, or the <code>SSL_SUPPORT_DOWNGRADE</code> option is set to true.</p>
 
 <h3>Certificates</h3>
 

Modified: mesos/site/publish/documentation/operational-guide/index.html
URL: http://svn.apache.org/viewvc/mesos/site/publish/documentation/operational-guide/index.html?rev=1693459&r1=1693458&r2=1693459&view=diff
==============================================================================
--- mesos/site/publish/documentation/operational-guide/index.html (original)
+++ mesos/site/publish/documentation/operational-guide/index.html Thu Jul 30 17:12:19 2015
@@ -150,6 +150,17 @@
 
 <p>To increase the quorum by N, repeat this process to increment the quorum size N times.</p>
 
+<p>NOTE: Currently, moving out of a single master setup requires wiping the replicated log
+state and starting fresh. This will wipe all persistent data (e.g. slaves, maintenance
+information, quota information, etc). To move from 1 master to 3 masters:</p>
+
+<ol>
+<li>Stop the standalone master.</li>
+<li>Remove the replicated log data (<code>replicated_log</code> under the <code>--work_dir</code>).</li>
+<li>Start the original master and two new masters with <code>--quorum=2</code></li>
+</ol>
+
+
 <h3>Decreasing the quorum size</h3>
 
 <p>The following steps indicate how to decrement the quorum size, using 5 -> 3 masters as an example (quorum size 3 -> 2):</p>

Modified: mesos/site/publish/documentation/oversubscription/index.html
URL: http://svn.apache.org/viewvc/mesos/site/publish/documentation/oversubscription/index.html?rev=1693459&r1=1693458&r2=1693459&view=diff
==============================================================================
--- mesos/site/publish/documentation/oversubscription/index.html (original)
+++ mesos/site/publish/documentation/oversubscription/index.html Thu Jul 30 17:12:19 2015
@@ -81,9 +81,7 @@
 		<p>See our <a href="/community/">community</a> page for more details.</p>
 	</div>
 	<div class="col-md-8">
-		<p>&mdash; layout: documentation &mdash;</p>
-
-<h1>Oversubscription</h1>
+		<h1>Oversubscription</h1>
 
 <p>High-priority user-facing services are typically provisioned on large clusters
 for peak load and unexpected load spikes. Hence, for most of time, the
@@ -136,7 +134,7 @@ resources such as cpu shares, bandwidth,
 the regular launchTasks() API. To safe-guard frameworks that are not
 designed to deal with preemption, only frameworks registering with the
 <code>REVOCABLE_RESOURCES</code> capability set in its framework info will receive offers
-with revocable resources.  Further more, recovable resources cannot be
+with revocable resources.  Further more, revocable resources cannot be
 dynamically reserved and persistent volumes should not be created on revocable
 disk resources.</li>
 </ul>
@@ -187,8 +185,8 @@ instructions how to configure Mesos for
 
 <h3>Launching tasks using revocable resources</h3>
 
-<p>Launching tasks using recovable resources is done through the existing
-<code>launchTasks</code> API. Revocable resources will have the <code>recovable</code> field set. See
+<p>Launching tasks using revocable resources is done through the existing
+<code>launchTasks</code> API. Revocable resources will have the <code>revocable</code> field set. See
 below for an example offer with regular and revocable resources.</p>
 
 <pre><code class="{.json}">{
@@ -392,7 +390,7 @@ between these corrections is controlled
 <p>In the example above, a fixed amount of 14 cpus will be offered as revocable
 resources.</p>
 
-<p>To select custom a resource estimator and QoS controller, please refer to the
+<p>To install a custom resource estimator and QoS controller, please refer to the
 <a href="/documentation/latest/modules/">modules documentation</a>.</p>
 
 	</div>

Modified: mesos/site/publish/documentation/reconciliation/index.html
URL: http://svn.apache.org/viewvc/mesos/site/publish/documentation/reconciliation/index.html?rev=1693459&r1=1693458&r2=1693459&view=diff
==============================================================================
--- mesos/site/publish/documentation/reconciliation/index.html (original)
+++ mesos/site/publish/documentation/reconciliation/index.html Thu Jul 30 17:12:19 2015
@@ -124,6 +124,18 @@ task state reconciliation.</p>
 
 <h2>Task Reconciliation</h2>
 
+<p>Mesos provides two forms of reconciliation:</p>
+
+<ul>
+<li>&ldquo;Explicit&rdquo; reconciliation: the scheduler sends some of its non-terminal
+tasks and the master responds with the latest state for each task, if
+possible.</li>
+<li>&ldquo;Implicit&rdquo; reconciliation: the scheduler sends an empty list of tasks
+and the master responds with the latest state for all currently known
+non-terminal tasks.</li>
+</ul>
+
+
 <p><strong>Tasks must be reconciled explicitly by the framework after a failure.</strong></p>
 
 <p>This is because the scheduler driver does not persist any task information.
@@ -160,29 +172,41 @@ slaves that are transitioning between st
 
 <h3>Algorithm</h3>
 
-<p>The technique for performing reconciliation should reconcile all non-terminal
-tasks, until an update is received for each task, using exponential backoff:</p>
+<p>This technique for explicit reconciliation reconciles all non-terminal tasks,
+until an update is received for each task, using exponential backoff to retry
+tasks that remain unreconciled. Retries are needed because the master temporarily
+may not be able to reply for a particular task. For example, during master
+failover the master must re-register all of the slaves to rebuild its
+set of known tasks (this process can take minutes for large clusters, and
+is bounded by the <code>--slave_reregister_timeout</code> flag on the master).</p>
+
+<p>Steps:</p>
 
 <ol>
 <li>let <code>start = now()</code></li>
 <li>let <code>remaining = { T in tasks | T is non-terminal }</code></li>
 <li>Perform reconciliation: <code>reconcile(remaining)</code></li>
 <li>Wait for status updates to arrive (use truncated exponential backoff). For each update, note the time of arrival.</li>
-<li>let <code>remaining = { T in remaining | T.last_update_arrival() &lt; start }</code></li>
+<li>let <code>remaining = { T ϵ remaining | T.last_update_arrival() &lt; start }</code></li>
 <li>If <code>remaining</code> is non-empty, go to 3.</li>
 </ol>
 
 
 <p>This reconciliation algorithm <strong>must</strong> be run after each (re-)registration.</p>
 
+<p>Implicit reconciliation (passing an empty list) should also be used
+periodically, as a defense against data loss in the framework. Unless a
+strict registry is in use on the master, its possible for tasks to resurrect
+from a LOST state (without a strict registry the master does not enforce
+slave removal across failovers). When an unknown task is encountered, the
+scheduler should kill or recover the task.</p>
+
 <p>Notes:</p>
 
 <ul>
 <li>When waiting for updates to arrive, <strong>use a truncated exponential backoff</strong>.
 This will avoid a snowball effect in the case of the driver or master being
 backed up.</li>
-<li>Implicit reconciliation (passing an empty list) can also be used
-periodically, As a defense against data loss in the framework.</li>
 <li>It is beneficial to ensure that only 1 reconciliation is in progress at a
 time, to avoid a snowball effect in the face of many re-registrations.
 If another reconciliation should be started while one is in-progress,

Modified: mesos/site/publish/documentation/release-guide/index.html
URL: http://svn.apache.org/viewvc/mesos/site/publish/documentation/release-guide/index.html?rev=1693459&r1=1693458&r2=1693459&view=diff
==============================================================================
--- mesos/site/publish/documentation/release-guide/index.html (original)
+++ mesos/site/publish/documentation/release-guide/index.html Thu Jul 30 17:12:19 2015
@@ -256,6 +256,7 @@ for details on how to build and publish
 <pre><code> $ svn co https://svn.apache.org/repos/asf/mesos/site mesos-site
 </code></pre></li>
 <li><p>Write a blog post announcing the new release and its features and major bug fixes.</p></li>
+<li><p>Update the Getting Started guide to use the latest release link.</p></li>
 </ol>
 
 

Modified: mesos/site/publish/documentation/upgrades/index.html
URL: http://svn.apache.org/viewvc/mesos/site/publish/documentation/upgrades/index.html?rev=1693459&r1=1693458&r2=1693459&view=diff
==============================================================================
--- mesos/site/publish/documentation/upgrades/index.html (original)
+++ mesos/site/publish/documentation/upgrades/index.html Thu Jul 30 17:12:19 2015
@@ -87,6 +87,10 @@
 
 <h2>Upgrading from 0.22.x to 0.23.x</h2>
 
+<p><strong>NOTE</strong> The &lsquo;stats.json&rsquo; endpoints for masters and slaves have been removed. Please use the &lsquo;metrics/snapshot&rsquo; endpoints instead.</p>
+
+<p><strong>NOTE</strong> The &lsquo;/master/shutdown&rsquo; endpoint is deprecated in favor of the new &lsquo;/master/teardown&rsquo; endpoint.</p>
+
 <p><strong>NOTE</strong> In order to enable decorator modules to remove metadata (environment variables or labels), we changed the meaning of the return value for decorator hooks in Mesos 0.23.0. Please refer to the modules documentation for more details.</p>
 
 <p><strong>NOTE</strong> Slave ping timeouts are now configurable on the master via <code>--slave_ping_timeout</code> and <code>--max_slave_ping_timeouts</code>. Slaves should be upgraded to 0.23.x before changing these flags.</p>

Modified: mesos/site/publish/gettingstarted/index.html
URL: http://svn.apache.org/viewvc/mesos/site/publish/gettingstarted/index.html?rev=1693459&r1=1693458&r2=1693459&view=diff
==============================================================================
--- mesos/site/publish/gettingstarted/index.html (original)
+++ mesos/site/publish/gettingstarted/index.html Thu Jul 30 17:12:19 2015
@@ -90,8 +90,8 @@
 <ol>
 <li><p>Download the latest stable release from <a href="http://mesos.apache.org/downloads/">Apache</a> (<strong><em>Recommended</em></strong>)</p>
 
-<pre><code> $ wget http://www.apache.org/dist/mesos/0.22.1/mesos-0.22.1.tar.gz
- $ tar -zxf mesos-0.22.1.tar.gz
+<pre><code> $ wget http://www.apache.org/dist/mesos/0.23.0/mesos-0.23.0.tar.gz
+ $ tar -zxf mesos-0.23.0.tar.gz
 </code></pre></li>
 <li><p>Clone the Mesos git <a href="https://git-wip-us.apache.org/repos/asf/mesos.git">repository</a> (<strong><em>Advanced Users Only</em></strong>)</p>