falcon-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From pall...@apache.org
Subject [13/51] [partial] falcon git commit: Copying over falcon site related files to git asf-site
Date Tue, 01 Mar 2016 07:22:16 GMT
http://git-wip-us.apache.org/repos/asf/falcon/blob/8609ffd6/site/0.6.1/InstallationSteps.html
----------------------------------------------------------------------
diff --git a/site/0.6.1/InstallationSteps.html b/site/0.6.1/InstallationSteps.html
new file mode 100644
index 0000000..06932cd
--- /dev/null
+++ b/site/0.6.1/InstallationSteps.html
@@ -0,0 +1,401 @@
+<!DOCTYPE html>
+<!--
+ | Generated by Apache Maven Doxia at 2015-11-30
+ | Rendered using Apache Maven Fluido Skin 1.3.0
+-->
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+  <head>
+    <meta charset="UTF-8" />
+    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
+    <meta name="Date-Revision-yyyymmdd" content="20151130" />
+    <meta http-equiv="Content-Language" content="en" />
+    <title>Falcon - Building & Installing Falcon</title>
+    <link rel="stylesheet" href="./css/apache-maven-fluido-1.3.0.min.css" />
+    <link rel="stylesheet" href="./css/site.css" />
+    <link rel="stylesheet" href="./css/print.css" media="print" />
+
+      
+    <script type="text/javascript" src="./js/apache-maven-fluido-1.3.0.min.js"></script>
+
+                          
+        
+<script type="text/javascript">$( document ).ready( function() { $( '.carousel' ).carousel( { interval: 3500 } ) } );</script>
+          
+            </head>
+        <body class="topBarDisabled">
+          
+                        
+                    
+    
+        <div class="container">
+          <div id="banner">
+        <div class="pull-left">
+                                <div id="bannerLeft">
+                                                                                                <img src="images/falcon-logo.png"  alt="Apache Falcon" width="200px" height="45px"/>
+                </div>
+                      </div>
+        <div class="pull-right">  </div>
+        <div class="clear"><hr/></div>
+      </div>
+
+      <div id="breadcrumbs">
+        <ul class="breadcrumb">
+                
+                    
+                              <li class="">
+                    <a href="index.html" title="Falcon">
+        Falcon</a>
+        </li>
+      <li class="divider ">/</li>
+        <li class="">Building & Installing Falcon</li>
+        
+                
+                    
+                  <li id="publishDate" class="pull-right">Last Published: 2015-11-30</li> <li class="divider pull-right">|</li>
+              <li id="projectVersion" class="pull-right">Version: 0.6.1</li>
+            
+                            </ul>
+      </div>
+
+      
+                
+        <div id="bodyColumn" >
+                                  
+            <div class="section">
+<h3>Building &amp; Installing Falcon<a name="Building__Installing_Falcon"></a></h3></div>
+<div class="section">
+<h4>Building Falcon<a name="Building_Falcon"></a></h4>
+<div class="source">
+<pre>
+You would need the following installed to build Falcon
+
+* JDK 1.7
+* Maven 3.x
+
+git clone https://git-wip-us.apache.org/repos/asf/falcon.git falcon
+
+cd falcon
+
+export MAVEN_OPTS=&quot;-Xmx1024m -XX:MaxPermSize=256m -noverify&quot; &amp;&amp; mvn clean install
+
+[optionally -Dhadoop.version=&lt;&lt;hadoop.version&gt;&gt; can be appended to build for a specific version of hadoop]
+*Note:* Falcon drops support for Hadoop-1 and only supports Hadoop-2 from Falcon 0.6 onwards
+[optionally -Doozie.version=&lt;&lt;oozie version&gt;&gt; can be appended to build with a specific version of oozie.
+Oozie versions &gt;= 4 are supported]
+Falcon build with JDK 1.7 using -noverify option
+
+
+</pre></div>
+<p>Once the build successfully completes, artifacts can be packaged for deployment. The package can be built in embedded or distributed mode.</p>
+<p><b>Embedded Mode</b></p>
+<div class="source">
+<pre>
+
+mvn clean assembly:assembly -DskipTests -DskipCheck=true
+
+
+</pre></div>
+<p>Tar can be found in {project dir}/target/apache-falcon-${project.version}-bin.tar.gz</p>
+<p>Tar is structured as follows</p>
+<div class="source">
+<pre>
+
+|- bin
+   |- falcon
+   |- falcon-start
+   |- falcon-stop
+   |- falcon-config.sh
+   |- service-start.sh
+   |- service-stop.sh
+|- conf
+   |- startup.properties
+   |- runtime.properties
+   |- client.properties
+   |- log4j.xml
+   |- falcon-env.sh
+|- docs
+|- client
+   |- lib (client support libs)
+|- server
+   |- webapp
+      |- falcon.war
+|- hadooplibs
+|- README
+|- NOTICE.txt
+|- LICENSE.txt
+|- DISCLAIMER.txt
+|- CHANGES.txt
+
+</pre></div>
+<p><b>Distributed Mode</b></p>
+<div class="source">
+<pre>
+
+mvn clean assembly:assembly -DskipTests -DskipCheck=true -Pdistributed,hadoop-2
+
+
+</pre></div>
+<p>Tar can be found in {project dir}/target/apache-falcon-distributed-${project.version}-server.tar.gz</p>
+<p>Tar is structured as follows</p>
+<div class="source">
+<pre>
+
+|- bin
+   |- falcon
+   |- falcon-start
+   |- falcon-stop
+   |- falcon-config.sh
+   |- service-start.sh
+   |- service-stop.sh
+   |- prism-stop
+   |- prism-start
+|- conf
+   |- startup.properties
+   |- runtime.properties
+   |- client.properties
+   |- log4j.xml
+   |- falcon-env.sh
+|- docs
+|- client
+   |- lib (client support libs)
+|- server
+   |- webapp
+      |- falcon.war
+      |- prism.war
+|- hadooplibs
+|- README
+|- NOTICE.txt
+|- LICENSE.txt
+|- DISCLAIMER.txt
+|- CHANGES.txt
+
+</pre></div></div>
+<div class="section">
+<h4>Installing &amp; running Falcon<a name="Installing__running_Falcon"></a></h4>
+<p><b>Installing falcon</b></p>
+<div class="source">
+<pre>
+tar -xzvf {falcon package}
+cd falcon-distributed-${project.version} or falcon-${project.version}
+
+</pre></div>
+<p><b>Configuring Falcon</b></p>
+<p>By default config directory used by falcon is {package dir}/conf. To override this set environment variable FALCON_CONF to the path of the conf dir.</p>
+<p>falcon-env.sh has been added to the falcon conf. This file can be used to set various environment variables that you need for you services. In addition you can set any other environment variables you might need. This file will be sourced by falcon scripts before any commands are executed. The following environment variables are available to set.</p>
+<div class="source">
+<pre>
+# The java implementation to use. If JAVA_HOME is not found we expect java and jar to be in path
+#export JAVA_HOME=
+
+# any additional java opts you want to set. This will apply to both client and server operations
+#export FALCON_OPTS=
+
+# any additional java opts that you want to set for client only
+#export FALCON_CLIENT_OPTS=
+
+# java heap size we want to set for the client. Default is 1024MB
+#export FALCON_CLIENT_HEAP=
+
+# any additional opts you want to set for prism service.
+#export FALCON_PRISM_OPTS=
+
+# java heap size we want to set for the prism service. Default is 1024MB
+#export FALCON_PRISM_HEAP=
+
+# any additional opts you want to set for falcon service.
+#export FALCON_SERVER_OPTS=
+
+# java heap size we want to set for the falcon server. Default is 1024MB
+#export FALCON_SERVER_HEAP=
+
+# What is is considered as falcon home dir. Default is the base location of the installed software
+#export FALCON_HOME_DIR=
+
+# Where log files are stored. Default is logs directory under the base install location
+#export FALCON_LOG_DIR=
+
+# Where pid files are stored. Default is logs directory under the base install location
+#export FALCON_PID_DIR=
+
+# where the falcon active mq data is stored. Default is logs/data directory under the base install location
+#export FALCON_DATA_DIR=
+
+# Where do you want to expand the war file. By Default it is in /server/webapp dir under the base install dir.
+#export FALCON_EXPANDED_WEBAPP_DIR=
+
+</pre></div>
+<p><b>Configuring Monitoring plugin to register catalog partitions</b> Falcon comes with a monitoring plugin that registers catalog partition. This comes in really handy during migration from filesystem based feeds to hcatalog based feeds. This plugin enables the user to de-couple the partition registration and assume that all partitions are already on hcatalog even before the migration, simplifying the hcatalog migration.</p>
+<p>By default this plugin is disabled. To enable this plugin and leverage the feature, there are 3 pre-requisites:</p>
+<div class="source">
+<pre>
+In {package dir}/conf/startup.properties, add
+*.workflow.execution.listeners=org.apache.falcon.catalog.CatalogPartitionHandler
+
+In the cluster definition, ensure registry endpoint is defined.
+Ex:
+&lt;interface type=&quot;registry&quot; endpoint=&quot;thrift://localhost:1109&quot; version=&quot;0.13.3&quot;/&gt;
+
+In the feed definition, ensure the corresponding catalog table is mentioned in feed-properties
+Ex:
+&lt;properties&gt;
+    &lt;property name=&quot;catalog.table&quot; value=&quot;catalog:default:in_table#year={YEAR};month={MONTH};day={DAY};hour={HOUR};minute={MINUTE}&quot;/&gt;
+&lt;/properties&gt;
+
+</pre></div>
+<p><b>NOTE for Mac OS users</b></p>
+<div class="source">
+<pre>
+If you are using a Mac OS, you will need to configure the FALCON_SERVER_OPTS (explained above).
+
+In  {package dir}/conf/falcon-env.sh uncomment the following line
+#export FALCON_SERVER_OPTS=
+
+and change it to look as below
+export FALCON_SERVER_OPTS=&quot;-Djava.awt.headless=true -Djava.security.krb5.realm= -Djava.security.krb5.kdc=&quot;
+
+</pre></div>
+<p><b>Starting Falcon Server</b></p>
+<div class="source">
+<pre>
+bin/falcon-start [-port &lt;port&gt;]
+
+</pre></div>
+<p>By default, * If falcon.enableTLS is set to true explicitly or not set at all, falcon starts at port 15443 on <a class="externalLink" href="https://">https://</a> by default. * If falcon.enableTLS is set to false explicitly, falcon starts at port 15000 on <a class="externalLink" href="http://.">http://.</a> * To change the port, use -port option.</p>
+<ul>
+<li>If falcon.enableTLS is not set explicitly, port that ends with 443 will automatically put falcon on <a class="externalLink" href="https://.">https://.</a> Any other port will put falcon on <a class="externalLink" href="http://.">http://.</a></li></ul>* falcon server starts embedded active mq. To control this behaviour, set the following system properties using -D option in environment variable FALCON_OPTS:
+<ul>
+<li>falcon.embeddedmq=&lt;true/false&gt; - Should server start embedded active mq, default true</li>
+<li>falcon.embeddedmq.port=&lt;port&gt; - Port for embedded active mq, default 61616</li>
+<li>falcon.embeddedmq.data=&lt;path&gt; - Data path for embedded active mq, default {package dir}/logs/data</li></ul>* falcon server starts with conf from {package dir}/conf. To override this (to use the same conf with multiple falcon upgrades), set environment variable FALCON_CONF to the path of conf dir
+<p><b><i>Adding Extension Libraries</i></b> Library extensions allows users to add custom libraries to entity lifecycles such as feed retention, feed replication and process execution. This is useful for usecases such as adding filesystem extensions. To enable this, add the following configs to startup.properties: *.libext.paths=&lt;paths to be added to all entity lifecycles&gt; *.libext.feed.paths=&lt;paths to be added to all feed lifecycles&gt; *.libext.feed.retentions.paths=&lt;paths to be added to feed retention workflow&gt; *.libext.feed.replication.paths=&lt;paths to be added to feed replication workflow&gt; *.libext.process.paths=&lt;paths to be added to process workflow&gt;</p>
+<p>The configured jars are added to falcon classpath and the corresponding workflows</p>
+<p><b>Starting Prism</b></p>
+<div class="source">
+<pre>
+bin/prism-start [-port &lt;port&gt;]
+
+</pre></div>
+<p>By default,  * prism server starts at port 16443. To change the port, use -port option</p>
+<ul>
+<li>falcon.enableTLS can be set to true or false explicitly to enable SSL, if not port that end with 443 will automatically put prism on <a class="externalLink" href="https://">https://</a></li></ul>* prism starts with conf from {package dir}/conf. To override this (to use the same conf with multiple prism upgrades), set environment variable FALCON_CONF to the path of conf dir
+<p><b>Using Falcon</b></p>
+<div class="source">
+<pre>
+bin/falcon admin -version
+Falcon server build version: {Version:&quot;0.3-SNAPSHOT-rd7e2be9afa2a5dc96acd1ec9e325f39c6b2f17f7&quot;,Mode:&quot;embedded&quot;}
+
+----
+
+bin/falcon help
+(for more details about falcon cli usage)
+
+</pre></div>
+<p><b>Dashboard</b></p>
+<p>Once falcon / prism is started, you can view the status of falcon entities using the Web-based dashboard. The web UI works in both distributed and embedded mode. You can open your browser at the corresponding port to use the web UI.</p>
+<p>Falcon dashboard makes the REST api calls as user &quot;falcon-dashboard&quot;. If this user does not exist on your falcon and oozie servers, please create the user.</p>
+<div class="source">
+<pre>
+## create user.
+[root@falconhost ~] useradd -U -m falcon-dashboard -G users
+
+## verify user is created with membership in correct groups.
+[root@falconhost ~] groups falcon-dashboard
+falcon-dashboard : falcon-dashboard users
+[root@falconhost ~]
+
+</pre></div>
+<p><b>Stopping Falcon Server</b></p>
+<div class="source">
+<pre>
+bin/falcon-stop
+
+</pre></div>
+<p><b>Stopping Prism</b></p>
+<div class="source">
+<pre>
+bin/prism-stop
+
+</pre></div></div>
+<div class="section">
+<h4>Preparing Oozie and Falcon packages for deployment<a name="Preparing_Oozie_and_Falcon_packages_for_deployment"></a></h4>
+<div class="source">
+<pre>
+cd &lt;&lt;project home&gt;&gt;
+src/bin/package.sh &lt;&lt;hadoop-version&gt;&gt; &lt;&lt;oozie-version&gt;&gt;
+
+&gt;&gt; ex. src/bin/package.sh 1.1.2 4.0.1 or src/bin/package.sh 0.20.2-cdh3u5 4.0.1
+&gt;&gt; ex. src/bin/package.sh 2.5.0 4.0.0
+&gt;&gt; Falcon package is available in &lt;&lt;falcon home&gt;&gt;/target/apache-falcon-&lt;&lt;version&gt;&gt;-bin.tar.gz
+&gt;&gt; Oozie package is available in &lt;&lt;falcon home&gt;&gt;/target/oozie-4.0.1-distro.tar.gz
+
+</pre></div></div>
+<div class="section">
+<h4>Running Examples using embedded package<a name="Running_Examples_using_embedded_package"></a></h4>
+<div class="source">
+<pre>
+bin/falcon-start
+
+</pre></div>
+<p>Make sure the hadoop and oozie endpoints are according to your setup in examples/entity/filesystem/standalone-cluster.xml The cluster locations,staging and working dirs, MUST be created prior to submitting a cluster entity to Falcon. <b>staging</b> must have 777 permissions and the parent dirs must have execute permissions <b>working</b> must have 755 permissions and the parent dirs must have execute permissions</p>
+<div class="source">
+<pre>
+bin/falcon entity -submit -type cluster -file examples/entity/filesystem/standalone-cluster.xml
+
+</pre></div>
+<p>Submit input and output feeds:</p>
+<div class="source">
+<pre>
+bin/falcon entity -submit -type feed -file examples/entity/filesystem/in-feed.xml
+bin/falcon entity -submit -type feed -file examples/entity/filesystem/out-feed.xml
+
+</pre></div>
+<p>Set-up workflow for the process:</p>
+<div class="source">
+<pre>
+hadoop fs -put examples/app /
+
+</pre></div>
+<p>Submit and schedule the process:</p>
+<div class="source">
+<pre>
+bin/falcon entity -submitAndSchedule -type process -file examples/entity/filesystem/oozie-mr-process.xml
+bin/falcon entity -submitAndSchedule -type process -file examples/entity/filesystem/pig-process.xml
+
+</pre></div>
+<p>Generate input data:</p>
+<div class="source">
+<pre>
+examples/data/generate.sh &lt;&lt;hdfs endpoint&gt;&gt;
+
+</pre></div>
+<p>Get status of instances:</p>
+<div class="source">
+<pre>
+bin/falcon instance -status -type process -name oozie-mr-process -start 2013-11-15T00:05Z -end 2013-11-15T01:00Z
+
+</pre></div>
+<p>HCat based example entities are in examples/entity/hcat.</p></div>
+                  </div>
+          </div>
+
+    <hr/>
+
+    <footer>
+            <div class="container">
+              <div class="row span12">Copyright &copy;                    2013-2015
+                        <a href="http://www.apache.org">Apache Software Foundation</a>.
+            All Rights Reserved.      
+                    
+      </div>
+
+                          
+                <p id="poweredBy" class="pull-right">
+                          <a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy">
+        <img class="builtBy" alt="Built by Maven" src="./images/logos/maven-feather.png" />
+      </a>
+              </p>
+        
+                </div>
+    </footer>
+  </body>
+</html>

