Added: 
websites/staging/slider/trunk/content/docs/configuration/revision-1/specification.html
==============================================================================
--- 
websites/staging/slider/trunk/content/docs/configuration/revision-1/specification.html
 (added)
+++ 
websites/staging/slider/trunk/content/docs/configuration/revision-1/specification.html
 Wed Mar 25 17:59:38 2015
@@ -0,0 +1,650 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+<!--
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE- 2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+-->
+  <meta charset="utf-8">
+  <meta http-equiv="X-UA-Compatible" content="IE=edge">
+  <meta name="viewport" content="width=device-width, initial-scale=1">
+  <link href="/css/bootstrap.min.css" rel="stylesheet">
+  <link href="/css/bootstrap-theme.min.css" rel="stylesheet">
+  <!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
+  <!--[if lt IE 9]>
+    <script 
src="https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js";></script>
+    <script 
src="https://oss.maxcdn.com/libs/respond.js/1.4.2/respond.min.js";></script>
+  <![endif]-->
+  <script 
src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js";></script>
+  <script src="/js/bootstrap.min.js"></script>
+  <link href="/css/slider.css" rel="stylesheet" type="text/css">
+  <link 
href="//netdna.bootstrapcdn.com/font-awesome/4.0.3/css/font-awesome.css" 
rel="stylesheet">
+  <title></title>
+  
+</head>
+
+<body>
+<nav class="navbar navbar-default navbar-fixed-top" role="navigation">
+<div class="container-fluid">
+  <div class="navbar-header">
+    <button type="button" class="navbar-toggle" data-toggle="collapse" 
data-target="#navbar-items">
+      <span class="sr-only">Toggle navigation</span>
+      <span class="icon-bar"></span>
+      <span class="icon-bar"></span>
+      <span class="icon-bar"></span>
+    </button>
+    <a class="navbar-brand" href="/index.html">Slider</a>
+  </div>
+  <div class="collapse navbar-collapse" id="navbar-items">
+  <ul class="nav navbar-nav">
+    <li class="dropdown">
+      <a class="dropdown-toggle" data-toggle="dropdown" href="#">
+        Project <span class="caret"></span>
+      </a>
+<ul class="dropdown-menu">
+<li id="nav_index"><a href="/index.html">Home</a></li>
+<li id="nav_downloads"><a href="/downloads">Downloads</a></li>
+<li id="nav_source"><a 
href="https://git-wip-us.apache.org/repos/asf/incubator-slider.git";><i 
class="fa fa-external-link"></i> Source</a></li>
+<li><a href="http://www.apache.org/licenses/LICENSE-2.0";><i class="fa 
fa-external-link"></i> License</a></li>
+<li class="divider"></li>
+<li class="dropdown-header">Community</li>
+<li id="nav_team"><a href="/team.html">Team</a></li>
+<li id="nav_mailinglists"><a href="/mailing_lists.html">Mailing Lists</a></li>
+<li class="divider"></li>
+<li class="dropdown-header">Tools</li>
+<li id="nav_jira"><a href="https://issues.apache.org/jira/browse/SLIDER";><i 
class="fa fa-external-link"></i> Issues</a></li>
+<li id="nav_builds"><a href="https://builds.apache.org/job/Slider-develop";><i 
class="fa fa-external-link"></i> Builds</a></li>
+</ul>
+</li>
+
+    <li class="dropdown">
+      <a class="dropdown-toggle" data-toggle="dropdown" href="/design">
+        Design <span class="caret"></span>
+      </a>
+<ul class="dropdown-menu">
+<li id="nav_design_overview"><a 
href="/design/architecture.html">Overview</a></li>
+<li id="nav_app_needs"><a 
href="/docs/slider_specs/application_needs.html">Application Needs</a></li>
+<li id="nav_spec"><a href="/design/specification/index.html">Expected 
Behavior</a></li>
+<li id="nav_registry"><a href="/design/registry/index.html">Service 
Registry</a></li>
+<li id="nav_ssl_impl"><a href="/design/ssl_implementation.html">SSL 
Implementation</a></li>
+<li id="nav_role_history"><a href="/design/rolehistory.html">Role 
History</a></li>
+</ul>
+</li>
+
+
+    <li class="dropdown">
+      <a class="dropdown-toggle" data-toggle="dropdown" href="/developing">
+        Developing <span class="caret"></span>
+      </a>
+<ul class="dropdown-menu">
+<li id="nav_dev_building"><a href="/developing/building.html">Building</a></li>
+<li id="nav_dev_debugging"><a 
href="/developing/debugging.html">Debugging</a></li>
+<li id="nav_dev_testing"><a href="/developing/testing.html">Testing</a></li>
+<li id="nav_dev_funtesting"><a 
href="/developing/functional_tests.html">Functional Testing</a></li>
+<li id="nav_dev_manual_testing"><a 
href="/developing/manual_testing.html">Manual Testing</a></li>
+<li id="nav_releasing"><a href="/developing/releasing.html">Releasing</a></li>
+</ul>
+</li>
+
+    <li class="dropdown">
+      <a class="dropdown-toggle" data-toggle="dropdown" href="#">
+        Using <span class="caret"></span>
+      </a>
+<ul class="dropdown-menu">
+<li id="nav_use_getting_started"><a href="/docs/getting_started.html">Getting 
Started</a></li>
+<li id="nav_use_manpage"><a href="/docs/manpage.html">Man Page</a></li>
+<li role="presentation" class="divider"></li>
+<li id="nav_use_app_package"><a href="/docs/slider_specs/index.html">Creating 
App Packages</a></li>
+<li role="presentation" class="divider"></li>
+<li id="nav_use_client_config"><a 
href="/docs/client-configuration.html">Client Configuration</a></li>
+<li id="nav_use_exitcodes"><a href="/docs/exitcodes.html">Client Exit 
Codes</a></li>
+<li role="presentation" class="divider"></li>
+<li id="nav_use_debugging"><a 
href="/developing/debugging.html">Debugging</a></li>
+<li id="nav_use_troubleshooting"><a 
href="/docs/troubleshooting.html">Troubleshooting</a></li>
+<li role="presentation" class="divider"></li>
+<li id="nav_use_high_availability"><a href="/docs/high_availability.html">High 
Availability</a></li>
+<li id="nav_use_security"><a href="/docs/security.html">Security</a></li>
+<li id="nav_am_agent_ssl"><a href="/docs/ssl.html">Agent to AM SSL</a></li>
+<li id="nav_use_app_configuration"><a 
href="/docs/configuration/index.html">App Configuration Model</a></li>
+<li id="nav_use_examples"><a href="/docs/examples.html">Provider 
Examples</a></li>
+</ul>
+</li>
+
+    <li class="dropdown">
+      <a class="dropdown-toggle" data-toggle="dropdown" href="#">
+        ASF Links <span class="caret"></span>
+      </a>
+<ul class="dropdown-menu">
+<li><a href="http://www.apache.org";><i class="fa fa-external-link"></i> Apache 
Software Foundation</a></li>
+<li><a href="http://www.apache.org/foundation/sponsorship.html";><i class="fa 
fa-external-link"></i> Sponsorship</a></li>
+<li><a href="http://www.apache.org/security/";><i class="fa 
fa-external-link"></i> Security</a></li>
+<li><a href="http://www.apache.org/foundation/thanks.html";><i class="fa 
fa-external-link"></i> Thanks</a></li>
+</ul>
+</li>
+</ul>
+
+  </div>
+
+</div>
+</nav>
+
+
+<div class="container-fluid">
+<div class="row">
+  <div class="col-md-2" id="sidebar">
+  <div style="text-align: center">
+    <h1><a href="/index.html">Apache Slider (incubating)</a></h1>
+    <hr>
+Latest release: <strong>0.60.0-incubating</strong><br>
+    <br>
+    <a id="download-button-sidebar" class="btn btn-success btn-block" 
href="/downloads/" role="button">Download</a>
+  </div>
+    <hr>
+    <a href="http://incubator.apache.org";><img id="logo" alt="Apache Incubator 
&trade;" class="img-responsive" 
src="http://incubator.apache.org/images/apache-incubator-logo.png"/></a>
+  </div>
+  <div class="col-md-8 col-md-offset-1">
+
+  <div id="content">
+
+    <h1 class="title"></h1>
+
+    <!---
+   Licensed to the Apache Software Foundation (ASF) under one or more
+   contributor license agreements.  See the NOTICE file distributed with
+   this work for additional information regarding copyright ownership.
+   The ASF licenses this file to You under the Apache License, Version 2.0
+   (the "License"); you may not use this file except in compliance with
+   the License.  You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
+-->
+
+<h1 id="apache-slider-specification-of-the-cluster-description">Apache Slider 
Specification of the "Cluster Description"</h1>
+<ul>
+<li>This is partially obsolete. Slider still returns the Slider Cluster 
Description
+as changing it will break most of the unit tests -once these are updated
+this document will be completely obsolete and replaced with a new one.</li>
+</ul>
+<h3 id="notation">Notation:</h3>
+<p>In this document, a full path to a value is represented as a path 
+<code>options/zookeeper.port</code>  ; an assigment as  
<code>options/zookeeper.port=2181</code>.</p>
+<p>A wildcard indicates all entries matching a path: 
<code>options/zookeeper.*</code>
+or <code>/roles/*/yarn.memory</code></p>
+<h2 id="core-concepts">Core Concepts</h2>
+<p>The specificaton of an application instance is defined in an application 
instance
+directory, 
<code>${user.home}/.slidera/clusters/${clustername}/cluster.json</code>)</p>
+<h2 id="sections-for-specifying-and-describing-cluster-state">Sections for 
specifying and describing cluster state</h2>
+<p>The cluster desciption is hierarchal, with standardized sections.</p>
+<p>Different sections have one of three roles.</p>
+<ol>
+<li>
+<p>Storage and specification of internal properties used to define a cluster 
-properties
+that should not be modified by users -doing so is likely to render the
+cluster undeployable.</p>
+</li>
+<li>
+<p>Storage and specification of the components deployed by Slider.
+These sections define options for the deployed application, the size of
+the deployed application, attributes of the deployed roles, and customizable
+aspects of the Slider application master. </p>
+</li>
+</ol>
+<p>This information defines the <em>desired state</em> of a cluster.</p>
+<p>Users may edit these sections, either via the CLI, or by directly editing 
the <code>cluster.json</code> file of
+  a stopped cluster.</p>
+<ol>
+<li>Status information provided by a running cluster. These include:
+ information about the cluster, statistics, information about reach role in
+ the cluster -as well as other aspects of the deployment.</li>
+</ol>
+<p>This information describes the <em>actual state</em> of a cluster.</p>
+<p>Using a common format for both the specification and description of a 
cluster
+may be confusing, but it is designed to unify the logic needed to parse
+and process cluster descriptions. There is only one JSON file to parse
+-merely different sections of relevance at different times.</p>
+<h2 id="role-by-role-subsections">Role-by-role subsections</h2>
+<p>A slider-deployed application consists of the single Slider application 
master,
+and one or more roles -specific components in the actual application.</p>
+<p>The <code>/roles</code> section contains a listing for each role, 
+declaring the number of instances of each role desired,
+possibly along with some details defining the actual execution of the 
application.</p>
+<p>The <code>/statistics/roles/</code> section returns statistics on each role,
+while <code>/instances</code> has a per-role entry listing the YARN
+containers hosting instances. </p>
+<h2 id="cluster-information-for-applications">Cluster information for 
applications</h2>
+<p>The AM/application provider may generate information for use by client 
applications.</p>
+<p>There are three ways to provide this</p>
+<ol>
+<li>A section in which simple key-value pairs are provided for interpretation
+by client applications -usually to generate configuration documents</li>
+<li>A listing of files that may be provided directly to a client. The API to 
provide these files is not covered by this document.</li>
+<li>A provider-specific section in which arbitrary values and structures may 
be defined. This allows greater flexibility in the information that a provider 
can publish -though it does imply custom code to process this data on the 
client.</li>
+</ol>
+<h1 id="persistent-specification-sections">Persistent Specification 
Sections</h1>
+<h2 id="root">"/" : root</h2>
+<p>The root contains a limited number of key-value pairs, </p>
+<ul>
+<li>
+<p><code>version</code>: string; required.
+The version of the JSON file, as an <code>x.y.z</code> version string.</p>
+<ol>
+<li>Applications MUST verify that they can process a specific version.</li>
+<li>The version number SHOULD be incremented in the minor "z" value
+after enhancements that are considered backwards compatible.
+Incompatible updates MUST be updated with a new "y" value.
+The final, "x" number, is to be reserved for major reworkings
+of the cluster specification itself (this document or its
+successors).</li>
+</ol>
+</li>
+<li>
+<p><code>name</code>: string; required. Cluster name; </p>
+</li>
+<li><code>type</code>: string; required.
+Reference to the provider type -this triggers a Hadoop configuration
+property lookup to find the implementation classes.</li>
+<li><code>valid</code>: boolean; required.
+Flag to indicate whether or not a specification is considered valid.
+If false, the rest of the document is in an unknown state.</li>
+</ul>
+<h2 id="slider-internal-internal-confiugration"><code>/slider-internal</code>: 
internal confiugration</h2>
+<p>Stores internal configuration options. These parameters
+are not defined in this document.</p>
+<h2 id="diagnostics-diagnostics-sections"><code>/diagnostics</code>: 
diagnostics sections</h2>
+<p>Persisted list of information about Slider. </p>
+<p>Static information about the file history</p>
+<div class="codehilite"><pre>&quot;<span class="n">diagnostics</span>&quot; 
<span class="p">:</span> <span class="p">{</span>
+  &quot;<span class="n">create</span><span class="p">.</span><span 
class="n">hadoop</span><span class="p">.</span><span 
class="n">deployed</span><span class="p">.</span><span 
class="n">info</span>&quot; <span class="p">:</span> 
+   &quot;<span class="p">(</span><span class="n">detached</span> <span 
class="n">from</span> <span class="n">release</span><span 
class="o">-</span>2<span class="p">.</span>3<span class="p">.</span>0<span 
class="p">)</span> <span class="p">@</span><span 
class="n">dfe46336fbc6a044bc124392ec06b85</span>&quot;<span class="p">,</span>
+  &quot;<span class="n">create</span><span class="p">.</span><span 
class="n">application</span><span class="p">.</span><span 
class="n">build</span><span class="p">.</span><span class="n">info</span>&quot; 
<span class="p">:</span> 
+   &quot;<span class="n">Slider</span> <span class="n">Core</span><span 
class="o">-</span>0<span class="p">.</span>13<span class="p">.</span>0<span 
class="o">-</span><span class="n">SNAPSHOT</span> <span class="n">Built</span> 
<span class="n">against</span> <span class="n">commit</span># 1<span 
class="n">a94ee4aa1</span> <span class="n">on</span> <span 
class="n">Java</span> 1<span class="p">.</span>7<span class="p">.</span>0<span 
class="n">_45</span> <span class="n">by</span> <span 
class="n">stevel</span>&quot;<span class="p">,</span>
+  &quot;<span class="n">create</span><span class="p">.</span><span 
class="n">hadoop</span><span class="p">.</span><span 
class="n">build</span><span class="p">.</span><span class="n">info</span>&quot; 
<span class="p">:</span> &quot;2<span class="p">.</span>3<span 
class="p">.</span>0&quot;<span class="p">,</span>
+  &quot;<span class="n">create</span><span class="p">.</span><span 
class="n">time</span><span class="p">.</span><span 
class="n">millis</span>&quot; <span class="p">:</span> 
&quot;1393512091276&quot;<span class="p">,</span>
+<span class="p">},</span>
+</pre></div>
+
+
+<p>This information is not intended to provide anything other
+than diagnostics to an application; the values and their meaning
+are not defined. All applications MUST be able to process
+an empty or absent <code>/diagnostics</code> section.</p>
+<h2 id="options-cluster-options">Options: cluster options</h2>
+<p>A persisted list of options used by Slider and its providers to build up 
the AM
+and the configurations of the deployed service components</p>
+<div class="codehilite"><pre>&quot;<span class="n">options</span>&quot;<span 
class="p">:</span> <span class="p">{</span>
+  &quot;<span class="n">slider</span><span class="p">.</span><span 
class="n">am</span><span class="p">.</span><span 
class="n">monitoring</span><span class="p">.</span><span 
class="n">enabled</span>&quot;<span class="p">:</span> &quot;<span 
class="n">false</span>&quot;<span class="p">,</span>
+  &quot;<span class="n">slider</span><span class="p">.</span><span 
class="n">cluster</span><span class="p">.</span><span 
class="n">application</span><span class="p">.</span><span 
class="n">image</span><span class="p">.</span><span 
class="n">path</span>&quot;<span class="p">:</span> &quot;<span 
class="n">hdfs</span><span class="p">:</span><span class="o">//</span><span 
class="n">sandbox</span><span class="p">:</span>8020<span 
class="o">/</span><span class="n">hbase</span><span class="p">.</span><span 
class="n">tar</span><span class="p">.</span><span 
class="n">gz</span>&quot;<span class="p">,</span>
+  &quot;<span class="n">slider</span><span class="p">.</span><span 
class="n">container</span><span class="p">.</span><span 
class="n">failure</span><span class="p">.</span><span 
class="n">threshold</span>&quot;<span class="p">:</span> &quot;5&quot;<span 
class="p">,</span>
+  &quot;<span class="n">slider</span><span class="p">.</span><span 
class="n">container</span><span class="p">.</span><span 
class="n">failure</span><span class="p">.</span><span 
class="n">shortlife</span>&quot;<span class="p">:</span> &quot;60&quot;<span 
class="p">,</span>
+  &quot;<span class="n">zookeeper</span><span class="p">.</span><span 
class="n">port</span>&quot;<span class="p">:</span> &quot;2181&quot;<span 
class="p">,</span>
+  &quot;<span class="n">zookeeper</span><span class="p">.</span><span 
class="n">path</span>&quot;<span class="p">:</span> &quot;<span 
class="o">/</span><span 
class="n">yarnapps_slider_stevel_test_cluster_lifecycle</span>&quot;<span 
class="p">,</span>
+  &quot;<span class="n">zookeeper</span><span class="p">.</span><span 
class="n">hosts</span>&quot;<span class="p">:</span> &quot;<span 
class="n">sandbox</span>&quot;<span class="p">,</span>
+  &quot;<span class="n">site</span><span class="p">.</span><span 
class="n">hbase</span><span class="p">.</span><span 
class="n">master</span><span class="p">.</span><span 
class="n">startup</span><span class="p">.</span><span 
class="n">retainassign</span>&quot;<span class="p">:</span> &quot;<span 
class="n">true</span>&quot;<span class="p">,</span>
+  &quot;<span class="n">site</span><span class="p">.</span><span 
class="n">fs</span><span class="p">.</span><span 
class="n">defaultFS</span>&quot;<span class="p">:</span> &quot;<span 
class="n">hdfs</span><span class="p">:</span><span class="o">//</span><span 
class="n">sandbox</span><span class="p">:</span>8020&quot;<span 
class="p">,</span>
+  &quot;<span class="n">site</span><span class="p">.</span><span 
class="n">fs</span><span class="p">.</span><span class="n">default</span><span 
class="p">.</span><span class="n">name</span>&quot;<span class="p">:</span> 
&quot;<span class="n">hdfs</span><span class="p">:</span><span 
class="o">//</span><span class="n">sandbox</span><span 
class="p">:</span>8020&quot;<span class="p">,</span>
+  &quot;<span class="n">env</span><span class="p">.</span><span 
class="n">MALLOC_ARENA_MAX</span>&quot;<span class="p">:</span> 
&quot;4&quot;<span class="p">,</span>
+  &quot;<span class="n">site</span><span class="p">.</span><span 
class="n">hbase</span><span class="p">.</span><span 
class="n">master</span><span class="p">.</span><span class="n">info</span><span 
class="p">.</span><span class="n">port</span>&quot;<span class="p">:</span> 
&quot;0&quot;<span class="p">,</span>
+  &quot;<span class="n">site</span><span class="p">.</span><span 
class="n">hbase</span><span class="p">.</span><span 
class="n">regionserver</span><span class="p">.</span><span 
class="n">info</span><span class="p">.</span><span 
class="n">port</span>&quot;<span class="p">:</span> &quot;0&quot;
+<span class="p">},</span>
+</pre></div>
+
+
+<p>Many of the properties are automatically set by Slider when a cluster is 
constructed.
+They may be edited afterwards.</p>
+<h3 id="standard-option-types">Standard Option types</h3>
+<p>All option values MUST be strings.</p>
+<h4 id="slider"><code>slider.</code></h4>
+<p>All options that begin with <code>slider.</code> are intended for use by 
slider and 
+providers to configure the Slider application master itself, and the
+application. For example, <code>slider.container.failure.threshold</code> 
defines
+the number of times a container must fail before the role (and hence the 
cluster)
+is considered to have failed. As another example, the zookeeper bindings
+such as <code>zookeeper.hosts</code> are read by the HBase and Ambari 
providers, and
+used to modify the applications' site configurations with application-specific
+properties.</p>
+<h4 id="site"><code>site.</code></h4>
+<p>These are properties that are expected to be propagated to an application's
+ <code>site</code> configuration -if such a configuration is created. For 
HBase, the 
+ site file is <code>hbase-site.xml</code>; for Accumulo it is 
<code>accumulo-site.xml</code></p>
+<ol>
+<li>The destination property is taken by removing the prefix 
<code>site.</code>, and
+setting the shortened key with the defined value.</li>
+<li>Not all applications have the notion of a site file; These applications MAY
+ignore the settings.</li>
+<li>Providers MAY validate site settings to recognise invalid values. This
+aids identifying and diagnosing startup problems.</li>
+</ol>
+<h4 id="env"><code>env.</code></h4>
+<p>These are options to configure environment variables in the roles. When
+a container is started, all <code>env.</code> options have the prefix removed, 
and
+are then set as environment variables in the target context.</p>
+<ol>
+<li>The Slider AM uses these values to configure itself, after following the
+option/role merge process.</li>
+<li>Application providers SHOULD follow the same process.</li>
+</ol>
+<h2 id="roles-role-declarations">'/roles': role declarations</h2>
+<p>The <code>/roles/$ROLENAME/</code> clauses each provide options for a
+specific role.</p>
+<p>This includes
+1. <code>role.instances</code>: defines the number of instances of a role to 
create
+1. <code>env.</code> environment variables for launching the container
+1. <code>yarn.</code> properties to configure YARN requests.
+1. <code>jvm.heapsize</code>: an option supported by some providers to 
+fix the heap size of a component.</p>
+<div class="codehilite"><pre>  &quot;<span class="n">worker</span>&quot;<span 
class="p">:</span> <span class="p">{</span>
+    &quot;<span class="n">yarn</span><span class="p">.</span><span 
class="n">memory</span>&quot;<span class="p">:</span> &quot;768&quot;<span 
class="p">,</span>
+    &quot;<span class="n">env</span><span class="p">.</span><span 
class="n">MALLOC_ARENA_MAX</span>&quot;<span class="p">:</span> 
&quot;4&quot;<span class="p">,</span>
+    &quot;<span class="n">role</span><span class="p">.</span><span 
class="n">instances</span>&quot;<span class="p">:</span> &quot;0&quot;<span 
class="p">,</span>
+    &quot;<span class="n">role</span><span class="p">.</span><span 
class="n">name</span>&quot;<span class="p">:</span> &quot;<span 
class="n">worker</span>&quot;<span class="p">,</span>
+    &quot;<span class="n">role</span><span class="p">.</span><span 
class="n">failed</span><span class="p">.</span><span 
class="n">starting</span><span class="p">.</span><span 
class="n">instances</span>&quot;<span class="p">:</span> &quot;0&quot;<span 
class="p">,</span>
+    &quot;<span class="n">jvm</span><span class="p">.</span><span 
class="n">heapsize</span>&quot;<span class="p">:</span> &quot;512<span 
class="n">M</span>&quot;<span class="p">,</span>
+    &quot;<span class="n">yarn</span><span class="p">.</span><span 
class="n">vcores</span>&quot;<span class="p">:</span> &quot;1&quot;<span 
class="p">,</span>
+  <span class="p">},</span>
+</pre></div>
+
+
+<p>The role <code>slider</code> represents the Slider Application Master 
itself.</p>
+<div class="codehilite"><pre>  &quot;<span class="n">slider</span>&quot;<span 
class="p">:</span> <span class="p">{</span>
+    &quot;<span class="n">yarn</span><span class="p">.</span><span 
class="n">memory</span>&quot;<span class="p">:</span> &quot;256&quot;<span 
class="p">,</span>
+    &quot;<span class="n">env</span><span class="p">.</span><span 
class="n">MALLOC_ARENA_MAX</span>&quot;<span class="p">:</span> 
&quot;4&quot;<span class="p">,</span>
+    &quot;<span class="n">role</span><span class="p">.</span><span 
class="n">instances</span>&quot;<span class="p">:</span> &quot;1&quot;<span 
class="p">,</span>
+    &quot;<span class="n">role</span><span class="p">.</span><span 
class="n">name</span>&quot;<span class="p">:</span> &quot;<span 
class="n">slider</span>&quot;<span class="p">,</span>
+    &quot;<span class="n">jvm</span><span class="p">.</span><span 
class="n">heapsize</span>&quot;<span class="p">:</span> &quot;256<span 
class="n">M</span>&quot;<span class="p">,</span>
+    &quot;<span class="n">yarn</span><span class="p">.</span><span 
class="n">vcores</span>&quot;<span class="p">:</span> &quot;1&quot;<span 
class="p">,</span>
+  <span class="p">},</span>
+</pre></div>
+
+
+<p>Providers may support a fixed number of roles -or they may support a dynamic
+number of roles defined at run-time, potentially from other data sources.</p>
+<h2 id="how-options-and-role-options-are-merged">How <code>/options</code> and 
role options are merged.</h2>
+<p>The options declared for a specific role are merged with the cluster-wide 
options
+to define the final options for a role. This is implemented in a simple
+override model: role-specific options can override any site-wide options.</p>
+<ol>
+<li>The options defined in <code>/options</code> are used to create the 
initial option
+map for each role.</li>
+<li>The role's options are then applied to the map -this may overwrite 
definitions
+from the <code>/options</code> section.</li>
+<li>There is no way to "undefine" a cluster option, merely overwrite it. </li>
+<li>The merged map is then used by the provider to create the component.</li>
+<li>The special <code>slider</code> role is used in the CLI to define the 
attributes of the AM.</li>
+</ol>
+<p>Options set on a role do not affect any site-wide options: they
+are specific to the invidual role being created. </p>
+<p>As such, overwriting a <code>site.</code> option may have no effect -or it 
it may
+change the value of a site configuration document <em>in that specific role 
instance</em>.</p>
+<h3 id="standard-role-options">Standard role options</h3>
+<ul>
+<li><code>role.instances</code> : number; required.
+  The number of instances of that role desired in the application.</li>
+<li><code>yarn.vcores</code> : number.
+  The number of YARN "virtual cores" to request for each role instance.
+  The larger the number, the more CPU allocation -and potentially the longer
+  time to satisfy the request and so instantiate the node. 
+  If the value '"-1"<code>is used -for any role but</code>slider`-the maximum 
value
+  available to the application is requested.</li>
+<li>
+<p><code>yarn.memory</code> : number.
+  The number in Megabytes of RAM to request for each role instance.
+  The larger the number, the more memory allocation -and potentially the longer
+  time to satisfy the request and so instantiate the node. 
+  If the value '"-1"<code>is used -for any role but</code>slider`-the maximum 
value
+  available to the application is requested.</p>
+</li>
+<li>
+<p><code>env.</code> environment variables.
+String environment variables to use when setting up the container</p>
+</li>
+</ul>
+<h3 id="provider-specific-role-options">Provider-specific role options</h3>
+<ul>
+<li><code>jvm.heapsize</code> -the amount of memory for a provider to allocate 
for
+ a processes JVM. Example "512M". This option MAY be implemented by a 
provider.</li>
+</ul>
+<h1 id="dynamic-information-sections">Dynamic Information Sections</h1>
+<p>These are the parts of the document that provide dynamic run-time
+information about an application. They are provided by the
+Slider Application Master when a request for the cluster status is issued.</p>
+<h2 id="info"><code>/info</code></h2>
+<p>Dynamic set of string key-value pairs containing
+information about the running application -as provided by th </p>
+<p>The values in this section are not normatively defined. </p>
+<p>Here are some standard values</p>
+<ul>
+<li>
+<p><code>slider.am.restart.supported"</code>  whether the AM supports service 
restart without killing all the containers hosting
+ the role instances:</p>
+<div class="codehilite"><pre>&quot;<span class="n">slider</span><span 
class="p">.</span><span class="n">am</span><span class="p">.</span><span 
class="n">restart</span><span class="p">.</span><span 
class="n">supported</span>&quot; <span class="p">:</span> &quot;<span 
class="n">false</span>&quot;<span class="p">,</span>
+</pre></div>
+
+
+</li>
+<li>
+<p>timestamps of the cluster going live, and when the status query was made</p>
+<div class="codehilite"><pre>&quot;<span class="n">live</span><span 
class="p">.</span><span class="n">time</span>&quot; <span class="p">:</span> 
&quot;27 <span class="n">Feb</span> 2014 14<span class="p">:</span>41<span 
class="p">:</span>56 <span class="n">GMT</span>&quot;<span class="p">,</span>
+&quot;<span class="n">live</span><span class="p">.</span><span 
class="n">time</span><span class="p">.</span><span 
class="n">millis</span>&quot; <span class="p">:</span> 
&quot;1393512116881&quot;<span class="p">,</span>
+&quot;<span class="n">status</span><span class="p">.</span><span 
class="n">time</span>&quot; <span class="p">:</span> &quot;27 <span 
class="n">Feb</span> 2014 14<span class="p">:</span>42<span 
class="p">:</span>08 <span class="n">GMT</span>&quot;<span class="p">,</span>
+&quot;<span class="n">status</span><span class="p">.</span><span 
class="n">time</span><span class="p">.</span><span 
class="n">millis</span>&quot; <span class="p">:</span> 
&quot;1393512128726&quot;<span class="p">,</span>
+</pre></div>
+
+
+</li>
+<li>
+<p>yarn data provided to the AM</p>
+<div class="codehilite"><pre>&quot;<span class="n">yarn</span><span 
class="p">.</span><span class="n">vcores</span>&quot; <span class="p">:</span> 
&quot;32&quot;<span class="p">,</span>
+&quot;<span class="n">yarn</span><span class="p">.</span><span 
class="n">memory</span>&quot; <span class="p">:</span> &quot;2048&quot;<span 
class="p">,</span>
+</pre></div>
+
+
+</li>
+<li>
+<p>information about the application and hadoop versions in use. Here
+  the application was built using Hadoop 2.3.0, but is running against the 
version
+  of Hadoop built for HDP-2.</p>
+<div class="codehilite"><pre>&quot;<span class="n">status</span><span 
class="p">.</span><span class="n">application</span><span 
class="p">.</span><span class="n">build</span><span class="p">.</span><span 
class="n">info</span>&quot; <span class="p">:</span> &quot;<span 
class="n">Slider</span> <span class="n">Core</span><span 
class="o">-</span>0<span class="p">.</span>13<span class="p">.</span>0<span 
class="o">-</span><span class="n">SNAPSHOT</span> <span class="n">Built</span> 
<span class="n">against</span> <span class="n">commit</span># 1<span 
class="n">a94ee4aa1</span> <span class="n">on</span> <span 
class="n">Java</span> 1<span class="p">.</span>7<span class="p">.</span>0<span 
class="n">_45</span> <span class="n">by</span> <span 
class="n">stevel</span>&quot;<span class="p">,</span>
+&quot;<span class="n">status</span><span class="p">.</span><span 
class="n">hadoop</span><span class="p">.</span><span 
class="n">build</span><span class="p">.</span><span class="n">info</span>&quot; 
<span class="p">:</span> &quot;2<span class="p">.</span>3<span 
class="p">.</span>0&quot;<span class="p">,</span>
+&quot;<span class="n">status</span><span class="p">.</span><span 
class="n">hadoop</span><span class="p">.</span><span 
class="n">deployed</span><span class="p">.</span><span 
class="n">info</span>&quot; <span class="p">:</span> &quot;<span 
class="n">bigwheel</span><span class="o">-</span><span 
class="n">m16</span><span class="o">-</span>2<span class="p">.</span>2<span 
class="p">.</span>0 <span class="p">@</span>704<span 
class="n">f1e463ebc4fb89353011407e965</span>&quot;
+</pre></div>
+
+
+</li>
+</ul>
+<p>As with the <code>/diagnostics</code> section, this area is primarily 
intended
+for debugging.</p>
+<p>## <code>/instances</code>: instance list</p>
+<p>Information about the live containers in a cluster</p>
+<div class="codehilite"><pre> &quot;<span 
class="n">instances</span>&quot;<span class="p">:</span> <span 
class="p">{</span>
+   &quot;<span class="n">slider</span>&quot;<span class="p">:</span> <span 
class="p">[</span> &quot;<span 
class="n">container_1393511571284_0002_01_000001</span>&quot; <span 
class="p">],</span>
+   &quot;<span class="n">master</span>&quot;<span class="p">:</span> <span 
class="p">[</span> &quot;<span 
class="n">container_1393511571284_0002_01_000003</span>&quot; <span 
class="p">],</span>
+   &quot;<span class="n">worker</span>&quot;<span class="p">:</span> <span 
class="p">[</span> 
+     &quot;<span 
class="n">container_1393511571284_0002_01_000002</span>&quot;<span 
class="p">,</span>
+     &quot;<span class="n">container_1393511571284_0002_01_000004</span>&quot;
+   <span class="p">]</span>
+ <span class="p">},</span>
+</pre></div>
+
+
+<h2 id="status-detailed-dynamic-state"><code>/status</code>: detailed dynamic 
state</h2>
+<p>This provides more detail on the application including live and failed 
instances</p>
+<h3 
id="statuslive-live-role-instances-by-container"><code>/status/live</code>: 
live role instances by container</h3>
+<div class="codehilite"><pre>&quot;<span class="n">cluster</span>&quot;<span 
class="p">:</span> <span class="p">{</span>
+  &quot;<span class="n">live</span>&quot;<span class="p">:</span> <span 
class="p">{</span>
+    &quot;<span class="n">worker</span>&quot;<span class="p">:</span> <span 
class="p">{</span>
+      &quot;<span 
class="n">container_1394032374441_0001_01_000003</span>&quot;<span 
class="p">:</span> <span class="p">{</span>
+        &quot;<span class="n">name</span>&quot;<span class="p">:</span> 
&quot;<span class="n">container_1394032374441_0001_01_000003</span>&quot;<span 
class="p">,</span>
+        &quot;<span class="n">role</span>&quot;<span class="p">:</span> 
&quot;<span class="n">worker</span>&quot;<span class="p">,</span>
+        &quot;<span class="n">roleId</span>&quot;<span class="p">:</span> 
1<span class="p">,</span>
+        &quot;<span class="n">createTime</span>&quot;<span class="p">:</span> 
1394032384451<span class="p">,</span>
+        &quot;<span class="n">startTime</span>&quot;<span class="p">:</span> 
1394032384503<span class="p">,</span>
+        &quot;<span class="n">released</span>&quot;<span class="p">:</span> 
<span class="n">false</span><span class="p">,</span>
+        &quot;<span class="n">host</span>&quot;<span class="p">:</span> 
&quot;192<span class="p">.</span>168<span class="p">.</span>1<span 
class="p">.</span>88&quot;<span class="p">,</span>
+        &quot;<span class="n">state</span>&quot;<span class="p">:</span> 
3<span class="p">,</span>
+        &quot;<span class="n">exitCode</span>&quot;<span class="p">:</span> 
0<span class="p">,</span>
+        &quot;<span class="n">command</span>&quot;<span class="p">:</span> 
&quot;<span class="n">hbase</span><span class="o">-</span>0<span 
class="p">.</span>98<span class="p">.</span>0<span class="o">/</span><span 
class="n">bin</span><span class="o">/</span><span class="n">hbase</span> <span 
class="o">--</span><span class="n">config</span> $<span 
class="n">PROPAGATED_CONFDIR</span> <span class="n">regionserver</span> <span 
class="n">start</span> 1<span class="o">&gt;&lt;</span><span 
class="n">LOG_DIR</span><span class="o">&gt;/</span><span 
class="n">region</span><span class="o">-</span><span 
class="n">server</span><span class="p">.</span><span class="n">txt</span> 
2<span class="o">&gt;&amp;</span>1 <span class="p">;</span> &quot;<span 
class="p">,</span>
+        &quot;<span class="n">diagnostics</span>&quot;<span class="p">:</span> 
&quot;&quot;<span class="p">,</span>
+        &quot;<span class="n">environment</span>&quot;<span class="p">:</span> 
<span class="p">[</span>
+          &quot;<span class="n">HADOOP_USER_NAME</span><span 
class="p">=</span><span class="o">\</span>&quot;<span 
class="n">slider</span><span class="o">\</span>&quot;&quot;<span 
class="p">,</span>
+          &quot;<span class="n">HBASE_LOG_DIR</span><span 
class="p">=</span><span class="o">\</span>&quot;<span class="o">/</span><span 
class="n">tmp</span><span class="o">/</span><span class="n">slider</span><span 
class="o">-</span><span class="n">slider</span><span 
class="o">\</span>&quot;&quot;<span class="p">,</span>
+          &quot;<span class="n">HBASE_HEAPSIZE</span><span 
class="p">=</span><span class="o">\</span>&quot;256<span 
class="o">\</span>&quot;&quot;<span class="p">,</span>
+          &quot;<span class="n">MALLOC_ARENA_MAX</span><span 
class="p">=</span><span class="o">\</span>&quot;4<span 
class="o">\</span>&quot;&quot;<span class="p">,</span>
+          &quot;<span class="n">PROPAGATED_CONFDIR</span><span 
class="p">=</span><span class="o">\</span>&quot;$<span 
class="n">PWD</span><span class="o">/</span><span 
class="n">propagatedconf</span><span class="o">\</span>&quot;&quot;
+        <span class="p">]</span>
+      <span class="p">}</span>
+    <span class="p">}</span>
+    <span class="n">failed</span> <span class="p">:</span> <span 
class="p">{}</span>
+  <span class="p">}</span>
+</pre></div>
+
+
+<p>All live instances MUST be described in <code>/status/live</code></p>
+<p>Failed clusters MAY be listed in the <code>/status/failed</code> section, 
specifically,
+a limited set of recently failed clusters SHOULD be provided.</p>
+<p>Future versions of this document may introduce more sections under 
<code>/status</code>.</p>
+<h3 
id="statusrolestatus-role-status-information"><code>/status/rolestatus</code>: 
role status information</h3>
+<p>This lists the current status of the roles: 
+How many are running vs requested, how many are being
+released.</p>
+<div class="codehilite"><pre>&quot;<span 
class="n">rolestatus</span>&quot;<span class="p">:</span> <span 
class="p">{</span>
+  &quot;<span class="n">worker</span>&quot;<span class="p">:</span> <span 
class="p">{</span>
+    &quot;<span class="n">role</span><span class="p">.</span><span 
class="n">instances</span>&quot;<span class="p">:</span> &quot;2&quot;<span 
class="p">,</span>
+    &quot;<span class="n">role</span><span class="p">.</span><span 
class="n">requested</span><span class="p">.</span><span 
class="n">instances</span>&quot;<span class="p">:</span> &quot;0&quot;<span 
class="p">,</span>
+    &quot;<span class="n">role</span><span class="p">.</span><span 
class="n">failed</span><span class="p">.</span><span 
class="n">starting</span><span class="p">.</span><span 
class="n">instances</span>&quot;<span class="p">:</span> &quot;0&quot;<span 
class="p">,</span>
+    &quot;<span class="n">role</span><span class="p">.</span><span 
class="n">actual</span><span class="p">.</span><span 
class="n">instances</span>&quot;<span class="p">:</span> &quot;2&quot;<span 
class="p">,</span>
+    &quot;<span class="n">role</span><span class="p">.</span><span 
class="n">releasing</span><span class="p">.</span><span 
class="n">instances</span>&quot;<span class="p">:</span> &quot;0&quot;<span 
class="p">,</span>
+    &quot;<span class="n">role</span><span class="p">.</span><span 
class="n">failed</span><span class="p">.</span><span 
class="n">instances</span>&quot;<span class="p">:</span> &quot;1&quot;
+  <span class="p">},</span>
+  &quot;<span class="n">slider</span>&quot;<span class="p">:</span> <span 
class="p">{</span>
+    &quot;<span class="n">role</span><span class="p">.</span><span 
class="n">instances</span>&quot;<span class="p">:</span> &quot;1&quot;<span 
class="p">,</span>
+    &quot;<span class="n">role</span><span class="p">.</span><span 
class="n">requested</span><span class="p">.</span><span 
class="n">instances</span>&quot;<span class="p">:</span> &quot;0&quot;<span 
class="p">,</span>
+    &quot;<span class="n">role</span><span class="p">.</span><span 
class="n">name</span>&quot;<span class="p">:</span> &quot;<span 
class="n">slider</span>&quot;<span class="p">,</span>
+    &quot;<span class="n">role</span><span class="p">.</span><span 
class="n">actual</span><span class="p">.</span><span 
class="n">instances</span>&quot;<span class="p">:</span> &quot;1&quot;<span 
class="p">,</span>
+    &quot;<span class="n">role</span><span class="p">.</span><span 
class="n">releasing</span><span class="p">.</span><span 
class="n">instances</span>&quot;<span class="p">:</span> &quot;0&quot;<span 
class="p">,</span>
+    &quot;<span class="n">role</span><span class="p">.</span><span 
class="n">failed</span><span class="p">.</span><span 
class="n">instances</span>&quot;<span class="p">:</span> &quot;0&quot;
+  <span class="p">},</span>
+  &quot;<span class="n">master</span>&quot;<span class="p">:</span> <span 
class="p">{</span>
+    &quot;<span class="n">role</span><span class="p">.</span><span 
class="n">instances</span>&quot;<span class="p">:</span> &quot;1&quot;<span 
class="p">,</span>
+    &quot;<span class="n">role</span><span class="p">.</span><span 
class="n">requested</span><span class="p">.</span><span 
class="n">instances</span>&quot;<span class="p">:</span> &quot;1&quot;<span 
class="p">,</span>
+    &quot;<span class="n">role</span><span class="p">.</span><span 
class="n">name</span>&quot;<span class="p">:</span> &quot;<span 
class="n">master</span>&quot;<span class="p">,</span>
+    &quot;<span class="n">role</span><span class="p">.</span><span 
class="n">failed</span><span class="p">.</span><span 
class="n">starting</span><span class="p">.</span><span 
class="n">instances</span>&quot;<span class="p">:</span> &quot;0&quot;<span 
class="p">,</span>
+    &quot;<span class="n">role</span><span class="p">.</span><span 
class="n">actual</span><span class="p">.</span><span 
class="n">instances</span>&quot;<span class="p">:</span> &quot;0&quot;<span 
class="p">,</span>
+    &quot;<span class="n">role</span><span class="p">.</span><span 
class="n">releasing</span><span class="p">.</span><span 
class="n">instances</span>&quot;<span class="p">:</span> &quot;0&quot;<span 
class="p">,</span>
+    &quot;<span class="n">role</span><span class="p">.</span><span 
class="n">failed</span><span class="p">.</span><span 
class="n">instances</span>&quot;<span class="p">:</span> &quot;0&quot;
+  <span class="p">}</span>
+<span class="p">}</span>
+</pre></div>
+
+
+<h3 
id="statusprovider-provider-specific-information"><code>/status/provider</code>:
 provider-specific information</h3>
+<p>Providers MAY publish information to the <code>/status/provider</code> 
section.</p>
+<ol>
+<li>There's no restriction on what JSON is permitted in this section.</li>
+<li>Providers may make their own updates to the application state to read and
+write this block -operations that are asynchronous to any status queries.</li>
+</ol>
+<h2 id="statistics-aggregate-statistics"><code>/statistics</code>: aggregate 
statistics</h2>
+<p>Statistics on the cluster and each role in the cluster </p>
+<p>Better to have a specific <code>/statistics/cluster</code> element, 
+and to move the roles' statistics under <code>/statistics/roles</code>:</p>
+<div class="codehilite"><pre>&quot;<span 
class="n">statistics</span>&quot;<span class="p">:</span> <span 
class="p">{</span>
+  &quot;<span class="n">cluster</span>&quot;<span class="p">:</span> <span 
class="p">{</span>
+    &quot;<span class="n">containers</span><span class="p">.</span><span 
class="n">unknown</span><span class="p">.</span><span 
class="n">completed</span>&quot;<span class="p">:</span> 0<span 
class="p">,</span>
+    &quot;<span class="n">containers</span><span class="p">.</span><span 
class="n">start</span><span class="p">.</span><span 
class="n">completed</span>&quot;<span class="p">:</span> 3<span 
class="p">,</span>
+    &quot;<span class="n">containers</span><span class="p">.</span><span 
class="n">live</span>&quot;<span class="p">:</span> 1<span class="p">,</span>
+    &quot;<span class="n">containers</span><span class="p">.</span><span 
class="n">start</span><span class="p">.</span><span 
class="n">failed</span>&quot;<span class="p">:</span> 0<span class="p">,</span>
+    &quot;<span class="n">containers</span><span class="p">.</span><span 
class="n">failed</span>&quot;<span class="p">:</span> 0<span class="p">,</span>
+    &quot;<span class="n">containers</span><span class="p">.</span><span 
class="n">completed</span>&quot;<span class="p">:</span> 0<span 
class="p">,</span>
+    &quot;<span class="n">containers</span><span class="p">.</span><span 
class="n">surplus</span>&quot;<span class="p">:</span> 0
+  <span class="p">},</span>
+  &quot;<span class="n">roles</span>&quot;<span class="p">:</span> <span 
class="p">{</span>
+    &quot;<span class="n">worker</span>&quot;<span class="p">:</span> <span 
class="p">{</span>
+      &quot;<span class="n">containers</span><span class="p">.</span><span 
class="n">start</span><span class="p">.</span><span 
class="n">completed</span>&quot;<span class="p">:</span> 0<span 
class="p">,</span>
+      &quot;<span class="n">containers</span><span class="p">.</span><span 
class="n">live</span>&quot;<span class="p">:</span> 2<span class="p">,</span>
+      &quot;<span class="n">containers</span><span class="p">.</span><span 
class="n">start</span><span class="p">.</span><span 
class="n">failed</span>&quot;<span class="p">:</span> 0<span class="p">,</span>
+      &quot;<span class="n">containers</span><span class="p">.</span><span 
class="n">active</span><span class="p">.</span><span 
class="n">requests</span>&quot;<span class="p">:</span> 0<span 
class="p">,</span>
+      &quot;<span class="n">containers</span><span class="p">.</span><span 
class="n">failed</span>&quot;<span class="p">:</span> 0<span class="p">,</span>
+      &quot;<span class="n">containers</span><span class="p">.</span><span 
class="n">completed</span>&quot;<span class="p">:</span> 0<span 
class="p">,</span>
+      &quot;<span class="n">containers</span><span class="p">.</span><span 
class="n">desired</span>&quot;<span class="p">:</span> 2<span class="p">,</span>
+      &quot;<span class="n">containers</span><span class="p">.</span><span 
class="n">requested</span>&quot;<span class="p">:</span> 0
+    <span class="p">},</span>
+    &quot;<span class="n">master</span>&quot;<span class="p">:</span> <span 
class="p">{</span>
+      &quot;<span class="n">containers</span><span class="p">.</span><span 
class="n">start</span><span class="p">.</span><span 
class="n">completed</span>&quot;<span class="p">:</span> 0<span 
class="p">,</span>
+      &quot;<span class="n">containers</span><span class="p">.</span><span 
class="n">live</span>&quot;<span class="p">:</span> 1<span class="p">,</span>
+      &quot;<span class="n">containers</span><span class="p">.</span><span 
class="n">start</span><span class="p">.</span><span 
class="n">failed</span>&quot;<span class="p">:</span> 0<span class="p">,</span>
+      &quot;<span class="n">containers</span><span class="p">.</span><span 
class="n">active</span><span class="p">.</span><span 
class="n">requests</span>&quot;<span class="p">:</span> 0<span 
class="p">,</span>
+      &quot;<span class="n">containers</span><span class="p">.</span><span 
class="n">failed</span>&quot;<span class="p">:</span> 0<span class="p">,</span>
+      &quot;<span class="n">containers</span><span class="p">.</span><span 
class="n">completed</span>&quot;<span class="p">:</span> 0<span 
class="p">,</span>
+      &quot;<span class="n">containers</span><span class="p">.</span><span 
class="n">desired</span>&quot;<span class="p">:</span> 1<span class="p">,</span>
+      &quot;<span class="n">containers</span><span class="p">.</span><span 
class="n">requested</span>&quot;<span class="p">:</span> 0
+    <span class="p">}</span>
+  <span class="p">}</span>
+<span class="p">},</span>
+</pre></div>
+
+
+<p><code>/statistics/cluster</code> provides aggregate statistics for the 
entire cluster.</p>
+<p>Under <code>/statistics/roles</code> MUST come an entry for each role in 
the cluster.</p>
+<p>All simple values in statistics section are integers.</p>
+<h3 id="clientproperties"><code>/clientProperties</code></h3>
+<p>The <code>/clientProperties</code> section contains key-val pairs of type
+string, the expectation being this is where providers can insert specific
+single attributes for client applications.</p>
+<p>These values can be converted to application-specific files on the client,
+in code -as done today in the Slider CLI-, or via template expansion (beyond
+the scope of this document.</p>
+<h3 id="clientfiles"><code>/clientfiles</code></h3>
+<p>This section list all files that an application instance MAY generate
+for clients, along with with a description.</p>
+<div class="codehilite"><pre>&quot;<span class="o">/</span><span 
class="n">clientfiles</span><span class="o">/</span><span 
class="n">hbase</span><span class="o">-</span><span class="n">site</span><span 
class="p">.</span><span class="n">xml</span>&quot;<span class="p">:</span> 
&quot;<span class="n">site</span> <span class="n">information</span> <span 
class="k">for</span> <span class="n">HBase</span>&quot;
+&quot;<span class="o">/</span><span class="n">clientfiles</span><span 
class="o">/</span><span class="n">log4</span><span class="p">.</span><span 
class="k">properties</span>&quot;<span class="p">:</span> &quot;<span 
class="n">log4</span><span class="p">.</span><span class="n">property</span> 
<span class="n">file</span>&quot;
+</pre></div>
+
+
+<p>Client configuration file retrieval is by other means; this
+status operation merely lists files that are available;</p>
+<h3 id="aggregate-example">Aggregate Example</h3>
+  </div>
+
+  <div id="footer">
+    <a alt="Apache Software Foundation" href="http://www.apache.org";>
+      <img id="asf-logo" alt="Apache Software Foundation" 
src="/images/feather-small.gif" width="100">
+    </a>
+    <div class="copyright">
+      <p>
+        Copyright &copy; 2011-2014 The Apache Software Foundation, Licensed 
under
+        the <a href="http://www.apache.org/licenses/LICENSE-2.0";>Apache 
License, Version 2.0</a>.
+        Apache Slider, Slider, Apache, the Apache feather logo, and the Apache 
Incubator
+        project logo are trademarks of the <a 
href="http://www.apache.org";>Apache Software Foundation</a>.<br />
+        Site created with <a href="http://getbootstrap.com/";>Bootstrap</a> 
including icons from <a href="http://glyphicons.com/";>GLYPHICONS</a> and <a 
href="http://fontawesome.io/";>Font Awesome</a>.
+      </p>
+    </div> 
+  </div>
+  </div>
+
+</div>
+</div>
+
+<script type="text/javascript">
+
+</script>
+</body>
+</html>

Modified: websites/staging/slider/trunk/content/docs/examples.html
==============================================================================
--- websites/staging/slider/trunk/content/docs/examples.html (original)
+++ websites/staging/slider/trunk/content/docs/examples.html Wed Mar 25 
17:59:38 2015
@@ -252,7 +252,10 @@ to keep the log bloat under control.</p>
 
 
 <h3 
id="optional-point-binslider-at-your-chosen-cluster-configuration">Optional: 
point bin/slider at your chosen cluster configuration</h3>
-<p>export 
SLIDER_CONF_DIR=~/Projects/slider/slider-core/src/test/configs/ubuntu-secure/slider</p>
+<div class="codehilite"><pre><span class="n">export</span> <span 
class="n">SLIDER_CONF_DIR</span><span class="p">=</span><span 
class="o">~/</span><span class="n">Projects</span><span class="o">/</span><span 
class="n">slider</span><span class="o">/</span><span 
class="n">slider</span><span class="o">-</span><span class="n">core</span><span 
class="o">/</span><span class="n">src</span><span class="o">/</span><span 
class="n">test</span><span class="o">/</span><span 
class="n">configs</span><span class="o">/</span><span 
class="n">ubuntu</span><span class="o">-</span><span 
class="n">secure</span><span class="o">/</span><span class="n">slider</span>
+</pre></div>
+
+
 <h2 id="optional-clean-up-any-existing-slider-cluster-details">Optional: Clean 
up any existing slider cluster details</h2>
 <p>This is for demos only, otherwise you lose the clusters and their 
databases.</p>
 <div class="codehilite"><pre><span class="n">hdfs</span> <span 
class="n">dfs</span> <span class="o">-</span><span class="n">rm</span> <span 
class="o">-</span><span class="n">r</span> <span class="n">hdfs</span><span 
class="p">:</span><span class="o">//</span><span class="n">master</span><span 
class="p">:</span>9090<span class="o">/</span><span class="n">user</span><span 
class="o">/</span><span class="n">home</span><span class="o">/</span><span 
class="n">stevel</span><span class="o">/</span><span class="p">.</span><span 
class="n">slider</span>

Modified: websites/staging/slider/trunk/content/docs/getting_started.html
==============================================================================
--- websites/staging/slider/trunk/content/docs/getting_started.html (original)
+++ websites/staging/slider/trunk/content/docs/getting_started.html Wed Mar 25 
17:59:38 2015
@@ -397,7 +397,7 @@ This path is also reflected in appConfig
 <p>Slider needs to know what components (and how many components) to 
deploy.</p>
 <p>As Slider creates each instance of a component in its own YARN container, 
it also needs to know what to ask YARN for in terms of <strong>memory</strong> 
and <strong>CPU</strong> for those containers. </p>
 <p>All this information goes into the <strong>Resources Specification</strong> 
file ("Resource Spec") named <code>resources.json</code>. The Resource Spec 
tells Slider how many instances of each component in the application (such as 
an HBase RegionServer) to deploy and the parameters for YARN.</p>
-<p>An application package should contain the default resources.json and you 
can start from there. Or you can create one based on <a 
href="slider_specs/resource_specification.html">Resource Specification</a>.</p>
+<p>An application package should contain the default resources.json and you 
can start from there. Or you can create one based on <a 
href="/configuration/resource.html">Resource Specification</a>).</p>
 <p>Store the Resource Spec file on your local disk (e.g. 
<code>/tmp/resources.json</code>).</p>
 <h4 id="wzxhzdk44wzxhzdk45application-configuration"><a 
name="appconfig"></a>Application Configuration</h4>
 <p>Alongside the Resource Spec there is the <strong>Application 
Configuration</strong> file ("App Config") which includes parameters that are 
specific to the application, rather than YARN. The App Config is a file that 
contains all application configuration. This configuration is applied to the 
default configuration provided by the application definition and then handed 
off to the associated component agent.</p>

Modified: websites/staging/slider/trunk/content/docs/high_availability.html
==============================================================================
--- websites/staging/slider/trunk/content/docs/high_availability.html (original)
+++ websites/staging/slider/trunk/content/docs/high_availability.html Wed Mar 
25 17:59:38 2015
@@ -274,7 +274,6 @@ for setup details.</p>
       <span class="nt">&lt;property&gt;</span>
           <span class="nt">&lt;description&gt;</span>The class to use as the 
persistent store.<span class="nt">&lt;/description&gt;</span>
           <span 
class="nt">&lt;name&gt;</span>yarn.resourcemanager.store.class<span 
class="nt">&lt;/name&gt;</span>
-          <span 
class="cp">&lt;!­­--value&gt;</span>org.apache.hadoop.yarn.server.resourcemanager.recovery.FileSystemRMStateStore<span
 class="err">&lt;</span>/value­--&gt;
           <span 
class="nt">&lt;value&gt;</span>org.apache.hadoop.yarn.server.resourcemanager.recovery.ZKRMStateStore<span
 class="nt">&lt;/value&gt;</span>
       <span class="nt">&lt;/property&gt;</span>
 
@@ -284,7 +283,7 @@ for setup details.</p>
                        
org.apache.hadoop.yarn.server.resourcemanager.recovery.ZKRMStateStore
                        as the value for yarn.resourcemanager.store.class
           <span class="nt">&lt;/description&gt;</span>
-          <span 
class="nt">&lt;name&gt;</span>yarn.resourcemanager.zk­-address<span 
class="nt">&lt;/name&gt;</span>
+          <span 
class="nt">&lt;name&gt;</span>yarn.resourcemanager.zk.address<span 
class="nt">&lt;/name&gt;</span>
           <span class="nt">&lt;value&gt;</span>127.0.0.1:2181<span 
class="nt">&lt;/value&gt;</span>
       <span class="nt">&lt;/property&gt;</span>
 </pre></div>

Modified: websites/staging/slider/trunk/content/docs/security.html
==============================================================================
--- websites/staging/slider/trunk/content/docs/security.html (original)
+++ websites/staging/slider/trunk/content/docs/security.html Wed Mar 25 
17:59:38 2015
@@ -270,7 +270,7 @@ rights of the user that created the clus
 <p>The Application Master will read in the JSON cluster specification file, 
and instantiate the
 relevant number of componentss. </p>
 <h3 id="the-keytab-distributionaccess-options">The Keytab distribution/access 
Options</h3>
-<p>Rather than relying on delegation token based authentication mechanisms, 
the AM leverages keytab files for obtaining the principals to authenticate to 
the configured cluster KDC. In order to perform this login the AM requires 
access to a keytab file that contains the principal representing the user 
identity to be associated with the launched application instance (e.g. in an 
HBase installation you may elect to leverage the ‘hbase’ principal for this 
purpose). There are two mechanisms supported for keytab access and/or 
distribution:</p>
+<p>Rather than relying on delegation token based authentication mechanisms, 
the AM leverages keytab files for obtaining the principals to authenticate to 
the configured cluster KDC. In order to perform this login the AM requires 
access to a keytab file that contains the principal representing the user 
identity to be associated with the launched application instance (e.g. in an 
HBase installation you may elect to leverage the <code>hbase</code> principal 
for this purpose). There are two mechanisms supported for keytab access and/or 
distribution:</p>
 <h4 id="local-keytab-file-access">Local Keytab file access:</h4>
 <p>An application deployer may choose to pre-distribute the keytab files 
required to the Node Manager (NM) hosts in a Yarn cluster. In that instance the 
appConfig.json requires the following properties:</p>
 <div class="codehilite"><pre><span class="p">.</span> <span class="p">.</span> 
<span class="p">.</span>
@@ -278,13 +278,13 @@ relevant number of componentss. </p>
     &quot;<span class="n">slider</span><span class="o">-</span><span 
class="n">appmaster</span>&quot;<span class="p">:</span> <span 
class="p">{</span>
         &quot;<span class="n">jvm</span><span class="p">.</span><span 
class="n">heapsize</span>&quot;<span class="p">:</span> &quot;256<span 
class="n">M</span>&quot;<span class="p">,</span>
         &quot;<span class="n">slider</span><span class="p">.</span><span 
class="n">am</span><span class="p">.</span><span class="n">keytab</span><span 
class="p">.</span><span class="n">local</span><span class="p">.</span><span 
class="n">path</span>&quot;<span class="p">:</span> &quot;<span 
class="o">/</span><span class="n">etc</span><span class="o">/</span><span 
class="n">security</span><span class="o">/</span><span 
class="n">keytabs</span><span class="o">/</span><span 
class="n">hbase</span><span class="p">.</span><span 
class="n">headless</span><span class="p">.</span><span 
class="n">keytab</span>&quot;<span class="p">,</span>
-        “<span class="n">slider</span><span class="p">.</span><span 
class="n">keytab</span><span class="p">.</span><span 
class="n">principal</span><span class="p">.</span><span 
class="n">name</span>” <span class="p">:</span> “<span 
class="n">hbase</span>&quot;
+        &quot;<span class="n">slider</span><span class="p">.</span><span 
class="n">keytab</span><span class="p">.</span><span 
class="n">principal</span><span class="p">.</span><span 
class="n">name</span>&quot; <span class="p">:</span> &quot;<span 
class="n">hbase</span>&quot;
     <span class="p">}</span>
 <span class="p">}</span>
 </pre></div>
 
 
-<p>The “slider.am.keytab.local.path” property provides the full path to 
the keytab file location and is mandatory for the local lookup mechanism.  The 
principal to leverage from the file is identified by the 
“slider.keytab.principal.name” property.</p>
+<p>The <code>slider.am.keytab.local.path</code> property provides the full 
path to the keytab file location and is mandatory for the local lookup 
mechanism.  The principal to leverage from the file is identified by the 
<code>slider.keytab.principal.name</code> property.</p>
 <p>In this scenario the distribution of keytab files for the AM AND the 
application itself is the purview of the application deployer.  So, for 
example, for an hbase deployment, the hbase site service keytab will have to be 
distributed as well and indicated in the hbase-site properties:</p>
 <div class="codehilite"><pre>    <span class="p">.</span> <span 
class="p">.</span> <span class="p">.</span>
     &quot;<span class="n">site</span><span class="p">.</span><span 
class="n">hbase</span><span class="o">-</span><span class="n">site</span><span 
class="p">.</span><span class="n">hbase</span><span class="p">.</span><span 
class="n">master</span><span class="p">.</span><span 
class="n">kerberos</span><span class="p">.</span><span 
class="n">principal</span>&quot;<span class="p">:</span> &quot;<span 
class="n">hbase</span><span class="o">/</span><span class="n">_HOST</span><span 
class="p">@</span><span class="n">EXAMPLE</span><span class="p">.</span><span 
class="n">COM</span>&quot;<span class="p">,</span>
@@ -301,15 +301,22 @@ relevant number of componentss. </p>
         &quot;<span class="n">jvm</span><span class="p">.</span><span 
class="n">heapsize</span>&quot;<span class="p">:</span> &quot;256<span 
class="n">M</span>&quot;<span class="p">,</span>
         &quot;<span class="n">slider</span><span class="p">.</span><span 
class="n">hdfs</span><span class="p">.</span><span class="n">keytab</span><span 
class="p">.</span><span class="n">dir</span>&quot;<span class="p">:</span> 
&quot;<span class="p">.</span><span class="n">slider</span><span 
class="o">/</span><span class="n">keytabs</span><span class="o">/</span><span 
class="n">hbase</span>&quot;<span class="p">,</span>
         &quot;<span class="n">slider</span><span class="p">.</span><span 
class="n">am</span><span class="p">.</span><span class="n">login</span><span 
class="p">.</span><span class="n">keytab</span><span class="p">.</span><span 
class="n">name</span>&quot;<span class="p">:</span> &quot;<span 
class="n">hbase</span><span class="p">.</span><span 
class="n">headless</span><span class="p">.</span><span 
class="n">keytab</span>&quot;<span class="p">,</span>
-        “<span class="n">slider</span><span class="p">.</span><span 
class="n">keytab</span><span class="p">.</span><span 
class="n">principal</span><span class="p">.</span><span 
class="n">name</span>” <span class="p">:</span> “<span 
class="n">hbase</span>&quot;
+        &quot;<span class="n">slider</span><span class="p">.</span><span 
class="n">keytab</span><span class="p">.</span><span 
class="n">principal</span><span class="p">.</span><span 
class="n">name</span>&quot; <span class="p">:</span> &quot;<span 
class="n">hbase</span>&quot;
     <span class="p">}</span>
 <span class="p">}</span>
 </pre></div>
 
 
-<p>The “slider.hdfs.keytab.dir” points to an HDFS path, relative to the 
user’s home directory (e.g. /users/hbase), in which slider can find all 
keytab files required for both AM login as well as application services (e.g. 
for hbase that would be the headless keytab for the AM and the service keytab 
for the HBase application components).  If no value is specified, a default 
location of “.slider/keytabs/<cluster name>” is assumed.
-    The “slider.am.login.keytab.name” is the name of the keytab file 
(mandatory property), found within the specified directory, that the AM will 
use to lookup up the login principal and authenticate.</p>
-<p>If leveraging the slider-based distribution mechanism, the keytab files for 
components will be accessible from a “keytabs” sub-directory of the 
container work folder and can therefore be specified relative to the 
$AGENT_WORK_ROOT/keytabs directory, e.g.:</p>
+<p>The <code>slider.hdfs.keytab.dir</code> points to an HDFS path, relative to 
the user<code>s home directory
+(e.g.</code>/users/hbase`), in which slider can find all keytab files required 
for both AM login
+as well as application services. For example, for Apache HBase the uses would 
be the headless keytab
+for the AM and the service keytab for the HBase application components).</p>
+<p>If no value is specified, a default location of 
<code>.slider/keytabs/&lt;cluster name&gt;</code> is assumed.</p>
+<p>The <code>slider.am.login.keytab.name</code> is the name of the keytab file 
(mandatory property),
+found within the specified directory, that the AM will use to lookup up the 
login principal and authenticate.</p>
+<p>When using the slider-based distribution mechanism, the keytab files for 
components will be
+accessible from a <code>keytabs</code> sub-directory of the container work 
folder and can therefore be
+specified relative to the <code>$AGENT_WORK_ROOT/keytabs</code> directory, 
e.g.:</p>
 <div class="codehilite"><pre>    . . .
     &quot;site.hbase-site.hbase.master.kerberos.principal&quot;: 
&quot;hbase/[email protected]&quot;,
     &quot;site.hbase-site.hbase.master.keytab.file&quot;: &quot;<span 
class="cp">${</span><span class="n">AGENT_WORK_ROOT</span><span 
class="cp">}</span>/keytabs/hbase.service.keytab&quot;,
@@ -319,16 +326,22 @@ relevant number of componentss. </p>
 
 <p>For both mechanisms above, the principal name used for authentication is 
either:</p>
 <ul>
-<li>The principal name established on the client side before invocation of the 
Slider CLI (the principal used to ‘kinit’) or</li>
-<li>The value specified for a “slider.keytab.principal.name” property. 
</li>
+<li>The principal name established on the client side before invocation of the 
Slider CLI (the principal used to <code>kinit</code>) or</li>
+<li>The value specified for a <code>slider.keytab.principal.name</code> 
property. </li>
 </ul>
 <h4 id="slider-client-keytab-installation">Slider Client Keytab 
installation:</h4>
-<p>The Slider client can be leveraged to install keytab files individually 
into a designated keytab HDFS folder. The format of the command is:</p>
+<p>The Slider client can be leveraged to install keytab files individually 
into a designated
+keytab HDFS folder. The format of the command is:</p>
 <div class="codehilite"><pre><span class="n">slider</span> <span 
class="n">install</span><span class="o">-</span><span class="n">keytab</span> 
—<span class="n">keytab</span> <span class="o">&lt;</span><span 
class="n">path</span> <span class="n">to</span> <span class="n">keytab</span> 
<span class="n">on</span> <span class="n">local</span> <span 
class="n">file</span> <span class="n">system</span><span class="o">&gt;</span> 
—<span class="n">folder</span> <span class="o">&lt;</span><span 
class="n">name</span> <span class="n">of</span> <span class="n">HDFS</span> 
<span class="n">folder</span> <span class="n">to</span> <span 
class="n">store</span> <span class="n">keytab</span><span class="o">&gt;</span> 
<span class="p">[</span>—<span class="n">overwrite</span><span 
class="p">]</span>
 </pre></div>
 
 
-<p>The command will store the keytab file specified by the ‘—keytab’ 
option in to an HDFS folder that is created or exists under 
/user/username/.slider/keytabs named by the ‘—folder’ option (e.g. if the 
folder name specified is ‘HBASE’ the keytab will be stored in 
/user/username/.slider/keytabs/HBASE).  The command can be used to upload 
keytab files individually up to HDFS.  For example, if uploading both AM and 
HBase service keytabs to the ‘HBASE’ folder, the command will be invoked 
twice:</p>
+<p>The command will store the keytab file specified by the 
<code>—keytab</code> option in to
+an HDFS folder that is created or exists under 
<code>/user/username/.slider/keytabs</code> named by the
+<code>—folder</code> option (e.g. if the folder name specified is 
<code>HBASE</code> the keytab will be stored in
+ <code>/user/username/.slider/keytabs/HBASE</code>).
+The command can be used to upload keytab files individually up to HDFS.
+ For example, if uploading both AM and HBase service keytabs to the 
<code>HBASE</code> folder, the command will be invoked twice:</p>
 <div class="codehilite"><pre><span class="n">slider</span> <span 
class="n">install</span><span class="o">-</span><span class="n">keytab</span> 
—<span class="n">keytab</span> <span class="o">/</span><span 
class="n">my</span><span class="o">/</span><span class="n">local</span><span 
class="o">/</span><span class="n">keytabs</span><span class="o">/</span><span 
class="n">folder</span><span class="o">/</span><span 
class="n">hbase</span><span class="p">.</span><span 
class="n">headless</span><span class="p">.</span><span class="n">keytab</span> 
—<span class="n">folder</span> <span class="n">HBASE</span>
 <span class="n">slider</span> <span class="n">install</span><span 
class="o">-</span><span class="n">keytab</span> —<span 
class="n">keytab</span> <span class="o">/</span><span class="n">my</span><span 
class="o">/</span><span class="n">local</span><span class="o">/</span><span 
class="n">keytabs</span><span class="o">/</span><span 
class="n">folder</span><span class="o">/</span><span 
class="n">hbase</span><span class="p">.</span><span 
class="n">service</span><span class="p">.</span><span class="n">keytab</span> 
—<span class="n">folder</span> <span class="n">HBASE</span>
 </pre></div>
@@ -346,7 +359,7 @@ relevant number of componentss. </p>
        &quot;jvm.heapsize&quot;: &quot;256M&quot;,
        &quot;slider.hdfs.keytab.dir&quot;: &quot;.slider/keytabs/HBASE&quot;,
        &quot;slider.am.login.keytab.name&quot;: 
&quot;hbase.headless.keytab&quot;
-       “slider.keytab.principal.name” : “hbase&quot;
+       `slider.keytab.principal.name` : `hbase&quot;
    }
 }
 </pre></div>
@@ -399,15 +412,22 @@ documentation.</p>
 
 
 <h2 
id="generation-and-deployment-of-application-keystorestruststores">Generation 
and deployment of application keystores/truststores</h2>
-<p>Application components may make use of keystores and truststores to 
establish secure communications.  Given the nature of application deployments 
in a YARN cluster and the lack of certainty concerning the nodemanager host on 
which a component container may be spawned, Slider provides the facility for 
creating and deploying the keystores and truststores that may be required.</p>
+<p>Application components may make use of keystores and truststores to 
establish secure communications.
+Given the nature of application deployments in a YARN cluster and the lack of 
certainty concerning
+the host on which a component container may be allocated,
+Slider provides the facility for creating and deploying the keystores and 
truststores that may be required.</p>
 <p>The process of enabling application keystore/truststore generation and 
deployment is:</p>
 <ul>
-<li>Set the "slider.component.security.stores.required" property to "true".  
This property can be set as a global property (indicating all components 
require stores) or can be set/overridden at the component level to selectively 
enable store generation for a given component.</li>
+<li>Set the configuration option 
<code>"slider.component.security.stores.required"</code> to <code>"true"</code>.
+ This optional can be set as a global property (indicating all components 
require stores) or can be set/overridden at the component level to selectively 
enable store generation for a given component.</li>
 <li>Specify the password property for the component keystore or truststore 
or,</li>
 <li>Specify the property providing the alias that references a credential 
managed by the Hadoop Credential Provider.  This credential provides the 
password for securing the keystore/truststore.</li>
 </ul>
 <h3 id="specifying-a-keystoretruststore-password">Specifying a 
keystore/truststore password</h3>
-<p>Applications that make use of a keystore and/or truststore may already have 
configuration properties that reference the value for the password used to 
secure the given certificate store.  In those instances the application 
configuration can reference the value of the password property in the component 
specific configuration section:</p>
+<p>Applications that make use of a keystore and/or truststore may already have 
configuration
+properties that reference the value for the password used to secure the given 
certificate store.
+In those instances the application configuration can reference the value of 
the password property
+in the component specific configuration section:</p>
 <div class="codehilite"><pre>    &quot;<span 
class="n">APP_COMPONENT</span>&quot;<span class="p">:</span> <span 
class="p">{</span>
         &quot;<span class="n">slider</span><span class="p">.</span><span 
class="n">component</span><span class="p">.</span><span 
class="n">security</span><span class="p">.</span><span 
class="n">stores</span><span class="p">.</span><span 
class="n">required</span>&quot;<span class="p">:</span> &quot;<span 
class="n">true</span>&quot;<span class="p">,</span> 
         &quot;<span class="n">slider</span><span class="p">.</span><span 
class="n">component</span><span class="p">.</span><span 
class="n">keystore</span><span class="p">.</span><span 
class="n">password</span><span class="p">.</span><span 
class="n">property</span>&quot;<span class="p">:</span> &quot;<span 
class="n">site</span><span class="p">.</span><span class="n">myapp</span><span 
class="o">-</span><span class="n">site</span><span class="p">.</span><span 
class="n">app_component</span><span class="p">.</span><span 
class="n">keystore</span><span class="p">.</span><span 
class="n">password</span>&quot;
@@ -417,14 +437,15 @@ documentation.</p>
 
 <p>In this example:</p>
 <ul>
-<li>The store required property is set to "true" for the APP_COMPONENT 
component</li>
-<li>The application has a property in its site configuration file named 
"app_component.keystore.password".  This property is specified in the appConfig 
file's global section (with the "site.myapp-site" prefix), and is referenced 
here to indicate to Slider which application property provides the store 
password.</li>
+<li>The store required property is set to <code>"true"</code> for the 
<code>APP_COMPONENT</code> component</li>
+<li>The application has a property in its site configuration file named 
<code>"app_component.keystore.password"</code>. 
+This property is specified in the appConfig file's global section (with the 
"site.myapp-site" prefix), and is referenced here to indicate to Slider which 
application property provides the store password.</li>
 </ul>
 <h3 id="specifying-a-keystoretruststore-credential-provider-alias">Specifying 
a keystore/truststore Credential Provider alias</h3>
 <p>Applications that utilize the Credenfial Provider API to retrieve 
application passwords can specify the following configuration:</p>
 <ul>
 <li>
-<p>Indicate the credential storage path in the "credentials" section of the 
app configuration file:</p>
+<p>Indicate the credential storage path in the <code>credentials</code> 
section of the app configuration file:</p>
 <div class="codehilite"><pre>  &quot;credentials&quot;: {
     &quot;jceks://hdfs/user/<span class="cp">${</span><span 
class="n">USER</span><span class="cp">}</span>/myapp.jceks&quot;: 
[&quot;app_component.keystore.password.alias&quot;]
   }
@@ -453,6 +474,8 @@ documentation.</p>
 </pre></div>
 
 
+<p>or
+    No valid credentials provided (Mechanism level: Failed to find any 
Kerberos tgt)</p>
 <p>This means that the JRE does not have the extended cryptography package
 needed to work with the keys that Kerberos needs. This must be downloaded
 from Oracle (or other supplier of the JVM) and installed according to

Modified: 
websites/staging/slider/trunk/content/docs/slider_specs/application_instance_configuration.html
==============================================================================
--- 
websites/staging/slider/trunk/content/docs/slider_specs/application_instance_configuration.html
 (original)
+++ 
websites/staging/slider/trunk/content/docs/slider_specs/application_instance_configuration.html
 Wed Mar 25 17:59:38 2015
@@ -242,7 +242,7 @@ Latest release: <strong>0.60.0-incubatin
 
 <p>appConf.json allows you to pass in arbitrary set of configuration that 
Slider will forward to the application component instances.</p>
 <h2 id="variable-naming-convention">Variable naming convention</h2>
-<p>In order to understand how the naming convention work, lets look at how the 
config is passed on to component commands. Slider agent recevies a structured 
bag of commands as input for all commands, INSTALL, CONFIGURE, START, etc. The 
command includes a section "configuration" which has config properties arranged 
into named property bags.</p>
+<p>In order to understand how the naming convention works, lets look at how 
the config is passed on to component commands. Slider agent recevies a 
structured bag of commands as input for all commands, INSTALL, CONFIGURE, 
START, etc. The command includes a section "configuration" which has config 
properties arranged into named property bags.</p>
 <ul>
 <li>Variables of the form <code>site.xx.yy</code> translates to variables by 
the name <code>yy</code> within the group <code>xx</code> and are typically 
converted to site config files by the name <code>xx</code> containing variable 
<code>yy</code>. For example, 
<code>"site.hbase-site.hbase.regionserver.port":""</code> will be sent to the 
Slider-Agent as <code>"hbase-site" : { "hbase.regionserver.port": ""}</code> 
and app definition scripts can access all variables under 
<code>hbase-site</code> as a single property bag.</li>
 <li>Similarly, <code>site.core-site.fs.defaultFS</code> allows you to pass in 
the default fs. <em>This specific variable is automatically made available by 
Slider but its shown here as an example.</em></li>
@@ -265,7 +265,7 @@ Latest release: <strong>0.60.0-incubatin
 <p><a href="application_definition.html">Application Definition</a> describes 
how to advertise arbitrary set of properties that are dynamically finalized 
when application is activated.</p>
 <p><strong>configuraing an app for ganglia metrics</strong></p>
 <p>There is no set guideline for doing so. How an application emits metrics 
and how the metrics are emitted to the right place is completely defined by the 
application. In the following example, we hso how HBase app is configured to 
emit metrics to a ganglia server.</p>
-<p>Ganglia server lifecycle is not controlled by the app instance. So the app 
instance only needs to know where to emit the metrics. This is achieved by 
three global variables</p>
+<p>Ganglia server lifecycle is not controlled by the app instance. So the app 
instance only needs to know where to emit the metrics. This is achieved through 
global variables</p>
 <ul>
 <li>"site.global.ganglia_enabled":"true"</li>
 <li>"site.global.ganglia_server_host": "gangliaserver.my.org"</li>

Modified: 
websites/staging/slider/trunk/content/docs/slider_specs/creating_app_definitions.html
==============================================================================
--- 
websites/staging/slider/trunk/content/docs/slider_specs/creating_app_definitions.html
 (original)
+++ 
websites/staging/slider/trunk/content/docs/slider_specs/creating_app_definitions.html
 Wed Mar 25 17:59:38 2015
@@ -263,10 +263,10 @@ Latest release: <strong>0.60.0-incubatin
 
 
 <p>Sample <strong>resources-default.json</strong> and 
<strong>appConfig-default.json</strong> files are also included in the 
enlistment. These are samples and are typically tested on one node test 
installations. These files are not used during the create commmand, rather the 
files provided as input parameter are the ones that are used. <em>So you can 
leave these files as is in the package.</em></p>
-<h3 id="-template-appconfigjson">--template appConfig.json</h3>
+<h3 id="-template-appconfigjson"><code>--template appConfig.json</code></h3>
 <p>An appConfig.json contains the application configuration. See <a 
href="application_instance_configuration.html">Specifications 
InstanceConfiguration</a> for details on how to create a template config file. 
The enlistment includes sample config files for HBase, Accumulo, and Storm.</p>
-<h3 id="-resources-resourcesjson">--resources resources.json</h3>
-<p>Resource specification is an input to Slider to specify the Yarn resource 
needs for each component type that belong to the application. <a 
href="resource_specification.html">Specification of Resources</a> describes how 
to write a resource config json file. The enlistment includes sample config 
files for HBase, Accumulo, and Storm.</p>
+<h3 id="-resources-resourcesjson"><code>--resources resources.json</code></h3>
+<p>Resource specification is an input to Slider to specify the Yarn resource 
needs for each component type that belong to the application. <a 
href="/docs/configuration/resource.html">Specification of Resources</a> 
describes how to write a resource config json file. The enlistment includes 
sample config files for HBase, Accumulo, and Storm.</p>
 <h2 id="scripting-for-apppackage">Scripting for AppPackage</h2>
 <p>Refer to <a href="writing_app_command_scripts">App Command Scripts</a> for 
details on how to write scripts for a AppPackage. These scripts are in the 
package/script folder within the AppPackage. <em>Use the checked in samples for 
HBase/Storm/Accumulo as reference for script development.</em></p>
   </div>

Modified: 
websites/staging/slider/trunk/content/docs/slider_specs/hello_world_slider_app.html
==============================================================================
--- 
websites/staging/slider/trunk/content/docs/slider_specs/hello_world_slider_app.html
 (original)
+++ 
websites/staging/slider/trunk/content/docs/slider_specs/hello_world_slider_app.html
 Wed Mar 25 17:59:38 2015
@@ -260,7 +260,8 @@ Latest release: <strong>0.60.0-incubatin
 
 
 <h2 id="step-3-create-a-default-resources-file-resourcesjson">Step 3: Create a 
default resources file (resources.json)</h2>
-<p>By default all resources.json file must include slider-appmaster. Add one 
more entry for the component MEMCACHED and assign a unique priority and default 
number of instances. Ensure, that a suitable default value is provided for 
yarn.memory. Additional details are available <a 
href="/docs/slider_specs/resource_specification.html">here</a>.</p>
+<p>By default all <code>resources.json</code> files must include a 
<code>slider-appmaster</code> component 
+Add one more entry for the component <code>MEMCACHED</code> and assign a 
unique priority and default number of instances. Ensure, that a suitable 
default value is provided for yarn.memory. Additional details are available <a 
href="/docs/configuration/resource.html">here</a>).</p>
 <div class="codehilite"><pre><span class="p">{</span>
   &quot;<span class="n">schema</span>&quot; <span class="p">:</span> 
&quot;<span class="n">http</span><span class="p">:</span><span 
class="o">//</span><span class="n">example</span><span class="p">.</span><span 
class="n">org</span><span class="o">/</span><span 
class="n">specification</span><span class="o">/</span><span 
class="n">v2</span><span class="p">.</span>0<span 
class="p">.</span>0&quot;<span class="p">,</span>
   &quot;<span class="n">metadata</span>&quot; <span class="p">:</span> <span 
class="p">{</span>

Modified: websites/staging/slider/trunk/content/docs/slider_specs/index.html
==============================================================================
--- websites/staging/slider/trunk/content/docs/slider_specs/index.html 
(original)
+++ websites/staging/slider/trunk/content/docs/slider_specs/index.html Wed Mar 
25 17:59:38 2015
@@ -199,19 +199,20 @@ Latest release: <strong>0.60.0-incubatin
 </ul>
 <h2 id="specifications">Specifications</h2>
 <p>Refer to <a href="hello_world_slider_app.html">Creating a Slider package 
for Memcached</a> for a quick over view of how to write a Slider app.</p>
-<p>Packaging enhancements: <a href="simple_pkg.html">Simplified Packaging</a> 
describes a simplified version of packaging that Slider supports for 
applications that do not need full capability of a Slider application package. 
<em>The work is available in the develop branch and is targeted for the next 
relase.</em></p>
-<p>The entry points to leverage Slider are:</p>
+<p>Packaging enhancements: <a href="simple_pkg.html">Simplified Packaging</a> 
describes a simplified version of packaging that Slider
+supports for applications that do not need full capability of a Slider 
application package.
+<em>The work is available in the develop branch and is targeted for the next 
relase.</em></p>
+<p>The entry points to use Slider are:</p>
 <ul>
 <li><a href="application_needs.html">Application Needs</a> What it takes to be 
deployable by Slider. </li>
 <li><a href="creating_app_definitions.html">Slider AppPackage</a> Overview of 
how to create an Slider AppPackage.</li>
 <li><a href="application_package.html">Specifications for AppPackage</a> 
Describes the structure of an AppPackage</li>
-<li><a href="application_definition.html">Specifications for Application 
Definition</a> How to write metainfo.xml?</li>
-<li><a href="resource_specification.html">Specification of Resources</a> How 
to write a resource spec for an app?</li>
-<li><a href="application_instance_configuration.html">Specifications 
InstanceConfiguration</a> How to write a template config for an app?</li>
+<li><a href="application_definition.html">Specifications for Application 
Definition</a> How to write metainfo.xml</li>
+<li><a href="/docs/configuration/resource.html">Specification of Resources</a> 
How to write a resource spec for an app/</li>
+<li><a href="application_instance_configuration.html">Specifications 
InstanceConfiguration</a> How to write a template config for an app</li>
 <li><a href="application_configuration.html">Specifications for 
Configuration</a> Default application configuration</li>
 <li><a href="specifying_exports.html">Specifying Exports</a> How to specify 
exports for an application?</li>
 <li><a href="/developing/index.html">Documentation for "General Developer 
Guidelines"</a></li>
-<li><a href="chaosmonkey.html">Configuring the Slider Chaos Monkey</a></li>
 </ul>
   </div>
 


Reply via email to