Author: buildbot Date: Mon Feb 2 16:29:57 2015 New Revision: 938677 Log: Staging update by buildbot for slider
Modified: websites/staging/slider/trunk/content/ (props changed) websites/staging/slider/trunk/content/design/rolehistory.html websites/staging/slider/trunk/content/developing/releasing.html websites/staging/slider/trunk/content/release_notes/release-0.70.0.html Propchange: websites/staging/slider/trunk/content/ ------------------------------------------------------------------------------ --- cms:source-revision (original) +++ cms:source-revision Mon Feb 2 16:29:57 2015 @@ -1 +1 @@ -1656511 +1656512 Modified: websites/staging/slider/trunk/content/design/rolehistory.html ============================================================================== --- websites/staging/slider/trunk/content/design/rolehistory.html (original) +++ websites/staging/slider/trunk/content/design/rolehistory.html Mon Feb 2 16:29:57 2015 @@ -583,7 +583,7 @@ will not be satisfied by that node.</p> then re-requesting containers on it will amplify the damage.</p> <h2 id="actions">Actions</h2> <h3 id="bootstrap">Bootstrap</h3> -<p>1Persistent Role History file not found; empty data structures created.</p> +<p>Persistent Role History file not found; empty data structures created.</p> <h3 id="restart">Restart</h3> <p>When starting a cluster, the Role History should be loaded. </p> <p>If the history is missing <em>or cannot be loaded for any reason</em>, @@ -602,25 +602,26 @@ after the last save is unknown.</p> <p>1: Role History loaded; Failure => Bootstrap. 2: Future: if role list enum != current enum, remapping could take place. Until then: fail. 3: Mark all nodes as active at save time to that of the</p> -<p>//define a threshold - threshold = rolehistory.saveTime - 7<em>24</em>60<em>60</em> 1000</p> -<div class="codehilite"><pre><span class="k">for</span> <span class="p">(</span><span class="n">clusterId</span><span class="p">,</span> <span class="n">clusternode</span><span class="p">)</span> <span class="n">in</span> <span class="n">rolehistory</span><span class="p">.</span><span class="n">clusterNodes</span><span class="p">().</span><span class="n">entries</span><span class="p">()</span> <span class="p">:</span> - <span class="k">for</span> <span class="p">(</span><span class="n">role</span><span class="p">,</span> <span class="n">nodeEntry</span><span class="p">)</span> <span class="n">in</span> <span class="n">clusterNode</span><span class="p">.</span><span class="n">getNodeEntries</span><span class="p">():</span> - <span class="n">nodeEntry</span><span class="p">.</span><span class="n">requested</span> <span class="p">=</span> 0 - <span class="n">nodeEntry</span><span class="p">.</span><span class="n">releasing</span> <span class="p">=</span> 0 - <span class="k">if</span> <span class="n">nodeEntry</span><span class="p">.</span><span class="n">active</span> <span class="o">></span> 0 <span class="p">:</span> - <span class="n">nodeEntry</span><span class="p">.</span><span class="n">last_used</span> <span class="p">=</span> <span class="n">rolehistory</span><span class="p">.</span><span class="n">saveTime</span><span class="p">;</span> - <span class="n">nodeEntry</span><span class="p">.</span><span class="n">n</span><span class="p">.</span><span class="n">active</span> <span class="p">=</span> 0 - <span class="k">if</span> <span class="n">nodeEntry</span><span class="p">.</span><span class="n">last_used</span> <span class="o"><</span> <span class="n">threshold</span> <span class="p">:</span> +<div class="codehilite"><pre><span class="c1">//define a threshold</span> +<span class="n">threshold</span> <span class="o">=</span> <span class="n">rolehistory</span><span class="p">.</span><span class="n">saveTime</span> <span class="o">-</span> <span class="mh">7</span><span class="o">*</span><span class="mh">24</span><span class="o">*</span><span class="mh">60</span><span class="o">*</span><span class="mh">60</span><span class="o">*</span> <span class="mh">1000</span> + +<span class="k">for</span> <span class="p">(</span><span class="n">clusterId</span><span class="p">,</span> <span class="n">clusternode</span><span class="p">)</span> <span class="n">in</span> <span class="n">rolehistory</span><span class="p">.</span><span class="n">clusterNodes</span><span class="p">().</span><span class="n">entries</span><span class="p">()</span> <span class="o">:</span> + <span class="k">for</span> <span class="p">(</span><span class="n">role</span><span class="p">,</span> <span class="n">nodeEntry</span><span class="p">)</span> <span class="n">in</span> <span class="n">clusterNode</span><span class="p">.</span><span class="n">getNodeEntries</span><span class="p">()</span><span class="o">:</span> + <span class="n">nodeEntry</span><span class="p">.</span><span class="n">requested</span> <span class="o">=</span> <span class="mh">0</span> + <span class="n">nodeEntry</span><span class="p">.</span><span class="n">releasing</span> <span class="o">=</span> <span class="mh">0</span> + <span class="k">if</span> <span class="n">nodeEntry</span><span class="p">.</span><span class="n">active</span> <span class="o">></span> <span class="mh">0</span> <span class="o">:</span> + <span class="n">nodeEntry</span><span class="p">.</span><span class="n">last_used</span> <span class="o">=</span> <span class="n">rolehistory</span><span class="p">.</span><span class="n">saveTime</span><span class="p">;</span> + <span class="n">nodeEntry</span><span class="p">.</span><span class="n">n</span><span class="p">.</span><span class="n">active</span> <span class="o">=</span> <span class="mh">0</span> + <span class="k">if</span> <span class="n">nodeEntry</span><span class="p">.</span><span class="n">last_used</span> <span class="o"><</span> <span class="n">threshold</span> <span class="o">:</span> <span class="n">clusterNode</span><span class="p">.</span><span class="n">remove</span><span class="p">(</span><span class="n">role</span><span class="p">)</span> - <span class="k">else</span><span class="p">:</span> + <span class="k">else</span><span class="o">:</span> <span class="n">availableNodes</span><span class="p">[</span><span class="n">role</span><span class="p">].</span><span class="n">add</span><span class="p">(</span><span class="n">clusterId</span><span class="p">)</span> - <span class="k">if</span> <span class="n">clusterNode</span><span class="p">.</span><span class="n">getNodeEntries</span><span class="p">()</span> <span class="n">isEmpty</span> <span class="p">:</span> + <span class="k">if</span> <span class="n">clusterNode</span><span class="p">.</span><span class="n">getNodeEntries</span><span class="p">()</span> <span class="n">isEmpty</span> <span class="o">:</span> <span class="n">rolehistory</span><span class="p">.</span><span class="n">clusterNodes</span><span class="p">.</span><span class="n">remove</span><span class="p">(</span><span class="n">clusterId</span><span class="p">)</span> -<span class="k">for</span> <span class="n">availableNode</span> <span class="n">in</span> <span class="n">availableNodes</span><span class="p">:</span> - <span class="n">sort</span><span class="p">(</span><span class="n">availableNode</span><span class="p">,</span><span class="n">new</span> <span class="n">last_used_comparator</span><span class="p">())</span> +<span class="k">for</span> <span class="n">availableNode</span> <span class="n">in</span> <span class="nl">availableNodes:</span> + <span class="n">sort</span><span class="p">(</span><span class="n">availableNode</span><span class="p">,</span><span class="k">new</span> <span class="n">last_used_comparator</span><span class="p">())</span> </pre></div> Modified: websites/staging/slider/trunk/content/developing/releasing.html ============================================================================== --- websites/staging/slider/trunk/content/developing/releasing.html (original) +++ websites/staging/slider/trunk/content/developing/releasing.html Mon Feb 2 16:29:57 2015 @@ -628,19 +628,9 @@ To send the message to announcement@apac </pre></div> -<h3 id="push-the-release-to-originmaster-todo">Push the release to origin/master âTODO</h3> -<p><strong> TODO </strong></p> -<p>Goal: get the master branch updated with this release, with any changes in the release taking priority over the versions in /master. </p> -<p>This is where gitflow breaks down. It may be better to have tags like <code>latest_stable</code> and <code>latest_development</code> and just move them along. </p> -<p>Otherwise: -In the branch for the release, go to the tag create for the release by maven. This represents the code released, including the version numbering of the release artifact (not the HEAD of the branch, which has the incremented one)</p> -<div class="codehilite"><pre><span class="n">git</span> <span class="n">tag</span> <span class="o">-</span><span class="n">a</span> $<span class="n">SLIDER_RELEASE</span> <span class="o">-</span><span class="n">m</span> <span class="s">'Slider $SLIDER_RELEASE'</span> $<span class="n">RELEASE_TAG</span> -<span class="n">git</span> <span class="n">push</span> <span class="n">origin</span> $<span class="n">SLIDER_RELEASE</span> -<span class="n">git</span> <span class="n">checkout</span> <span class="n">master</span> -<span class="n">git</span> <span class="n">merge</span> <span class="n">branch</span> <span class="o">-</span><span class="n">X</span> $<span class="n">SLIDER_RELEASE</span> -</pre></div> - - +<h2 id="update-the-site">Update the site</h2> +<p>Update documentation in the svn site repo, then +<a href="https://cms.apache.org/slider/publish">trigger a site rebuild</a>.</p> <h2 id="finish-the-jira">Finish the JIRA</h2> <p>Log the time, close the issue. This should normally be the end of a sprint âso wrap that up too.</p> Modified: websites/staging/slider/trunk/content/release_notes/release-0.70.0.html ============================================================================== --- websites/staging/slider/trunk/content/release_notes/release-0.70.0.html (original) +++ websites/staging/slider/trunk/content/release_notes/release-0.70.0.html Mon Feb 2 16:29:57 2015 @@ -194,14 +194,20 @@ functional. </p> <h3 id="slider-151-rest-api"><a href="https://issues.apache.org/jira/browse/SLIDER-151">SLIDER-151 REST API</a></h3> <p>This is intended to be a full two-way REST API offered by the Slider Application Master to clients. The draft design is <a href="http://slider.incubator.apache.org/docs/api">available on the Slider web site</a>.</p> -<p>The 0.70 release contains the initial read-only view of this API. It is impossible +<p>The 0.70 release contains the foundational read-only view of this API. +Look at the code in <code>org.apache.slider.client.rest</code>, in particular +the API client, <code>SliderApplicationAPI</code>, and <code>RestClientFactory</code> âwhich +builds an instance of <code>SliderApplicationAPI</code> bonded to an application located +in the Zookeeper-based YARN registry.</p> +<p>It is impossible to offer a secure two-way REST API in Hadoop 2.6, due to how authentication and security is implemented in the YARN Resource Manager proxy. Therefore even though a two-way API is partially implemented in the slider code, it is explicitly read only. To enable it, set the property <code>slider.dev.ws.insecure</code> to true in the Slider Application Master. This can be done by setting it in the file <code>$SLIDER_CONF_DIR/slider-server.xml</code>. </p> -<p><em>warning</em> : once set, anyone on the cluster can </p> +<p><em>warning</em> : once set, anyone on the cluster can issue side-effecting operations +against the cluster, such as the <code>stop</code> operation. </p> <p>To complement the application master, a new class <code>org.apache.slider.client.rest.SliderApplicationAPI</code> is being developed to provide a Java-API view of the resources. We hope ultimately to switch