http://git-wip-us.apache.org/repos/asf/falcon/blob/8609ffd6/site/0.6.1/MigrationInstructions.html
----------------------------------------------------------------------
diff --git a/site/0.6.1/MigrationInstructions.html b/site/0.6.1/MigrationInstructions.html
new file mode 100644
index 0000000..7c37712
--- /dev/null
+++ b/site/0.6.1/MigrationInstructions.html
@@ -0,0 +1,100 @@
+<!DOCTYPE html>
+<!--
+ | Generated by Apache Maven Doxia at 2015-11-30
+ | Rendered using Apache Maven Fluido Skin 1.3.0
+-->
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+  <head>
+    <meta charset="UTF-8" />
+    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
+    <meta name="Date-Revision-yyyymmdd" content="20151130" />
+    <meta http-equiv="Content-Language" content="en" />
+    <title>Falcon - Migration Instructions</title>
+    <link rel="stylesheet" href="./css/apache-maven-fluido-1.3.0.min.css" />
+    <link rel="stylesheet" href="./css/site.css" />
+    <link rel="stylesheet" href="./css/print.css" media="print" />
+
+      
+    <script type="text/javascript" src="./js/apache-maven-fluido-1.3.0.min.js"></script>
+
+                          
+        
+<script type="text/javascript">$( document ).ready( function() { $( '.carousel' ).carousel( { interval: 3500 } ) } );</script>
+          
+            </head>
+        <body class="topBarDisabled">
+          
+                        
+                    
+    
+        <div class="container">
+          <div id="banner">
+        <div class="pull-left">
+                                <div id="bannerLeft">
+                                                                                                <img src="images/falcon-logo.png"  alt="Apache Falcon" width="200px" height="45px"/>
+                </div>
+                      </div>
+        <div class="pull-right">  </div>
+        <div class="clear"><hr/></div>
+      </div>
+
+      <div id="breadcrumbs">
+        <ul class="breadcrumb">
+                
+                    
+                              <li class="">
+                    <a href="index.html" title="Falcon">
+        Falcon</a>
+        </li>
+      <li class="divider ">/</li>
+        <li class="">Migration Instructions</li>
+        
+                
+                    
+                  <li id="publishDate" class="pull-right">Last Published: 2015-11-30</li> <li class="divider pull-right">|</li>
+              <li id="projectVersion" class="pull-right">Version: 0.6.1</li>
+            
+                            </ul>
+      </div>
+
+      
+                
+        <div id="bodyColumn" >
+                                  
+            <div class="section">
+<h2>Migration Instructions<a name="Migration_Instructions"></a></h2></div>
+<div class="section">
+<h3>Migrate from 0.5-incubating to 0.6-incubating<a name="Migrate_from_0.5-incubating_to_0.6-incubating"></a></h3>
+<p>This is a placeholder wiki for migration instructions from falcon 0.5-incubating to 0.6-incubating.</p></div>
+<div class="section">
+<h4>Update Entities<a name="Update_Entities"></a></h4></div>
+<div class="section">
+<h4>Change cluster dir permissions<a name="Change_cluster_dir_permissions"></a></h4></div>
+<div class="section">
+<h4>Enable/Disable TLS<a name="EnableDisable_TLS"></a></h4></div>
+<div class="section">
+<h4>Authorization<a name="Authorization"></a></h4></div>
+                  </div>
+          </div>
+
+    <hr/>
+
+    <footer>
+            <div class="container">
+              <div class="row span12">Copyright &copy;                    2013-2015
+                        <a href="http://www.apache.org">Apache Software Foundation</a>.
+            All Rights Reserved.      
+                    
+      </div>
+
+                          
+                <p id="poweredBy" class="pull-right">
+                          <a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy">
+        <img class="builtBy" alt="Built by Maven" src="./images/logos/maven-feather.png" />
+      </a>
+              </p>
+        
+                </div>
+    </footer>
+  </body>
+</html>

http://git-wip-us.apache.org/repos/asf/falcon/blob/8609ffd6/site/0.6.1/OnBoarding.html
----------------------------------------------------------------------
diff --git a/site/0.6.1/OnBoarding.html b/site/0.6.1/OnBoarding.html
new file mode 100644
index 0000000..c16d3c7
--- /dev/null
+++ b/site/0.6.1/OnBoarding.html
@@ -0,0 +1,368 @@
+<!DOCTYPE html>
+<!--
+ | Generated by Apache Maven Doxia at 2015-11-30
+ | Rendered using Apache Maven Fluido Skin 1.3.0
+-->
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+  <head>
+    <meta charset="UTF-8" />
+    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
+    <meta name="Date-Revision-yyyymmdd" content="20151130" />
+    <meta http-equiv="Content-Language" content="en" />
+    <title>Falcon - Contents</title>
+    <link rel="stylesheet" href="./css/apache-maven-fluido-1.3.0.min.css" />
+    <link rel="stylesheet" href="./css/site.css" />
+    <link rel="stylesheet" href="./css/print.css" media="print" />
+
+      
+    <script type="text/javascript" src="./js/apache-maven-fluido-1.3.0.min.js"></script>
+
+                          
+        
+<script type="text/javascript">$( document ).ready( function() { $( '.carousel' ).carousel( { interval: 3500 } ) } );</script>
+          
+            </head>
+        <body class="topBarDisabled">
+          
+                        
+                    
+    
+        <div class="container">
+          <div id="banner">
+        <div class="pull-left">
+                                <div id="bannerLeft">
+                                                                                                <img src="images/falcon-logo.png"  alt="Apache Falcon" width="200px" height="45px"/>
+                </div>
+                      </div>
+        <div class="pull-right">  </div>
+        <div class="clear"><hr/></div>
+      </div>
+
+      <div id="breadcrumbs">
+        <ul class="breadcrumb">
+                
+                    
+                              <li class="">
+                    <a href="index.html" title="Falcon">
+        Falcon</a>
+        </li>
+      <li class="divider ">/</li>
+        <li class="">Contents</li>
+        
+                
+                    
+                  <li id="publishDate" class="pull-right">Last Published: 2015-11-30</li> <li class="divider pull-right">|</li>
+              <li id="projectVersion" class="pull-right">Version: 0.6.1</li>
+            
+                            </ul>
+      </div>
+
+      
+                
+        <div id="bodyColumn" >
+                                  
+            <div class="section">
+<h3>Contents<a name="Contents"></a></h3>
+<p></p>
+<ul>
+<li><a href="#Onboarding Steps">Onboarding Steps</a></li>
+<li><a href="#Sample Pipeline">Sample Pipeline</a></li>
+<li><a href="./HiveIntegration.html">Hive Examples</a></li></ul></div>
+<div class="section">
+<h4>Onboarding Steps<a name="Onboarding_Steps"></a></h4>
+<p></p>
+<ul>
+<li>Create cluster definition for the cluster, specifying name node, job tracker, workflow engine endpoint, messaging endpoint. Refer to <a href="./EntitySpecification.html">cluster definition</a> for details.</li>
+<li>Create Feed definitions for each of the input and output specifying frequency, data path, ownership. Refer to <a href="./EntitySpecification.html">feed definition</a> for details.</li>
+<li>Create Process definition for your job. Process defines configuration for the workflow job. Important attributes are frequency, inputs/outputs and workflow path. Refer to <a href="./EntitySpecification.html">process definition</a> for process details.</li>
+<li>Define workflow for your job using the workflow engine(only oozie is supported as of now). Refer <a class="externalLink" href="http://oozie.apache.org/docs/3.1.3-incubating/WorkflowFunctionalSpec.html">Oozie Workflow Specification</a>. The libraries required for the workflow should be available in lib folder in workflow path.</li>
+<li>Set-up workflow definition, libraries and referenced scripts on hadoop.</li>
+<li>Submit cluster definition</li>
+<li>Submit and schedule feed and process definitions</li></ul></div>
+<div class="section">
+<h4>Sample Pipeline<a name="Sample_Pipeline"></a></h4></div>
+<div class="section">
+<h5>Cluster   <a name="Cluster"></a></h5>
+<p>Cluster definition that contains end points for name node, job tracker, oozie and jms server: The cluster locations MUST be created prior to submitting a cluster entity to Falcon. <b>staging</b> must have 777 permissions and the parent dirs must have execute permissions <b>working</b> must have 755 permissions and the parent dirs must have execute permissions</p>
+<div class="source">
+<pre>
+&lt;?xml version=&quot;1.0&quot;?&gt;
+&lt;!--
+    Cluster configuration
+  --&gt;
+&lt;cluster colo=&quot;ua2&quot; description=&quot;&quot; name=&quot;corp&quot; xmlns=&quot;uri:falcon:cluster:0.1&quot;
+    xmlns:xsi=&quot;http://www.w3.org/2001/XMLSchema-instance&quot;&gt;    
+    &lt;interfaces&gt;
+        &lt;interface type=&quot;readonly&quot; endpoint=&quot;hftp://name-node.com:50070&quot; version=&quot;2.5.0&quot; /&gt;
+
+        &lt;interface type=&quot;write&quot; endpoint=&quot;hdfs://name-node.com:54310&quot; version=&quot;2.5.0&quot; /&gt;
+
+        &lt;interface type=&quot;execute&quot; endpoint=&quot;job-tracker:54311&quot; version=&quot;2.5.0&quot; /&gt;
+
+        &lt;interface type=&quot;workflow&quot; endpoint=&quot;http://oozie.com:11000/oozie/&quot; version=&quot;4.0.1&quot; /&gt;
+
+        &lt;interface type=&quot;messaging&quot; endpoint=&quot;tcp://jms-server.com:61616?daemon=true&quot; version=&quot;5.1.6&quot; /&gt;
+    &lt;/interfaces&gt;
+
+    &lt;locations&gt;
+        &lt;location name=&quot;staging&quot; path=&quot;/projects/falcon/staging&quot; /&gt;
+        &lt;location name=&quot;temp&quot; path=&quot;/tmp&quot; /&gt;
+        &lt;location name=&quot;working&quot; path=&quot;/projects/falcon/working&quot; /&gt;
+    &lt;/locations&gt;
+&lt;/cluster&gt;
+
+</pre></div></div>
+<div class="section">
+<h5>Input Feed<a name="Input_Feed"></a></h5>
+<p>Hourly feed that defines feed path, frequency, ownership and validity:</p>
+<div class="source">
+<pre>
+&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
+&lt;!--
+    Hourly sample input data
+  --&gt;
+
+&lt;feed description=&quot;sample input data&quot; name=&quot;SampleInput&quot; xmlns=&quot;uri:falcon:feed:0.1&quot;
+    xmlns:xsi=&quot;http://www.w3.org/2001/XMLSchema-instance&quot;&gt;
+    &lt;groups&gt;group&lt;/groups&gt;
+
+    &lt;frequency&gt;hours(1)&lt;/frequency&gt;
+
+    &lt;late-arrival cut-off=&quot;hours(6)&quot; /&gt;
+
+    &lt;clusters&gt;
+        &lt;cluster name=&quot;corp&quot; type=&quot;source&quot;&gt;
+            &lt;validity start=&quot;2009-01-01T00:00Z&quot; end=&quot;2099-12-31T00:00Z&quot; timezone=&quot;UTC&quot; /&gt;
+            &lt;retention limit=&quot;months(24)&quot; action=&quot;delete&quot; /&gt;
+        &lt;/cluster&gt;
+    &lt;/clusters&gt;
+
+    &lt;locations&gt;
+        &lt;location type=&quot;data&quot; path=&quot;/projects/bootcamp/data/${YEAR}-${MONTH}-${DAY}-${HOUR}/SampleInput&quot; /&gt;
+        &lt;location type=&quot;stats&quot; path=&quot;/projects/bootcamp/stats/SampleInput&quot; /&gt;
+        &lt;location type=&quot;meta&quot; path=&quot;/projects/bootcamp/meta/SampleInput&quot; /&gt;
+    &lt;/locations&gt;
+
+    &lt;ACL owner=&quot;suser&quot; group=&quot;users&quot; permission=&quot;0755&quot; /&gt;
+
+    &lt;schema location=&quot;/none&quot; provider=&quot;none&quot; /&gt;
+&lt;/feed&gt;
+
+</pre></div></div>
+<div class="section">
+<h5>Output Feed<a name="Output_Feed"></a></h5>
+<p>Daily feed that defines feed path, frequency, ownership and validity:</p>
+<div class="source">
+<pre>
+&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
+&lt;!--
+    Daily sample output data
+  --&gt;
+
+&lt;feed description=&quot;sample output data&quot; name=&quot;SampleOutput&quot; xmlns=&quot;uri:falcon:feed:0.1&quot;
+xmlns:xsi=&quot;http://www.w3.org/2001/XMLSchema-instance&quot;&gt;
+    &lt;groups&gt;group&lt;/groups&gt;
+
+    &lt;frequency&gt;days(1)&lt;/frequency&gt;
+
+    &lt;late-arrival cut-off=&quot;hours(6)&quot; /&gt;
+
+    &lt;clusters&gt;
+        &lt;cluster name=&quot;corp&quot; type=&quot;source&quot;&gt;
+            &lt;validity start=&quot;2009-01-01T00:00Z&quot; end=&quot;2099-12-31T00:00Z&quot; timezone=&quot;UTC&quot; /&gt;
+            &lt;retention limit=&quot;months(24)&quot; action=&quot;delete&quot; /&gt;
+        &lt;/cluster&gt;
+    &lt;/clusters&gt;
+
+    &lt;locations&gt;
+        &lt;location type=&quot;data&quot; path=&quot;/projects/bootcamp/output/${YEAR}-${MONTH}-${DAY}/SampleOutput&quot; /&gt;
+        &lt;location type=&quot;stats&quot; path=&quot;/projects/bootcamp/stats/SampleOutput&quot; /&gt;
+        &lt;location type=&quot;meta&quot; path=&quot;/projects/bootcamp/meta/SampleOutput&quot; /&gt;
+    &lt;/locations&gt;
+
+    &lt;ACL owner=&quot;suser&quot; group=&quot;users&quot; permission=&quot;0755&quot; /&gt;
+
+    &lt;schema location=&quot;/none&quot; provider=&quot;none&quot; /&gt;
+&lt;/feed&gt;
+
+</pre></div></div>
+<div class="section">
+<h5>Process<a name="Process"></a></h5>
+<p>Sample process which runs daily at 6th hour on corp cluster. It takes one input - SampleInput for the previous day(24 instances). It generates one output - SampleOutput for previous day. The workflow is defined at /projects/bootcamp/workflow/workflow.xml. Any libraries available for the workflow should be at /projects/bootcamp/workflow/lib. The process also defines properties queueName, ssh.host, and fileTimestamp which are passed to the workflow. In addition, Falcon exposes the following properties to the workflow: nameNode, jobTracker(hadoop properties), input and output(Input/Output properties).</p>
+<div class="source">
+<pre>
+&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
+&lt;!--
+    Daily sample process. Runs at 6th hour every day. Input - last day's hourly data. Generates output for yesterday
+ --&gt;
+&lt;process name=&quot;SampleProcess&quot;&gt;
+    &lt;cluster name=&quot;corp&quot; /&gt;
+
+    &lt;frequency&gt;days(1)&lt;/frequency&gt;
+
+    &lt;validity start=&quot;2012-04-03T06:00Z&quot; end=&quot;2022-12-30T00:00Z&quot; timezone=&quot;UTC&quot; /&gt;
+
+    &lt;inputs&gt;
+        &lt;input name=&quot;input&quot; feed=&quot;SampleInput&quot; start=&quot;yesterday(0,0)&quot; end=&quot;today(-1,0)&quot; /&gt;
+    &lt;/inputs&gt;
+
+    &lt;outputs&gt;
+            &lt;output name=&quot;output&quot; feed=&quot;SampleOutput&quot; instance=&quot;yesterday(0,0)&quot; /&gt;
+    &lt;/outputs&gt;
+
+    &lt;properties&gt;
+        &lt;property name=&quot;queueName&quot; value=&quot;reports&quot; /&gt;
+        &lt;property name=&quot;ssh.host&quot; value=&quot;host.com&quot; /&gt;
+        &lt;property name=&quot;fileTimestamp&quot; value=&quot;${coord:formatTime(coord:nominalTime(), 'yyyy-MM-dd')}&quot; /&gt;
+    &lt;/properties&gt;
+
+    &lt;workflow engine=&quot;oozie&quot; path=&quot;/projects/bootcamp/workflow&quot; /&gt;
+
+    &lt;retry policy=&quot;backoff&quot; delay=&quot;minutes(5)&quot; attempts=&quot;3&quot; /&gt;
+    
+    &lt;late-process policy=&quot;exp-backoff&quot; delay=&quot;hours(1)&quot;&gt;
+        &lt;late-input input=&quot;input&quot; workflow-path=&quot;/projects/bootcamp/workflow/lateinput&quot; /&gt;
+    &lt;/late-process&gt;
+&lt;/process&gt;
+
+</pre></div></div>
+<div class="section">
+<h5>Oozie Workflow<a name="Oozie_Workflow"></a></h5>
+<p>The sample user workflow contains 3 actions:</p>
+<ul>
+<li>Pig action - Executes pig script /projects/bootcamp/workflow/script.pig</li>
+<li>concatenator - Java action that concatenates part files and generates a single file</li>
+<li>file upload - ssh action that gets the concatenated file from hadoop and sends the file to a remote host</li></ul>
+<div class="source">
+<pre>
+&lt;workflow-app xmlns=&quot;uri:oozie:workflow:0.2&quot; name=&quot;sample-wf&quot;&gt;
+        &lt;start to=&quot;pig&quot; /&gt;
+
+        &lt;action name=&quot;pig&quot;&gt;
+                &lt;pig&gt;
+                        &lt;job-tracker&gt;${jobTracker}&lt;/job-tracker&gt;
+                        &lt;name-node&gt;${nameNode}&lt;/name-node&gt;
+                        &lt;prepare&gt;
+                                &lt;delete path=&quot;${output}&quot;/&gt;
+                        &lt;/prepare&gt;
+                        &lt;configuration&gt;
+                                &lt;property&gt;
+                                        &lt;name&gt;mapred.job.queue.name&lt;/name&gt;
+                                        &lt;value&gt;${queueName}&lt;/value&gt;
+                                &lt;/property&gt;
+                                &lt;property&gt;
+                                        &lt;name&gt;mapreduce.fileoutputcommitter.marksuccessfuljobs&lt;/name&gt;
+                                        &lt;value&gt;true&lt;/value&gt;
+                                &lt;/property&gt;
+                        &lt;/configuration&gt;
+                        &lt;script&gt;${nameNode}/projects/bootcamp/workflow/script.pig&lt;/script&gt;
+                        &lt;param&gt;input=${input}&lt;/param&gt;
+                        &lt;param&gt;output=${output}&lt;/param&gt;
+                        &lt;file&gt;lib/dependent.jar&lt;/file&gt;
+                &lt;/pig&gt;
+                &lt;ok to=&quot;concatenator&quot; /&gt;
+                &lt;error to=&quot;fail&quot; /&gt;
+        &lt;/action&gt;
+
+        &lt;action name=&quot;concatenator&quot;&gt;
+                &lt;java&gt;
+                        &lt;job-tracker&gt;${jobTracker}&lt;/job-tracker&gt;
+                        &lt;name-node&gt;${nameNode}&lt;/name-node&gt;
+                        &lt;prepare&gt;
+                                &lt;delete path=&quot;${nameNode}/projects/bootcamp/concat/data-${fileTimestamp}.csv&quot;/&gt;
+                        &lt;/prepare&gt;
+                        &lt;configuration&gt;
+                                &lt;property&gt;
+                                        &lt;name&gt;mapred.job.queue.name&lt;/name&gt;
+                                        &lt;value&gt;${queueName}&lt;/value&gt;
+                                &lt;/property&gt;
+                        &lt;/configuration&gt;
+                        &lt;main-class&gt;com.wf.Concatenator&lt;/main-class&gt;
+                        &lt;arg&gt;${output}&lt;/arg&gt;
+                        &lt;arg&gt;${nameNode}/projects/bootcamp/concat/data-${fileTimestamp}.csv&lt;/arg&gt;
+                &lt;/java&gt;
+                &lt;ok to=&quot;fileupload&quot; /&gt;
+                &lt;error to=&quot;fail&quot;/&gt;
+        &lt;/action&gt;
+                        
+        &lt;action name=&quot;fileupload&quot;&gt;
+                &lt;ssh&gt;
+                        &lt;host&gt;localhost&lt;/host&gt;
+                        &lt;command&gt;/tmp/fileupload.sh&lt;/command&gt;
+                        &lt;args&gt;${nameNode}/projects/bootcamp/concat/data-${fileTimestamp}.csv&lt;/args&gt;
+                        &lt;args&gt;${wf:conf(&quot;ssh.host&quot;)}&lt;/args&gt;
+                        &lt;capture-output/&gt;
+                &lt;/ssh&gt;
+                &lt;ok to=&quot;fileUploadDecision&quot; /&gt;
+                &lt;error to=&quot;fail&quot;/&gt;
+        &lt;/action&gt;
+
+        &lt;decision name=&quot;fileUploadDecision&quot;&gt;
+                &lt;switch&gt;
+                        &lt;case to=&quot;end&quot;&gt;
+                                ${wf:actionData('fileupload')['output'] == '0'}
+                        &lt;/case&gt;
+                        &lt;default to=&quot;fail&quot;/&gt;
+                &lt;/switch&gt;
+        &lt;/decision&gt;
+
+        &lt;kill name=&quot;fail&quot;&gt;
+                &lt;message&gt;Workflow failed, error message[${wf:errorMessage(wf:lastErrorNode())}]&lt;/message&gt;
+        &lt;/kill&gt;
+
+        &lt;end name=&quot;end&quot; /&gt;
+&lt;/workflow-app&gt;
+
+</pre></div></div>
+<div class="section">
+<h5>File Upload Script<a name="File_Upload_Script"></a></h5>
+<p>The script gets the file from hadoop, rsyncs the file to /tmp on remote host and deletes the file from hadoop</p>
+<div class="source">
+<pre>
+#!/bin/bash
+
+trap 'echo &quot;output=$?&quot;; exit $?' ERR INT TERM
+
+echo &quot;Arguments: $@&quot;
+SRCFILE=$1
+DESTHOST=$3
+
+FILENAME=`basename $SRCFILE`
+rm -f /tmp/$FILENAME
+hadoop fs -copyToLocal $SRCFILE /tmp/
+echo &quot;Copied $SRCFILE to /tmp&quot;
+
+rsync -ztv --rsh=ssh --stats /tmp/$FILENAME $DESTHOST:/tmp
+echo &quot;rsynced $FILENAME to $DESTUSER@$DESTHOST:$DESTFILE&quot;
+
+hadoop fs -rmr $SRCFILE
+echo &quot;Deleted $SRCFILE&quot;
+
+rm -f /tmp/$FILENAME
+echo &quot;output=0&quot;
+
+</pre></div></div>
+                  </div>
+          </div>
+
+    <hr/>
+
+    <footer>
+            <div class="container">
+              <div class="row span12">Copyright &copy;                    2013-2015
+                        <a href="http://www.apache.org">Apache Software Foundation</a>.
+            All Rights Reserved.      
+                    
+      </div>
+
+                          
+                <p id="poweredBy" class="pull-right">
+                          <a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy">
+        <img class="builtBy" alt="Built by Maven" src="./images/logos/maven-feather.png" />
+      </a>
+              </p>
+        
+                </div>
+    </footer>
+  </body>
+</html>

http://git-wip-us.apache.org/repos/asf/falcon/blob/8609ffd6/site/0.6.1/Operability.html
----------------------------------------------------------------------
diff --git a/site/0.6.1/Operability.html b/site/0.6.1/Operability.html
new file mode 100644
index 0000000..3856a81
--- /dev/null
+++ b/site/0.6.1/Operability.html
@@ -0,0 +1,150 @@
+<!DOCTYPE html>
+<!--
+ | Generated by Apache Maven Doxia at 2015-11-30
+ | Rendered using Apache Maven Fluido Skin 1.3.0
+-->
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+  <head>
+    <meta charset="UTF-8" />
+    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
+    <meta name="Date-Revision-yyyymmdd" content="20151130" />
+    <meta http-equiv="Content-Language" content="en" />
+    <title>Falcon - Operationalizing Falcon</title>
+    <link rel="stylesheet" href="./css/apache-maven-fluido-1.3.0.min.css" />
+    <link rel="stylesheet" href="./css/site.css" />
+    <link rel="stylesheet" href="./css/print.css" media="print" />
+
+      
+    <script type="text/javascript" src="./js/apache-maven-fluido-1.3.0.min.js"></script>
+
+                          
+        
+<script type="text/javascript">$( document ).ready( function() { $( '.carousel' ).carousel( { interval: 3500 } ) } );</script>
+          
+            </head>
+        <body class="topBarDisabled">
+          
+                        
+                    
+    
+        <div class="container">
+          <div id="banner">
+        <div class="pull-left">
+                                <div id="bannerLeft">
+                                                                                                <img src="images/falcon-logo.png"  alt="Apache Falcon" width="200px" height="45px"/>
+                </div>
+                      </div>
+        <div class="pull-right">  </div>
+        <div class="clear"><hr/></div>
+      </div>
+
+      <div id="breadcrumbs">
+        <ul class="breadcrumb">
+                
+                    
+                              <li class="">
+                    <a href="index.html" title="Falcon">
+        Falcon</a>
+        </li>
+      <li class="divider ">/</li>
+        <li class="">Operationalizing Falcon</li>
+        
+                
+                    
+                  <li id="publishDate" class="pull-right">Last Published: 2015-11-30</li> <li class="divider pull-right">|</li>
+              <li id="projectVersion" class="pull-right">Version: 0.6.1</li>
+            
+                            </ul>
+      </div>
+
+      
+                
+        <div id="bodyColumn" >
+                                  
+            <div class="section">
+<h2>Operationalizing Falcon<a name="Operationalizing_Falcon"></a></h2></div>
+<div class="section">
+<h3>Overview<a name="Overview"></a></h3>
+<p>Apache Falcon provides various tools to operationalize Falcon consisting of Alerts for unrecoverable errors, Audits of user actions, Metrics, and Notifications. They are detailed below.</p></div>
+<div class="section">
+<h3>Monitoring<a name="Monitoring"></a></h3>
+<p>Falcon provides monitoring of various events by capturing metrics of those events. The metric numbers can then be used to monitor performance and health of the Falcon system and the entire processing pipelines.</p>
+<p>Users can view the logs of these events in the metric.log file, by default this file is created under ${user.dir}/logs/ directory. Users may also extend the Falcon monitoring framework to send events to systems like Mondemand/lwes by implementingorg.apache.falcon.plugin.MonitoringPlugin interface.</p>
+<p>The following events are captured by Falcon for logging the metrics:</p>
+<ol style="list-style-type: decimal">
+<li>New cluster definitions posted to Falcon (success &amp; failures)</li>
+<li>New feed definition posted to Falcon (success &amp; failures)</li>
+<li>New process definition posted to Falcon (success &amp; failures)</li>
+<li>Process update events (success &amp; failures)</li>
+<li>Feed update events (success &amp; failures)</li>
+<li>Cluster update events (success &amp; failures)</li>
+<li>Process suspend events (success &amp; failures)</li>
+<li>Feed suspend events (success &amp; failures)</li>
+<li>Process resume events (success &amp; failures)</li>
+<li>Feed resume events (success &amp; failures)</li>
+<li>Process remove events (success &amp; failures)</li>
+<li>Feed remove events (success &amp; failures)</li>
+<li>Cluster remove events (success &amp; failures)</li>
+<li>Process instance kill events (success &amp; failures)</li>
+<li>Process instance re-run events (success &amp; failures)</li>
+<li>Process instance generation events</li>
+<li>Process instance failure events</li>
+<li>Process instance auto-retry events</li>
+<li>Process instance retry exhaust events</li>
+<li>Feed instance deletion event</li>
+<li>Feed instance deletion failure event (no retries)</li>
+<li>Feed instance replication event</li>
+<li>Feed instance replication failure event</li>
+<li>Feed instance replication auto-retry event</li>
+<li>Feed instance replication retry exhaust event</li>
+<li>Feed instance late arrival event</li>
+<li>Feed instance post cut-off arrival event</li>
+<li>Process re-run due to late feed event</li>
+<li>Transaction rollback failed event</li></ol>
+<p>The metric logged for an event has the following properties:</p>
+<ol style="list-style-type: decimal">
+<li>Action - Name of the event.</li>
+<li>Dimensions - A list of name/value pairs of various attributes for a given action.</li>
+<li>Status- Status of an action FAILED/SUCCEEDED.</li>
+<li>Time-taken - Time taken in nanoseconds for a given action.</li></ol>
+<p>An example for an event logged for a submit of a new process definition:</p>
+<p>2012-05-04 12:23:34,026 {Action:submit, Dimensions:{entityType=process}, Status: SUCCEEDED, Time-taken:97087000 ns}</p>
+<p>Users may parse the metric.log or capture these events from custom monitoring frameworks and can plot various graphs or send alerts according to their requirements.</p></div>
+<div class="section">
+<h3>Notifications<a name="Notifications"></a></h3>
+<p>Falcon creates a JMS topic for every process/feed that is scheduled in Falcon. The implementation class and the broker url of the JMS engine are read from the dependent cluster's definition. Users may register consumers on the required topic to check the availability or status of feed instances.</p>
+<p>For a given process that is scheduled, the name of the topic is same as the process name. Falcon sends a Map message for every feed produced by the instance of a process to the JMS topic. The JMS MapMessage sent to a topic has the following properties: entityName, feedNames, feedInstancePath, workflowId, runId, nominalTime, timeStamp, brokerUrl, brokerImplClass, entityType, operation, logFile, topicName, status, brokerTTL;</p>
+<p>For a given feed that is scheduled, the name of the topic is same as the feed name. Falcon sends a map message for every feed instance that is deleted/archived/replicated depending upon the retention policy set in the feed definition. The JMS MapMessage sent to a topic has the following properties: entityName, feedNames, feedInstancePath, workflowId, runId, nominalTime, timeStamp, brokerUrl, brokerImplClass, entityType, operation, logFile, topicName, status, brokerTTL;</p>
+<p>The JMS messages are automatically purged after a certain period (default 3 days) by the Falcon JMS house-keeping service.TTL (Time-to-live) for JMS message can be configured in the Falcon's startup.properties file.</p></div>
+<div class="section">
+<h3>Alerts<a name="Alerts"></a></h3>
+<p>Falcon generates alerts for unrecoverable errors into a log file by default. Users can view these alerts in the alerts.log file, by default this file is created under ${user.dir}/logs/ directory.</p>
+<p>Users may also extend the Falcon Alerting plugin to send events to systems like Nagios, etc. by extending org.apache.falcon.plugin.AlertingPlugin interface.</p></div>
+<div class="section">
+<h3>Audits<a name="Audits"></a></h3>
+<p>Falcon audits all user activity and captures them into a log file by default. Users can view these audits in the audit.log file, by default this file is created under ${user.dir}/logs/ directory.</p>
+<p>Users may also extend the Falcon Audit plugin to send audits to systems like Apache Argus, etc. by extending org.apache.falcon.plugin.AuditingPlugin interface.</p></div>
+                  </div>
+          </div>
+
+    <hr/>
+
+    <footer>
+            <div class="container">
+              <div class="row span12">Copyright &copy;                    2013-2015
+                        <a href="http://www.apache.org">Apache Software Foundation</a>.
+            All Rights Reserved.      
+                    
+      </div>
+
+                          
+                <p id="poweredBy" class="pull-right">
+                          <a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy">
+        <img class="builtBy" alt="Built by Maven" src="./images/logos/maven-feather.png" />
+      </a>
+              </p>
+        
+                </div>
+    </footer>
+  </body>
+</html>

http://git-wip-us.apache.org/repos/asf/falcon/blob/8609ffd6/site/0.6.1/PrismSetup.png
----------------------------------------------------------------------
diff --git a/site/0.6.1/PrismSetup.png b/site/0.6.1/PrismSetup.png
new file mode 100644
index 0000000..b0dc9a5
Binary files /dev/null and b/site/0.6.1/PrismSetup.png differ

http://git-wip-us.apache.org/repos/asf/falcon/blob/8609ffd6/site/0.6.1/ProcessSchedule.png
----------------------------------------------------------------------
diff --git a/site/0.6.1/ProcessSchedule.png b/site/0.6.1/ProcessSchedule.png
new file mode 100644
index 0000000..a7dd788
Binary files /dev/null and b/site/0.6.1/ProcessSchedule.png differ

http://git-wip-us.apache.org/repos/asf/falcon/blob/8609ffd6/site/0.6.1/Recipes.html
----------------------------------------------------------------------
diff --git a/site/0.6.1/Recipes.html b/site/0.6.1/Recipes.html
new file mode 100644
index 0000000..84d71a3
--- /dev/null
+++ b/site/0.6.1/Recipes.html
@@ -0,0 +1,166 @@
+<!DOCTYPE html>
+<!--
+ | Generated by Apache Maven Doxia at 2015-11-30
+ | Rendered using Apache Maven Fluido Skin 1.3.0
+-->
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+  <head>
+    <meta charset="UTF-8" />
+    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
+    <meta name="Date-Revision-yyyymmdd" content="20151130" />
+    <meta http-equiv="Content-Language" content="en" />
+    <title>Falcon - Falcon Recipes</title>
+    <link rel="stylesheet" href="./css/apache-maven-fluido-1.3.0.min.css" />
+    <link rel="stylesheet" href="./css/site.css" />
+    <link rel="stylesheet" href="./css/print.css" media="print" />
+
+      
+    <script type="text/javascript" src="./js/apache-maven-fluido-1.3.0.min.js"></script>
+
+                          
+        
+<script type="text/javascript">$( document ).ready( function() { $( '.carousel' ).carousel( { interval: 3500 } ) } );</script>
+          
+            </head>
+        <body class="topBarDisabled">
+          
+                        
+                    
+    
+        <div class="container">
+          <div id="banner">
+        <div class="pull-left">
+                                <div id="bannerLeft">
+                                                                                                <img src="images/falcon-logo.png"  alt="Apache Falcon" width="200px" height="45px"/>
+                </div>
+                      </div>
+        <div class="pull-right">  </div>
+        <div class="clear"><hr/></div>
+      </div>
+
+      <div id="breadcrumbs">
+        <ul class="breadcrumb">
+                
+                    
+                              <li class="">
+                    <a href="index.html" title="Falcon">
+        Falcon</a>
+        </li>
+      <li class="divider ">/</li>
+        <li class="">Falcon Recipes</li>
+        
+                
+                    
+                  <li id="publishDate" class="pull-right">Last Published: 2015-11-30</li> <li class="divider pull-right">|</li>
+              <li id="projectVersion" class="pull-right">Version: 0.6.1</li>
+            
+                            </ul>
+      </div>
+
+      
+                
+        <div id="bodyColumn" >
+                                  
+            <div class="section">
+<h2>Falcon Recipes<a name="Falcon_Recipes"></a></h2></div>
+<div class="section">
+<h3>Overview<a name="Overview"></a></h3>
+<p>A Falcon recipe is a static process template with parameterized workflow to realize a specific use case. Recipes are defined in user space. Recipes will not have support for update or lifecycle management.</p>
+<p>For example:</p>
+<p></p>
+<ul>
+<li>Replicating directories from one HDFS cluster to another (not timed partitions)</li>
+<li>Replicating hive metadata (database, table, views, etc.)</li>
+<li>Replicating between HDFS and Hive - either way</li>
+<li>Data masking etc.</li></ul></div>
+<div class="section">
+<h3>Proposal<a name="Proposal"></a></h3>
+<p>Falcon provides a Process abstraction that encapsulates the configuration for a user workflow with scheduling controls. All recipes can be modeled as a Process with in Falcon which executes the user workflow periodically. The process and its associated workflow are parameterized. The user will provide a properties file with name value pairs that are substituted by falcon before scheduling it. Falcon translates these recipes as a process entity by replacing the parameters in the workflow definition.</p></div>
+<div class="section">
+<h3>Falcon CLI recipe support<a name="Falcon_CLI_recipe_support"></a></h3>
+<p><a href="./FalconCLI.html">Recipe command usage is defined here.</a></p>
+<p>CLI accepts recipe option with a recipe name and optional tool and does the following:</p>
+<ul>
+<li>Validates the options; name option is mandatory and tool is optional and should be provided if user wants to override the base recipe tool</li>
+<li>Looks for &lt;name&gt;-workflow.xml, &lt;name&gt;-template.xml and &lt;name&gt;.properties file in the path specified by falcon.recipe.path in client.properties. If files cannot be found then Falcon CLI will fail</li>
+<li>Invokes a Tool to substitute the properties in the templated process for the recipe. By default invokes base tool if tool option is not passed. Tool is responsible for generating process entity at the path specified by FalconCLI</li>
+<li>Validates the generated entity</li>
+<li>Submit and schedule this entity</li>
+<li>Generated process entity files are stored in tmp directory</li></ul></div>
+<div class="section">
+<h3>Base Recipe tool<a name="Base_Recipe_tool"></a></h3>
+<p>Falcon provides a base tool that recipes can override. Base Recipe tool does the following:</p>
+<ul>
+<li>Expects recipe template file path, recipe properties file path and path where process entity to be submitted should be generated. Validates these arguments</li>
+<li>Validates the artifacts i.e. workflow and/or lib files specified in the recipe template exists on local filesystem or HDFS at the specified path else returns error</li>
+<li>Copies if the artifacts exists on local filesystem
+<ul>
+<li>If workflow is on local FS then falcon.recipe.workflow.path in recipe property file is mandatory for it to be copied to HDFS. If templated process requires custom libs falcon.recipe.workflow.lib.path property is mandatory for them to be copied from Local FS to HDFS. Recipe tool will copy the local artifacts only if these properties are set in properties file</li></ul></li>
+<li>Looks for the patten ##[A-Za-z0-9_.]*## in the templated process and substitutes it with the properties. Process entity generated after the substitution is written to the empty file passed by FalconCLI</li></ul></div>
+<div class="section">
+<h3>Recipe template file format<a name="Recipe_template_file_format"></a></h3>
+<p></p>
+<ul>
+<li>Any templatized string should be in the format ##[A-Za-z0-9_.]*##.</li>
+<li>There should be a corresponding entry in the recipe properties file &quot;falcon.recipe.&lt;templatized-string&gt; = &lt;value to be substituted&gt;&quot;</li></ul>
+<div class="source">
+<pre>
+Example: If the entry in recipe template is &lt;workflow name=&quot;##workflow.name##&quot;&gt; there should be a corresponding entry in the recipe properties file falcon.recipe.workflow.name=hdfs-dr-workflow
+
+</pre></div></div>
+<div class="section">
+<h3>Recipe properties file format<a name="Recipe_properties_file_format"></a></h3>
+<p></p>
+<ul>
+<li>Regular key value pair properties file</li>
+<li>Property key should be prefixed by &quot;falcon.recipe.&quot;</li></ul>
+<div class="source">
+<pre>
+Example: falcon.recipe.workflow.name=hdfs-dr-workflow
+Recipe template will have &lt;workflow name=&quot;##workflow.name##&quot;&gt;. Recipe tool will look for the patten ##workflow.name##
+and replace it with the property value &quot;hdfs-dr-workflow&quot;. Substituted template will have &lt;workflow name=&quot;hdfs-dr-workflow&quot;&gt;
+
+</pre></div></div>
+<div class="section">
+<h3>Managing the scheduled recipe process<a name="Managing_the_scheduled_recipe_process"></a></h3>
+<p></p>
+<ul>
+<li>Scheduled recipe process is similar to regular process
+<ul>
+<li>List : falcon entity -type process -name &lt;recipe-process-name&gt; -list</li>
+<li>Status : falcon entity -type process -name &lt;recipe-process-name&gt; -status</li>
+<li>Delete : falcon entity -type process -name &lt;recipe-process-name&gt; -delete</li></ul></li></ul></div>
+<div class="section">
+<h3>Sample recipes<a name="Sample_recipes"></a></h3>
+<p></p>
+<ul>
+<li>Sample recipes are published in addons/recipes</li></ul></div>
+<div class="section">
+<h3>Packaging<a name="Packaging"></a></h3>
+<p></p>
+<ul>
+<li>There is no packaging for recipes at this time but will be added soon.</li></ul></div>
+                  </div>
+          </div>
+
+    <hr/>
+
+    <footer>
+            <div class="container">
+              <div class="row span12">Copyright &copy;                    2013-2015
+                        <a href="http://www.apache.org">Apache Software Foundation</a>.
+            All Rights Reserved.      
+                    
+      </div>
+
+                          
+                <p id="poweredBy" class="pull-right">
+                          <a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy">
+        <img class="builtBy" alt="Built by Maven" src="./images/logos/maven-feather.png" />
+      </a>
+              </p>
+        
+                </div>
+    </footer>
+  </body>
+</html>

http://git-wip-us.apache.org/repos/asf/falcon/blob/8609ffd6/site/0.6.1/Security.html
----------------------------------------------------------------------
diff --git a/site/0.6.1/Security.html b/site/0.6.1/Security.html
new file mode 100644
index 0000000..27f334c
--- /dev/null
+++ b/site/0.6.1/Security.html
@@ -0,0 +1,507 @@
+<!DOCTYPE html>
+<!--
+ | Generated by Apache Maven Doxia at 2015-11-30
+ | Rendered using Apache Maven Fluido Skin 1.3.0
+-->
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+  <head>
+    <meta charset="UTF-8" />
+    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
+    <meta name="Date-Revision-yyyymmdd" content="20151130" />
+    <meta http-equiv="Content-Language" content="en" />
+    <title>Falcon - Securing Falcon</title>
+    <link rel="stylesheet" href="./css/apache-maven-fluido-1.3.0.min.css" />
+    <link rel="stylesheet" href="./css/site.css" />
+    <link rel="stylesheet" href="./css/print.css" media="print" />
+
+      
+    <script type="text/javascript" src="./js/apache-maven-fluido-1.3.0.min.js"></script>
+
+                          
+        
+<script type="text/javascript">$( document ).ready( function() { $( '.carousel' ).carousel( { interval: 3500 } ) } );</script>
+          
+            </head>
+        <body class="topBarDisabled">
+          
+                        
+                    
+    
+        <div class="container">
+          <div id="banner">
+        <div class="pull-left">
+                                <div id="bannerLeft">
+                                                                                                <img src="images/falcon-logo.png"  alt="Apache Falcon" width="200px" height="45px"/>
+                </div>
+                      </div>
+        <div class="pull-right">  </div>
+        <div class="clear"><hr/></div>
+      </div>
+
+      <div id="breadcrumbs">
+        <ul class="breadcrumb">
+                
+                    
+                              <li class="">
+                    <a href="index.html" title="Falcon">
+        Falcon</a>
+        </li>
+      <li class="divider ">/</li>
+        <li class="">Securing Falcon</li>
+        
+                
+                    
+                  <li id="publishDate" class="pull-right">Last Published: 2015-11-30</li> <li class="divider pull-right">|</li>
+              <li id="projectVersion" class="pull-right">Version: 0.6.1</li>
+            
+                            </ul>
+      </div>
+
+      
+                
+        <div id="bodyColumn" >
+                                  
+            <div class="section">
+<h2>Securing Falcon<a name="Securing_Falcon"></a></h2></div>
+<div class="section">
+<h3>Overview<a name="Overview"></a></h3>
+<p>Apache Falcon enforces authentication and authorization which are detailed below. Falcon also provides transport level security ensuring data confidentiality and integrity.</p></div>
+<div class="section">
+<h3>Authentication (User Identity)<a name="Authentication_User_Identity"></a></h3>
+<p>Apache Falcon enforces authentication on protected resources. Once authentication has been established it sets a signed HTTP Cookie that contains an authentication token with the user name, user principal, authentication type and expiration time.</p>
+<p>It does so by using <a class="externalLink" href="./Http://hadoop.apache.org/docs/current/hadoop-auth/index.html.html">Hadoop Auth</a>. Hadoop Auth is a Java library consisting of a client and a server components to enable Kerberos SPNEGO authentication for HTTP. Hadoop Auth also supports additional authentication mechanisms on the client and the server side via 2 simple interfaces.</p></div>
+<div class="section">
+<h4>Authentication Methods<a name="Authentication_Methods"></a></h4>
+<p>It supports 2 authentication methods, simple and kerberos out of the box.</p></div>
+<div class="section">
+<h5>Pseudo/Simple Authentication<a name="PseudoSimple_Authentication"></a></h5>
+<p>Falcon authenticates the user by simply trusting the value of the query string parameter 'user.name'. This is the default mode Falcon is configured with.</p></div>
+<div class="section">
+<h5>Kerberos Authentication<a name="Kerberos_Authentication"></a></h5>
+<p>Falcon uses HTTP Kerberos SPNEGO to authenticate the user.</p></div>
+<div class="section">
+<h3>Authorization<a name="Authorization"></a></h3>
+<p>Falcon also enforces authorization on Entities using ACLs (Access Control Lists). ACLs are useful for implementing permission requirements and provide a way to set different permissions for specific users or named groups.</p>
+<p>By default, support for authorization is disabled and can be enabled in startup.properties.</p></div>
+<div class="section">
+<h4>ACLs in Entity<a name="ACLs_in_Entity"></a></h4>
+<p>All Entities now have ACL which needs to be present if authorization is enabled. Only owners who own or created the entity will be allowed to update or delete their entities.</p>
+<p>An entity has ACLs (Access Control Lists) that are useful for implementing permission requirements and provide a way to set different permissions for specific users or named groups.</p>
+<div class="source">
+<pre>
+    &lt;ACL owner=&quot;test-user&quot; group=&quot;test-group&quot; permission=&quot;*&quot;/&gt;
+
+</pre></div>
+<p>ACL indicates the Access control list for this cluster. owner is the Owner of this entity. group is the one which has access to read. permission indicates the rwx is not enforced at this time.</p></div>
+<div class="section">
+<h4>Super-User<a name="Super-User"></a></h4>
+<p>The super-user is the user with the same identity as falcon process itself. Loosely, if you started the falcon, then you are the super-user. The super-user can do anything in that permissions checks never fail for the super-user. There is no persistent notion of who was the super-user; when the falcon is started the process identity determines who is the super-user for now. The Falcon super-user does not have to be the super-user of the falcon host, nor is it necessary that all clusters have the same super-user. Also, an experimenter running Falcon on a personal workstation, conveniently becomes that installation's super-user without any configuration.</p>
+<p>Falcon also allows users to configure a super user group and allows users belonging to this group to be a super user.</p>
+<p>ACL owner and group must be valid even if the authenticated user is a super-user.</p></div>
+<div class="section">
+<h4>Group Memberships<a name="Group_Memberships"></a></h4>
+<p>Once a user has been authenticated and a username has been determined, the list of groups is determined by a group mapping service, configured by the hadoop.security.group.mapping property in Hadoop. The default implementation, org.apache.hadoop.security.ShellBasedUnixGroupsMapping, will shell out to the Unix bash -c groups command to resolve a list of groups for a user.</p>
+<p>Note that Falcon stores the user and group of an Entity as strings; there is no conversion from user and group identity numbers as is conventional in Unix.</p>
+<p>The only limitation is that a user cannot add a group in ACL that he does not belong to.</p></div>
+<div class="section">
+<h4>Authorization Provider<a name="Authorization_Provider"></a></h4>
+<p>Falcon provides a plugin-able provider interface for Authorization. It also ships with a default implementation that enforces the following authorization policy.</p></div>
+<div class="section">
+<h5>Entity and Instance Management Operations Policy<a name="Entity_and_Instance_Management_Operations_Policy"></a></h5>
+<p></p>
+<ul>
+<li>All Entity and Instance operations are authorized for users who created them, Owners and users with group memberships</li>
+<li>Reference to entities with in a feed or process is allowed with out enforcing permissions</li></ul>
+<p>Any Feed or Process can refer to a Cluster entity not owned by the Feed or Process owner. Any Process can refer to a Feed entity not owned by the Process owner</p>
+<p>The authorization is enforced in the following way:</p>
+<p></p>
+<ul>
+<li>if admin resource,
+<ul>
+<li>If authenticated user name matches the admin users configuration</li>
+<li>Else if groups of the authenticated user matches the admin groups configuration</li>
+<li>Else authorization exception is thrown</li></ul></li>
+<li>Else if entities or instance resource
+<ul>
+<li>If the authenticated user matches the owner in ACL for the entity</li>
+<li>Else if the groups of the authenticated user matches the group in ACL for the entity</li>
+<li>Else authorization exception is thrown</li></ul></li>
+<li>Else if lineage resource
+<ul>
+<li>All have read-only permissions, reason being folks should be able to examine the dependency and allow reuse</li></ul></li></ul>
+<p>To authenticate user for REST api calls, user should append &quot;user.name=&lt;username&gt;&quot; to the query.</p>
+<p><b>operations on Entity Resource</b></p>
+<p></p>
+<table border="0" class="table table-striped">
+<tr class="a">
+<th>Resource</th>
+<th>Description</th>
+<th>Authorization</th></tr>
+<tr class="b">
+<td><a href="././restapi/EntityValidate.html">api/entities/validate/:entity-type</a></td>
+<td>Validate the entity</td>
+<td>Owner/Group</td></tr>
+<tr class="a">
+<td><a href="././restapi/EntitySubmit.html">api/entities/submit/:entity-type</a></td>
+<td>Submit the entity</td>
+<td>Owner/Group</td></tr>
+<tr class="b">
+<td><a href="././restapi/EntityUpdate.html">api/entities/update/:entity-type/:entity-name</a></td>
+<td>Update the entity</td>
+<td>Owner/Group</td></tr>
+<tr class="a">
+<td><a href="././restapi/EntitySubmitAndSchedule.html">api/entities/submitAndSchedule/:entity-type</a></td>
+<td>Submit &amp; Schedule the entity</td>
+<td>Owner/Group</td></tr>
+<tr class="b">
+<td><a href="././restapi/EntitySchedule.html">api/entities/schedule/:entity-type/:entity-name</a></td>
+<td>Schedule the entity</td>
+<td>Owner/Group</td></tr>
+<tr class="a">
+<td><a href="././restapi/EntitySuspend.html">api/entities/suspend/:entity-type/:entity-name</a></td>
+<td>Suspend the entity</td>
+<td>Owner/Group</td></tr>
+<tr class="b">
+<td><a href="././restapi/EntityResume.html">api/entities/resume/:entity-type/:entity-name</a></td>
+<td>Resume the entity</td>
+<td>Owner/Group</td></tr>
+<tr class="a">
+<td><a href="././restapi/EntityDelete.html">api/entities/delete/:entity-type/:entity-name</a></td>
+<td>Delete the entity</td>
+<td>Owner/Group</td></tr>
+<tr class="b">
+<td><a href="././restapi/EntityStatus.html">api/entities/status/:entity-type/:entity-name</a></td>
+<td>Get the status of the entity</td>
+<td>Owner/Group</td></tr>
+<tr class="a">
+<td><a href="././restapi/EntityDefinition.html">api/entities/definition/:entity-type/:entity-name</a></td>
+<td>Get the definition of the entity</td>
+<td>Owner/Group</td></tr>
+<tr class="b">
+<td><a href="././restapi/EntityList.html">api/entities/list/:entity-type?fields=:fields</a></td>
+<td>Get the list of entities</td>
+<td>Owner/Group</td></tr>
+<tr class="a">
+<td><a href="././restapi/EntityDependencies.html">api/entities/dependencies/:entity-type/:entity-name</a></td>
+<td>Get the dependencies of the entity</td>
+<td>Owner/Group</td></tr></table><b>REST Call on Feed and Process Instances</b>
+<p></p>
+<table border="0" class="table table-striped">
+<tr class="a">
+<th>Resource</th>
+<th>Description</th>
+<th>Authorization</th></tr>
+<tr class="b">
+<td><a href="././restapi/InstanceRunning.html">api/instance/running/:entity-type/:entity-name</a></td>
+<td>List of running instances.</td>
+<td>Owner/Group</td></tr>
+<tr class="a">
+<td><a href="././restapi/InstanceStatus.html">api/instance/status/:entity-type/:entity-name</a></td>
+<td>Status of a given instance</td>
+<td>Owner/Group</td></tr>
+<tr class="b">
+<td><a href="././restapi/InstanceKill.html">api/instance/kill/:entity-type/:entity-name</a></td>
+<td>Kill a given instance</td>
+<td>Owner/Group</td></tr>
+<tr class="a">
+<td><a href="././restapi/InstanceSuspend.html">api/instance/suspend/:entity-type/:entity-name</a></td>
+<td>Suspend a running instance</td>
+<td>Owner/Group</td></tr>
+<tr class="b">
+<td><a href="././restapi/InstanceResume.html">api/instance/resume/:entity-type/:entity-name</a></td>
+<td>Resume a given instance</td>
+<td>Owner/Group</td></tr>
+<tr class="a">
+<td><a href="././restapi/InstanceRerun.html">api/instance/rerun/:entity-type/:entity-name</a></td>
+<td>Rerun a given instance</td>
+<td>Owner/Group</td></tr>
+<tr class="b">
+<td><a href="./InstanceLogs.html">api/instance/logs/:entity-type/:entity-name</a></td>
+<td>Get logs of a given instance</td>
+<td>Owner/Group</td></tr></table></div>
+<div class="section">
+<h5>Admin Resources Policy<a name="Admin_Resources_Policy"></a></h5>
+<p>Only users belonging to admin users or groups have access to this resource. Admin membership is determined by a static configuration parameter.</p>
+<p></p>
+<table border="0" class="table table-striped">
+<tr class="a">
+<th>Resource</th>
+<th>Description</th>
+<th>Authorization</th></tr>
+<tr class="b">
+<td><a href="././restapi/AdminVersion.html">api/admin/version</a></td>
+<td>Get version of the server</td>
+<td>No restriction</td></tr>
+<tr class="a">
+<td><a href="././restapi/AdminStack.html">api/admin/stack</a></td>
+<td>Get stack of the server</td>
+<td>Admin User/Group</td></tr>
+<tr class="b">
+<td><a href="././restapi/AdminConfig.html">api/admin/config/:config-type</a></td>
+<td>Get configuration information of the server</td>
+<td>Admin User/Group</td></tr></table></div>
+<div class="section">
+<h5>Lineage Resource Policy<a name="Lineage_Resource_Policy"></a></h5>
+<p>Lineage is read-only and hence all users can look at lineage for their respective entities. <b>Note:</b> This gap will be fixed in a later release.</p></div>
+<div class="section">
+<h3>Authentication Configuration<a name="Authentication_Configuration"></a></h3>
+<p>Following is the Server Side Configuration Setup for Authentication.</p></div>
+<div class="section">
+<h4>Common Configuration Parameters<a name="Common_Configuration_Parameters"></a></h4>
+<div class="source">
+<pre>
+# Authentication type must be specified: simple|kerberos
+*.falcon.authentication.type=kerberos
+
+</pre></div></div>
+<div class="section">
+<h4>Kerberos Configuration<a name="Kerberos_Configuration"></a></h4>
+<div class="source">
+<pre>
+##### Service Configuration
+
+# Indicates the Kerberos principal to be used in Falcon Service.
+*.falcon.service.authentication.kerberos.principal=falcon/_HOST@EXAMPLE.COM
+
+# Location of the keytab file with the credentials for the Service principal.
+*.falcon.service.authentication.kerberos.keytab=/etc/security/keytabs/falcon.service.keytab
+
+# name node principal to talk to config store
+*.dfs.namenode.kerberos.principal=nn/_HOST@EXAMPLE.COM
+
+##### SPNEGO Configuration
+
+# Authentication type must be specified: simple|kerberos|&lt;class&gt;
+# org.apache.falcon.security.RemoteUserInHeaderBasedAuthenticationHandler can be used for backwards compatibility
+*.falcon.http.authentication.type=kerberos
+
+# Indicates how long (in seconds) an authentication token is valid before it has to be renewed.
+*.falcon.http.authentication.token.validity=36000
+
+# The signature secret for signing the authentication tokens.
+*.falcon.http.authentication.signature.secret=falcon
+
+# The domain to use for the HTTP cookie that stores the authentication token.
+*.falcon.http.authentication.cookie.domain=
+
+# Indicates if anonymous requests are allowed when using 'simple' authentication.
+*.falcon.http.authentication.simple.anonymous.allowed=true
+
+# Indicates the Kerberos principal to be used for HTTP endpoint.
+# The principal MUST start with 'HTTP/' as per Kerberos HTTP SPNEGO specification.
+*.falcon.http.authentication.kerberos.principal=HTTP/_HOST@EXAMPLE.COM
+
+# Location of the keytab file with the credentials for the HTTP principal.
+*.falcon.http.authentication.kerberos.keytab=/etc/security/keytabs/spnego.service.keytab
+
+# The kerberos names rules is to resolve kerberos principal names, refer to Hadoop's KerberosName for more details.
+*.falcon.http.authentication.kerberos.name.rules=DEFAULT
+
+# Comma separated list of black listed users
+*.falcon.http.authentication.blacklisted.users=
+
+# Increase Jetty request buffer size to accommodate the generated Kerberos token
+*.falcon.jetty.request.buffer.size=16192
+
+</pre></div></div>
+<div class="section">
+<h4>Pseudo/Simple Configuration<a name="PseudoSimple_Configuration"></a></h4>
+<div class="source">
+<pre>
+##### SPNEGO Configuration
+
+# Authentication type must be specified: simple|kerberos|&lt;class&gt;
+# org.apache.falcon.security.RemoteUserInHeaderBasedAuthenticationHandler can be used for backwards compatibility
+*.falcon.http.authentication.type=simple
+
+# Indicates how long (in seconds) an authentication token is valid before it has to be renewed.
+*.falcon.http.authentication.token.validity=36000
+
+# The signature secret for signing the authentication tokens.
+*.falcon.http.authentication.signature.secret=falcon
+
+# The domain to use for the HTTP cookie that stores the authentication token.
+*.falcon.http.authentication.cookie.domain=
+
+# Indicates if anonymous requests are allowed when using 'simple' authentication.
+*.falcon.http.authentication.simple.anonymous.allowed=true
+
+# Comma separated list of black listed users
+*.falcon.http.authentication.blacklisted.users=
+
+</pre></div></div>
+<div class="section">
+<h3>Authorization Configuration<a name="Authorization_Configuration"></a></h3></div>
+<div class="section">
+<h4>Enabling Authorization<a name="Enabling_Authorization"></a></h4>
+<p>By default, support for authorization is disabled and specifying ACLs in entities are optional. To enable support for authorization, set falcon.security.authorization.enabled to true in the startup configuration.</p>
+<div class="source">
+<pre>
+# Authorization Enabled flag: false|true
+*.falcon.security.authorization.enabled=true
+
+</pre></div></div>
+<div class="section">
+<h4>Authorization Provider<a name="Authorization_Provider"></a></h4>
+<p>Falcon provides a basic implementation for Authorization bundled, org.apache.falcon.security .DefaultFalconAuthorizationProvider. This can be overridden by custom implementations in the startup configuration.</p>
+<div class="source">
+<pre>
+# Authorization Provider Fully Qualified Class Name
+*.falcon.security.authorization.provider=org.apache.falcon.security.DefaultAuthorizationProvider
+
+</pre></div></div>
+<div class="section">
+<h4>Super User Group<a name="Super_User_Group"></a></h4>
+<p>Super user group is determined by the configuration:</p>
+<div class="source">
+<pre>
+# The name of the group of super-users
+*.falcon.security.authorization.superusergroup=falcon
+
+</pre></div></div>
+<div class="section">
+<h4>Admin Membership<a name="Admin_Membership"></a></h4>
+<p>Administrative users are determined by the configuration:</p>
+<div class="source">
+<pre>
+# Admin Users, comma separated users
+*.falcon.security.authorization.admin.users=falcon,ambari-qa,seetharam
+
+</pre></div>
+<p>Administrative groups are determined by the configuration:</p>
+<div class="source">
+<pre>
+# Admin Group Membership, comma separated users
+*.falcon.security.authorization.admin.groups=falcon,testgroup,staff
+
+</pre></div></div>
+<div class="section">
+<h3>SSL<a name="SSL"></a></h3>
+<p>Falcon provides transport level security ensuring data confidentiality and integrity. This is enabled by default for communicating over HTTP between the client and the server.</p></div>
+<div class="section">
+<h4>SSL Configuration<a name="SSL_Configuration"></a></h4>
+<div class="source">
+<pre>
+*.falcon.enableTLS=true
+*.keystore.file=/path/to/keystore/file
+*.keystore.password=password
+
+</pre></div></div>
+<div class="section">
+<h4>Distributed Falcon Setup<a name="Distributed_Falcon_Setup"></a></h4>
+<p>Falcon should be configured to communicate with Prism over TLS in secure mode. Its not enabled by default.</p></div>
+<div class="section">
+<h3>Changes to ownership and permissions of directories managed by Falcon<a name="Changes_to_ownership_and_permissions_of_directories_managed_by_Falcon"></a></h3>
+<p></p>
+<table border="0" class="table table-striped">
+<tr class="a">
+<th>Directory</th>
+<th>Location</th>
+<th>Owner</th>
+<th>Permissions</th></tr>
+<tr class="b">
+<td>Configuration Store</td>
+<td>${config.store.uri}</td>
+<td>falcon</td>
+<td>700</td></tr>
+<tr class="a">
+<td>Cluster Staging Location</td>
+<td>${cluster.staging-location}</td>
+<td>falcon</td>
+<td>777</td></tr>
+<tr class="b">
+<td>Cluster Working Location</td>
+<td>${cluster.working-location}</td>
+<td>falcon</td>
+<td>755</td></tr>
+<tr class="a">
+<td>Shared libs</td>
+<td>{cluster.working}/{lib,libext}</td>
+<td>falcon</td>
+<td>755</td></tr>
+<tr class="b">
+<td>Oozie coord/bundle XMLs</td>
+<td>${cluster.staging-location}/workflows/{entity}/{entity-name}</td>
+<td>$user</td>
+<td>cluster umask</td></tr>
+<tr class="a">
+<td>App logs</td>
+<td>${cluster.staging-location}/workflows/{entity}/{entity-name}/logs</td>
+<td>$user</td>
+<td>cluster umask</td></tr></table><b>Note:</b> Please note that the cluster staging and working locations MUST be created prior to submitting a cluster entity to Falcon. Also, note that the the parent dirs must have execute permissions.</div>
+<div class="section">
+<h3>Backwards compatibility<a name="Backwards_compatibility"></a></h3></div>
+<div class="section">
+<h4>Scheduled Entities<a name="Scheduled_Entities"></a></h4>
+<p>Entities already scheduled with an earlier version of Falcon are not compatible with this version</p></div>
+<div class="section">
+<h4>Falcon Clients<a name="Falcon_Clients"></a></h4>
+<p>Older Falcon clients are backwards compatible wrt Authentication and user information sent as part of the HTTP header, Remote-User is still honoured when the authentication type is configured as below:</p>
+<div class="source">
+<pre>
+*.falcon.http.authentication.type=org.apache.falcon.security.RemoteUserInHeaderBasedAuthenticationHandler
+
+</pre></div></div>
+<div class="section">
+<h4>Blacklisted super users for authentication<a name="Blacklisted_super_users_for_authentication"></a></h4>
+<p>The blacklist users used to have the following super users: hdfs, mapreduce, oozie, and falcon. The list is externalized from code into Startup.properties file and is empty now and needs to be configured specifically in the file.</p></div>
+<div class="section">
+<h4>Falcon Dashboard<a name="Falcon_Dashboard"></a></h4>
+<p>To initialize the current user for dashboard, user should append query param &quot;user.name=&lt;username&gt;&quot; to the REST api call.</p>
+<p>If dashboard user wishes to change the current user, they should do the following.</p>
+<ul>
+<li>delete the hadoop.auth cookie from browser cache.</li>
+<li>append query param &quot;user.name=&lt;new_user&gt;&quot; to the next REST API call.</li></ul>
+<p>In Kerberos method, the browser must support HTTP Kerberos SPNEGO.</p></div>
+<div class="section">
+<h3>Known Limitations<a name="Known_Limitations"></a></h3>
+<p></p>
+<ul>
+<li>ActiveMQ topics are not secure but will be in the near future</li>
+<li>Entities already scheduled with an earlier version of Falcon are not compatible with this version as new</li></ul>workflow parameters are being passed back into Falcon such as the user are required
+<ul>
+<li>Use of hftp as the scheme for read only interface in cluster entity <a class="externalLink" href="https://issues.apache.org/jira/browse/HADOOP-10215">will not work in Oozie</a></li></ul>The alternative is to use webhdfs scheme instead and its been tested with <a href="./DistCp.html">DistCp</a>.</div>
+<div class="section">
+<h3>Examples<a name="Examples"></a></h3></div>
+<div class="section">
+<h4>Accessing the server using Falcon CLI (Java client)<a name="Accessing_the_server_using_Falcon_CLI_Java_client"></a></h4>
+<p>There is no change in the way the CLI is used. The CLI has been changed to work with the configured authentication method.</p></div>
+<div class="section">
+<h4>Accessing the server using curl<a name="Accessing_the_server_using_curl"></a></h4>
+<p>Try accessing protected resources using curl. The protected resources are:</p>
+<div class="source">
+<pre>
+$ kinit
+Please enter the password for venkatesh@LOCALHOST:
+
+$ curl http://localhost:15000/api/admin/version
+
+$ curl http://localhost:15000/api/admin/version?user.name=venkatesh
+
+$ curl --negotiate -u foo -b ~/cookiejar.txt -c ~/cookiejar.txt curl http://localhost:15000/api/admin/version
+
+</pre></div></div>
+                  </div>
+          </div>
+
+    <hr/>
+
+    <footer>
+            <div class="container">
+              <div class="row span12">Copyright &copy;                    2013-2015
+                        <a href="http://www.apache.org">Apache Software Foundation</a>.
+            All Rights Reserved.      
+                    
+      </div>
+
+                          
+                <p id="poweredBy" class="pull-right">
+                          <a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy">
+        <img class="builtBy" alt="Built by Maven" src="./images/logos/maven-feather.png" />
+      </a>
+              </p>
+        
+                </div>
+    </footer>
+  </body>
+</html>


Mime
View raw message