brooklyn-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From rich...@apache.org
Subject [01/36] incubator-brooklyn git commit: Cherry-pick merge of PR #389 into 0.7.0-M2-incubating-docs branch
Date Fri, 09 Jan 2015 15:38:43 GMT
Repository: incubator-brooklyn
Updated Branches:
  refs/heads/0.7.0-M2-incubating-docs [created] f31c828c5


http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/201818b0/docs/website/learnmore/catalog/locations/brooklyn.policy.followthesun.DefaultFollowTheSunModel$1.html
----------------------------------------------------------------------
diff --git a/docs/website/learnmore/catalog/locations/brooklyn.policy.followthesun.DefaultFollowTheSunModel$1.html b/docs/website/learnmore/catalog/locations/brooklyn.policy.followthesun.DefaultFollowTheSunModel$1.html
new file mode 100644
index 0000000..4bf0fd3
--- /dev/null
+++ b/docs/website/learnmore/catalog/locations/brooklyn.policy.followthesun.DefaultFollowTheSunModel$1.html
@@ -0,0 +1,62 @@
+<!--
+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.
+-->
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
+<head>
+    <title>Brooklyn Location - brooklyn.policy.followthesun.DefaultFollowTheSunModel$1</title>
+    <meta http-equiv="content-type" content="text/html; charset=iso-8859-1"/>
+    <link rel="stylesheet" href="../items.css" type="text/css" media="screen"/>
+</head>
+<body>
+<div id="container">
+    <div id="header">
+        <div id="identity">
+            <a href="http://brooklyncentral.github.com/" rel="home">Brooklyn</a>
+        </div>
+    </div>
+    <div id="content" class="objectContent">
+        <h1>brooklyn.policy.followthesun.DefaultFollowTheSunModel$1</h1>
+        <h2 class="typeLabel">Type:</h2><span id="type"></span>
+
+        <h2>Config Keys</h2>
+        <table id="configKeys">
+            <tr>
+                <th>Name</th>
+                <th>Type</th>
+                <th>Default Value</th>
+                <th>Description</th>
+            </tr>
+        </table>
+        <br>
+    </div>
+</div>
+<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js" type="text/javascript"></script>
+<script src="../items.js" type="text/javascript"></script>
+<script type="text/javascript">
+    $(document).ready(function () {
+        var item = $.grep((items.locations), function (entity) {
+            return entity.type == "brooklyn.policy.followthesun.DefaultFollowTheSunModel$1";
+        })[0];
+        $("#type").html(item.type);
+        item.config.forEach(function (element) {
+            $("#configKeys").find("tr:last").after("<tr><td>" + element.name + "</td><td>" + element.type + "</td><td>" + element.defaultValue + "</td><td class='wordWrap'>" + element.description + "</td></tr>")
+        });
+    });
+</script>
+</body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/201818b0/docs/website/learnmore/catalog/policies/brooklyn.policy.autoscaling.AutoScalerPolicy.html
----------------------------------------------------------------------
diff --git a/docs/website/learnmore/catalog/policies/brooklyn.policy.autoscaling.AutoScalerPolicy.html b/docs/website/learnmore/catalog/policies/brooklyn.policy.autoscaling.AutoScalerPolicy.html
new file mode 100644
index 0000000..78a2cb5
--- /dev/null
+++ b/docs/website/learnmore/catalog/policies/brooklyn.policy.autoscaling.AutoScalerPolicy.html
@@ -0,0 +1,59 @@
+<!--
+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.
+-->
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
+  <head>
+    <title>Brooklyn Policy - Auto-scaler</title>
+    <meta http-equiv="content-type" content="text/html; charset=iso-8859-1"/>
+    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css">
+    <link rel="stylesheet" href="../items.css" type="text/css" media="screen"/>
+  </head>
+  <body>
+    <div id="container">
+      <div id="header">
+        <div id="identity">
+          <a href="http://brooklyncentral.github.com/" rel="home">Brooklyn</a>
+        </div>
+      </div>
+
+      <div id="summary"></div>
+
+      <ul class="nav nav-tabs">
+        <li class="active"><a href="#configKeys" data-toggle="tab">Config Keys</a></li>
+      </ul>
+
+      <div class="tab-content">
+        <div id="configKeys"></div>
+      </div>
+
+    </div>
+
+    <script src="../../../style/js/underscore-min.js" type="text/javascript"></script>
+    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js" type="text/javascript"></script>
+    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/js/bootstrap.min.js"></script>
+    <script src="../common.js" type="text/javascript"></script>
+    <script src="../items.js" type="text/javascript"></script>
+    <script type="text/javascript">
+        $(document).ready(function () {
+            var item = brooklyn.findItemOfType(items.policies, "brooklyn.policy.autoscaling.AutoScalerPolicy");
+            $("#summary").html(brooklyn.typeSummary(item));
+            item.config.forEach(function (element) { $("#configKeys").append(brooklyn.configKeyCard(element)); });
+        });
+    </script>
+  </body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/201818b0/docs/website/learnmore/catalog/policies/brooklyn.policy.followthesun.FollowTheSunPolicy.html
----------------------------------------------------------------------
diff --git a/docs/website/learnmore/catalog/policies/brooklyn.policy.followthesun.FollowTheSunPolicy.html b/docs/website/learnmore/catalog/policies/brooklyn.policy.followthesun.FollowTheSunPolicy.html
new file mode 100644
index 0000000..b080d7b
--- /dev/null
+++ b/docs/website/learnmore/catalog/policies/brooklyn.policy.followthesun.FollowTheSunPolicy.html
@@ -0,0 +1,59 @@
+<!--
+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.
+-->
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
+  <head>
+    <title>Brooklyn Policy - Follow the Sun</title>
+    <meta http-equiv="content-type" content="text/html; charset=iso-8859-1"/>
+    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css">
+    <link rel="stylesheet" href="../items.css" type="text/css" media="screen"/>
+  </head>
+  <body>
+    <div id="container">
+      <div id="header">
+        <div id="identity">
+          <a href="http://brooklyncentral.github.com/" rel="home">Brooklyn</a>
+        </div>
+      </div>
+
+      <div id="summary"></div>
+
+      <ul class="nav nav-tabs">
+        <li class="active"><a href="#configKeys" data-toggle="tab">Config Keys</a></li>
+      </ul>
+
+      <div class="tab-content">
+        <div id="configKeys"></div>
+      </div>
+
+    </div>
+
+    <script src="../../../style/js/underscore-min.js" type="text/javascript"></script>
+    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js" type="text/javascript"></script>
+    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/js/bootstrap.min.js"></script>
+    <script src="../common.js" type="text/javascript"></script>
+    <script src="../items.js" type="text/javascript"></script>
+    <script type="text/javascript">
+        $(document).ready(function () {
+            var item = brooklyn.findItemOfType(items.policies, "brooklyn.policy.followthesun.FollowTheSunPolicy");
+            $("#summary").html(brooklyn.typeSummary(item));
+            item.config.forEach(function (element) { $("#configKeys").append(brooklyn.configKeyCard(element)); });
+        });
+    </script>
+  </body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/201818b0/docs/website/learnmore/catalog/policies/brooklyn.policy.ha.ConnectionFailureDetector.html
----------------------------------------------------------------------
diff --git a/docs/website/learnmore/catalog/policies/brooklyn.policy.ha.ConnectionFailureDetector.html b/docs/website/learnmore/catalog/policies/brooklyn.policy.ha.ConnectionFailureDetector.html
new file mode 100644
index 0000000..11ca8de
--- /dev/null
+++ b/docs/website/learnmore/catalog/policies/brooklyn.policy.ha.ConnectionFailureDetector.html
@@ -0,0 +1,59 @@
+<!--
+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.
+-->
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
+  <head>
+    <title>Brooklyn Policy - Connection Failure Detector</title>
+    <meta http-equiv="content-type" content="text/html; charset=iso-8859-1"/>
+    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css">
+    <link rel="stylesheet" href="../items.css" type="text/css" media="screen"/>
+  </head>
+  <body>
+    <div id="container">
+      <div id="header">
+        <div id="identity">
+          <a href="http://brooklyncentral.github.com/" rel="home">Brooklyn</a>
+        </div>
+      </div>
+
+      <div id="summary"></div>
+
+      <ul class="nav nav-tabs">
+        <li class="active"><a href="#configKeys" data-toggle="tab">Config Keys</a></li>
+      </ul>
+
+      <div class="tab-content">
+        <div id="configKeys"></div>
+      </div>
+
+    </div>
+
+    <script src="../../../style/js/underscore-min.js" type="text/javascript"></script>
+    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js" type="text/javascript"></script>
+    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/js/bootstrap.min.js"></script>
+    <script src="../common.js" type="text/javascript"></script>
+    <script src="../items.js" type="text/javascript"></script>
+    <script type="text/javascript">
+        $(document).ready(function () {
+            var item = brooklyn.findItemOfType(items.policies, "brooklyn.policy.ha.ConnectionFailureDetector");
+            $("#summary").html(brooklyn.typeSummary(item));
+            item.config.forEach(function (element) { $("#configKeys").append(brooklyn.configKeyCard(element)); });
+        });
+    </script>
+  </body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/201818b0/docs/website/learnmore/catalog/policies/brooklyn.policy.ha.ServiceReplacer.html
----------------------------------------------------------------------
diff --git a/docs/website/learnmore/catalog/policies/brooklyn.policy.ha.ServiceReplacer.html b/docs/website/learnmore/catalog/policies/brooklyn.policy.ha.ServiceReplacer.html
new file mode 100644
index 0000000..f7f696a
--- /dev/null
+++ b/docs/website/learnmore/catalog/policies/brooklyn.policy.ha.ServiceReplacer.html
@@ -0,0 +1,59 @@
+<!--
+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.
+-->
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
+  <head>
+    <title>Brooklyn Policy - Service Replacer</title>
+    <meta http-equiv="content-type" content="text/html; charset=iso-8859-1"/>
+    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css">
+    <link rel="stylesheet" href="../items.css" type="text/css" media="screen"/>
+  </head>
+  <body>
+    <div id="container">
+      <div id="header">
+        <div id="identity">
+          <a href="http://brooklyncentral.github.com/" rel="home">Brooklyn</a>
+        </div>
+      </div>
+
+      <div id="summary"></div>
+
+      <ul class="nav nav-tabs">
+        <li class="active"><a href="#configKeys" data-toggle="tab">Config Keys</a></li>
+      </ul>
+
+      <div class="tab-content">
+        <div id="configKeys"></div>
+      </div>
+
+    </div>
+
+    <script src="../../../style/js/underscore-min.js" type="text/javascript"></script>
+    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js" type="text/javascript"></script>
+    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/js/bootstrap.min.js"></script>
+    <script src="../common.js" type="text/javascript"></script>
+    <script src="../items.js" type="text/javascript"></script>
+    <script type="text/javascript">
+        $(document).ready(function () {
+            var item = brooklyn.findItemOfType(items.policies, "brooklyn.policy.ha.ServiceReplacer");
+            $("#summary").html(brooklyn.typeSummary(item));
+            item.config.forEach(function (element) { $("#configKeys").append(brooklyn.configKeyCard(element)); });
+        });
+    </script>
+  </body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/201818b0/docs/website/learnmore/catalog/policies/brooklyn.policy.ha.ServiceRestarter.html
----------------------------------------------------------------------
diff --git a/docs/website/learnmore/catalog/policies/brooklyn.policy.ha.ServiceRestarter.html b/docs/website/learnmore/catalog/policies/brooklyn.policy.ha.ServiceRestarter.html
new file mode 100644
index 0000000..e27c023
--- /dev/null
+++ b/docs/website/learnmore/catalog/policies/brooklyn.policy.ha.ServiceRestarter.html
@@ -0,0 +1,59 @@
+<!--
+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.
+-->
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
+  <head>
+    <title>Brooklyn Policy - Service Restarter</title>
+    <meta http-equiv="content-type" content="text/html; charset=iso-8859-1"/>
+    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css">
+    <link rel="stylesheet" href="../items.css" type="text/css" media="screen"/>
+  </head>
+  <body>
+    <div id="container">
+      <div id="header">
+        <div id="identity">
+          <a href="http://brooklyncentral.github.com/" rel="home">Brooklyn</a>
+        </div>
+      </div>
+
+      <div id="summary"></div>
+
+      <ul class="nav nav-tabs">
+        <li class="active"><a href="#configKeys" data-toggle="tab">Config Keys</a></li>
+      </ul>
+
+      <div class="tab-content">
+        <div id="configKeys"></div>
+      </div>
+
+    </div>
+
+    <script src="../../../style/js/underscore-min.js" type="text/javascript"></script>
+    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js" type="text/javascript"></script>
+    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/js/bootstrap.min.js"></script>
+    <script src="../common.js" type="text/javascript"></script>
+    <script src="../items.js" type="text/javascript"></script>
+    <script type="text/javascript">
+        $(document).ready(function () {
+            var item = brooklyn.findItemOfType(items.policies, "brooklyn.policy.ha.ServiceRestarter");
+            $("#summary").html(brooklyn.typeSummary(item));
+            item.config.forEach(function (element) { $("#configKeys").append(brooklyn.configKeyCard(element)); });
+        });
+    </script>
+  </body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/201818b0/docs/website/learnmore/catalog/policies/brooklyn.policy.loadbalancing.LoadBalancingPolicy.html
----------------------------------------------------------------------
diff --git a/docs/website/learnmore/catalog/policies/brooklyn.policy.loadbalancing.LoadBalancingPolicy.html b/docs/website/learnmore/catalog/policies/brooklyn.policy.loadbalancing.LoadBalancingPolicy.html
new file mode 100644
index 0000000..84df363
--- /dev/null
+++ b/docs/website/learnmore/catalog/policies/brooklyn.policy.loadbalancing.LoadBalancingPolicy.html
@@ -0,0 +1,59 @@
+<!--
+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.
+-->
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
+  <head>
+    <title>Brooklyn Policy - Load Balancer</title>
+    <meta http-equiv="content-type" content="text/html; charset=iso-8859-1"/>
+    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css">
+    <link rel="stylesheet" href="../items.css" type="text/css" media="screen"/>
+  </head>
+  <body>
+    <div id="container">
+      <div id="header">
+        <div id="identity">
+          <a href="http://brooklyncentral.github.com/" rel="home">Brooklyn</a>
+        </div>
+      </div>
+
+      <div id="summary"></div>
+
+      <ul class="nav nav-tabs">
+        <li class="active"><a href="#configKeys" data-toggle="tab">Config Keys</a></li>
+      </ul>
+
+      <div class="tab-content">
+        <div id="configKeys"></div>
+      </div>
+
+    </div>
+
+    <script src="../../../style/js/underscore-min.js" type="text/javascript"></script>
+    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js" type="text/javascript"></script>
+    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/js/bootstrap.min.js"></script>
+    <script src="../common.js" type="text/javascript"></script>
+    <script src="../items.js" type="text/javascript"></script>
+    <script type="text/javascript">
+        $(document).ready(function () {
+            var item = brooklyn.findItemOfType(items.policies, "brooklyn.policy.loadbalancing.LoadBalancingPolicy");
+            $("#summary").html(brooklyn.typeSummary(item));
+            item.config.forEach(function (element) { $("#configKeys").append(brooklyn.configKeyCard(element)); });
+        });
+    </script>
+  </body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/201818b0/docs/website/learnmore/index.md
----------------------------------------------------------------------
diff --git a/docs/website/learnmore/index.md b/docs/website/learnmore/index.md
new file mode 100644
index 0000000..3befae6
--- /dev/null
+++ b/docs/website/learnmore/index.md
@@ -0,0 +1,11 @@
+---
+layout: website-normal
+title: Learn More
+children:
+- { path: yaml-explained.md }
+- { path: theory.md, title: Theory }
+---
+
+TODO have a list of resources here?  or start w yaml explained?
+
+TODO include { path: catalog/index.html }

http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/201818b0/docs/website/learnmore/theory.md
----------------------------------------------------------------------
diff --git a/docs/website/learnmore/theory.md b/docs/website/learnmore/theory.md
new file mode 100644
index 0000000..9a654e2
--- /dev/null
+++ b/docs/website/learnmore/theory.md
@@ -0,0 +1,177 @@
+---
+layout: website-normal
+title: The Theory behind Brooklyn
+navgroup: Learn More
+---
+
+<div class="jumobotron" markdown="1">
+
+Brooklyn is a framework for modeling, monitoring, and managing applications
+through autonomic blueprints.
+
+</div>
+
+## Why Brooklyn?
+
+Building and deploying applications in the cloud computing era has changed many
+things. Provision a bare server just-in-time, and use automated tools to install
+an application. Use APIs to add the server to a load balancer. When load goes
+up, provision another server; when load drops, kill a server to save money.
+
+Many new tools have appeared that take advantage of this new era. However each
+of them only solve part of the problem and don't consider the big picture. For
+example, configuration management tools such as Chef can, in a single command,
+provision a new cloud server then install and configure an application -- but
+they require extra programming to reconfigure an load balancer whenever the pool
+of web servers changes. Amazon Auto Scaling can provision new servers and update
+load balancers, but it is dependent on CloudWatch -- this means either using
+proxy metrics such as average response time, or writing more code to expose an
+application's real metrics. A dedicated monitoring tool may be able to easily
+monitor the key metrics with little effort, but its alerts will need to be
+integrated it into the server provisioning process.
+
+So all the tools are there to to create and manage a cloud-scale application
+that can adapt to demand to meet user expectations without wasting money on
+superfluous services - but you will need several such tools and it is up to you
+to integrate them into your deployment plan. Some of these tools -- such as the
+Amazon Web Services web of EC2, CloudWatch, AutoScaling and CloudFormation --
+mean that you may suffer from lock-in. Related projects in OpenStack (Heat,
+Ceilometer, Murano, Solum, etc) provide similar functionality but again for a
+restricted target. The most common policies (such as minimising request latency)
+may be easy, but less common policies such as follow-the-sun and follow-the-moon
+may be up to you to implement. Your scaling policies may understand that
+"high demand = add another server", but may not understand requirements such as
+some clustered services requiring an odd number of instances to prevent voting
+deadlocks.
+
+
+## How Brooklyn can help
+
+In this context the advantage of Brooklyn becomes apparent: a single tool is
+able to manage provisioning and application deployment, monitor an application's
+health and metrics, understand the dependencies between components (such as
+knowing that adding a new web server means that the load balancer needs
+reconfiguration) and apply complex policies to manage the application. The tool
+provides a REST API and a GUI, and allows the autonomic blueprints to be treated
+as an integral part of the application. With Brooklyn, these policies become
+modular components which can be reused and easily added to blueprints.
+
+Brooklyn is about deploying and managing applications: composing a full stack
+for an application; deploying to cloud and non-cloud targets; using monitoring
+tools to collect key health/performance metrics; responding to situations
+such as a failing node; and adding or removing capacity to match demand.
+
+
+## Blueprints
+
+A Brooklyn blueprint defines an application, using a declarative YAML syntax
+supporting JVM plugins. A basic blueprint might comprise a single process,
+such as a web-application server running a WAR file or a SQL database and
+its associated DDL scripts. More complex blueprints encompass combinations
+of processes across multiple machines and services, such as a load-balancing
+HTTP server or SDN controller fronting a cluster of J2EE application
+servers, in turn connected to a resilient cluster of SQL database servers.
+Even larger clustered application running in multiple regions can be
+described, with features such as message buses with resilient brokers,
+cacheing tiers of NoSQL key-value store servers, a high-availability
+database cluster and multiple application components connected across these
+layers.
+
+One main benefit of these blueprints is that they are composable:
+best-practice blueprints for one process or pattern (e.g. a Cassandra
+cluster) can be incorporated in other blueprints (e.g. an application with a
+Cassandra cluster as one component). Another major benefit is that the
+blueprints can be treated as source code as part of an applications
+codebase: tested, tracked, versioned, and hardened as an integral part of
+the devops process. In some ways, Brooklyn is to run-time what Maven is to
+build-time.
+
+
+### Blueprints turn into deployments
+
+Brooklyn knows about Chef, Salt, and similar tools, and APT and Yum and
+plain old shell scripts, for deploying application components. Blueprints
+are built from a mixture of both off-the-shelf packages such as Tomcat,
+MySQL, Cassandra, and many more from our library; and components that are
+bespoke to individual applications; together with policies that allow the
+application to be self-managing.
+
+Brooklyn is built for the cloud, and will take a blueprint and deploy it to
+one of many supported clouds or even to multiple different clouds, or to
+private infrastructure (bring-your-own-node), or to other platforms. It will
+dynamically configure and connect all the different components of an
+application, e.g. so load balancers know where the web servers are and the
+web applications know where the database is.
+
+Brooklyn collects key metrics to monitor the health of applications; for
+example, by sending a request and measuring latency, or installing
+monitoring tools and using those to read a server's management interface to
+determine the request queue length. These metrics can be fed into policies,
+which automatically take actions such as restarting a failed node, or
+scaling out the web tier if user demand exceeds capacity. This allows an
+application to be self-managing: to recover itself from simple failures, to
+scale out when demand increases and meet capacity; then scale in as demand
+drops and stop paying for spare capacity.
+
+In short, Brooklyn blueprints allow the best practices for deploying and
+managing complex software to be codified as part of the software development
+process.
+
+
+### Agile and flexible
+
+Brooklyn is a product built from the ground up for application agility. This
+includes portability across non-cloud, cloud, and PaaS targets; devops-style
+infrastructure-as-code applied to applications; and real-time autonomic
+management based on promise theory. Some introductions to these concepts,
+associated tools, and open specifications may be useful.
+
+Cloud computing at its core is about provisioning resources on-demand. The most
+widely known aspect is IaaS (infrastructure-as-a-service) such as Amazon EC2,
+Softlayer, Google Cloud Platform, Apache CloudStack, or OpenStack. By leveraging
+the Apache jclouds project (and contributing heavily to it), the Brooklyn
+project is able to work with a large number of such providers. Higher up the
+stack, however, there is an increasingly diverse set of platform targets, from
+PaaS (platform-as-a-service) such as Cloud Foundry and Apache Stratos, through
+to myriad containers and runtime fabrics such as LXC/Docker, Apache Mesos,
+Apache Karaf, Apache Hadoop, and Apache Usergrid and other backend-as-a-service
+environments. Brooklyn is based on the premise that applications may need to run
+in any or all of these, and the model must be flexible and open enough to
+support this.
+
+The buzzword-compliant trends of agile and devops have reinforced many important
+lessons:
+
+- The truth is in the code (not any ancillary documents)
+- If it isn't tested then assume it isn't working
+- Toolchain integration and APIs are key to a project's success
+- Even more critical is empowering all stakeholders to a project
+- Brooklyn's focus on blueprinting and modeling as code and APIs serves these
+principles.
+
+### Autonomic computing
+
+Another major influence on the design of Brooklyn are the ideas of autonomic
+computing and promise theory. It is not necessary to have a thorough
+understanding of these to use Brooklyn, but contributors tend to become versed
+in these ideas quickly. Essentially, autonomics is based on the concept of
+components looking after themselves where possible (self-healing,
+self-optimizing, etc), and exposing a sensor (data outputs) and effector
+(operations) API where they may need to controlled by another element. Promise
+theory extends this approach by introducing the idea that communicating intent
+(through promises) is a more reliable basis for complex cooperating systems than
+obligation-based effectors. Tools such as CF Engine, Chef, Puppet, Ansible, and
+Salt apply promise theory to files and processes on machines; Brooklyn can
+leverage all of these tools, complementing it with an application-oriented
+model.
+
+### Standards compliant
+
+Finally we note some emerging standards in this area. OASIS CAMP (Cloud
+Application Management for Platforms) and TOSCA (Topology and Orchestration
+Specification for Cloud Applications) both define YAML application models
+similar to Brooklyn's. CAMP focuses on the REST API for interacting with such a
+management layer, and TOSCA focuses on declarative support for more
+sophisticated orchestration. Currently Brooklyn uses a YAML which complies with
+CAMP's syntax and exposes many of the CAMP REST API endpoints. We would like to
+support the hot-off-the-press TOSCA YAML and expand the CAMP REST API coverage.

http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/201818b0/docs/website/learnmore/yaml-explained.md
----------------------------------------------------------------------
diff --git a/docs/website/learnmore/yaml-explained.md b/docs/website/learnmore/yaml-explained.md
new file mode 100644
index 0000000..12d4e17
--- /dev/null
+++ b/docs/website/learnmore/yaml-explained.md
@@ -0,0 +1,9 @@
+---
+layout: website-normal
+title: YAML Explained
+navgroup: Learn More
+---
+
+<div class="jumobotron" markdown="1">
+
+TODO

http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/201818b0/docs/website/quickstart/_my-web-cluster.yaml
----------------------------------------------------------------------
diff --git a/docs/website/quickstart/_my-web-cluster.yaml b/docs/website/quickstart/_my-web-cluster.yaml
new file mode 100644
index 0000000..3b6134b
--- /dev/null
+++ b/docs/website/quickstart/_my-web-cluster.yaml
@@ -0,0 +1,19 @@
+name: My Web Cluster
+location: location
+services:
+
+- serviceType: brooklyn.entity.webapp.ControlledDynamicWebAppCluster
+  name: My Web
+  brooklyn.config:
+    wars.root: http://search.maven.org/remotecontent?filepath=io/brooklyn/example/brooklyn-example-hello-world-sql-webapp/{{ site.data.brooklyn.version }}/brooklyn-example-hello-world-sql-webapp-{{ site.data.brooklyn.version }}.war
+    java.sysprops:
+      brooklyn.example.db.url: >
+        $brooklyn:formatString("jdbc:%s%s?user=%s\\&password=%s",
+        component("db").attributeWhenReady("datastore.url"),
+        "visitors", "brooklyn", "br00k11n")
+
+- serviceType: brooklyn.entity.database.mysql.MySqlNode
+  id: db
+  name: My DB
+  brooklyn.config:
+    creationScriptUrl: https://bit.ly/brooklyn-visitors-creation-script
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/201818b0/docs/website/quickstart/catalog.xml
----------------------------------------------------------------------
diff --git a/docs/website/quickstart/catalog.xml b/docs/website/quickstart/catalog.xml
new file mode 100644
index 0000000..6cff554
--- /dev/null
+++ b/docs/website/quickstart/catalog.xml
@@ -0,0 +1,22 @@
+<catalog>
+    <name>Brooklyn Demos</name>
+
+
+    <template type="brooklyn.demo.WebClusterDatabaseExample" name="Demo Web Cluster with DB">
+      <description>Deploys a demonstration web application to a managed JBoss cluster with elasticity, persisting to a MySQL</description>
+      <iconUrl>http://downloads.cloudsoftcorp.com/brooklyn/catalog/logos/JBoss_by_Red_Hat.png</iconUrl>
+    </template>
+
+    <template type="brooklyn.demo.GlobalWebFabricExample" name="Demo GeoDNS Web Fabric DB">
+      <description>Deploys a demonstration web application to JBoss clusters around the world</description>
+      <iconUrl>http://downloads.cloudsoftcorp.com/brooklyn/catalog/logos/JBoss_by_Red_Hat.png</iconUrl>
+    </template>
+    
+    <classpath>
+      <entry>https://oss.sonatype.org/service/local/artifact/maven/redirect?r=releases&amp;g=io.brooklyn.example&amp;a=brooklyn-example-simple-web-cluster&amp;v=0.7.0-SNAPSHOT&amp;e=jar</entry> <!-- BROOKLYN_VERSION -->
+      <entry>https://oss.sonatype.org/service/local/artifact/maven/redirect?r=releases&amp;g=io.brooklyn.example&amp;a=brooklyn-example-global-web-fabric&amp;v=0.7.0-SNAPSHOT&amp;e=jar</entry> <!-- BROOKLYN_VERSION -->
+    </classpath>
+
+
+</catalog>
+

http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/201818b0/docs/website/quickstart/images/add-application-catalog-web-cluster-with-db-large.png
----------------------------------------------------------------------
diff --git a/docs/website/quickstart/images/add-application-catalog-web-cluster-with-db-large.png b/docs/website/quickstart/images/add-application-catalog-web-cluster-with-db-large.png
new file mode 100644
index 0000000..b566b1a
Binary files /dev/null and b/docs/website/quickstart/images/add-application-catalog-web-cluster-with-db-large.png differ

http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/201818b0/docs/website/quickstart/images/add-application-catalog-web-cluster-with-db-location-large.png
----------------------------------------------------------------------
diff --git a/docs/website/quickstart/images/add-application-catalog-web-cluster-with-db-location-large.png b/docs/website/quickstart/images/add-application-catalog-web-cluster-with-db-location-large.png
new file mode 100644
index 0000000..05e9b0c
Binary files /dev/null and b/docs/website/quickstart/images/add-application-catalog-web-cluster-with-db-location-large.png differ

http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/201818b0/docs/website/quickstart/images/add-application-catalog-web-cluster-with-db-location.png
----------------------------------------------------------------------
diff --git a/docs/website/quickstart/images/add-application-catalog-web-cluster-with-db-location.png b/docs/website/quickstart/images/add-application-catalog-web-cluster-with-db-location.png
new file mode 100644
index 0000000..c13fdd8
Binary files /dev/null and b/docs/website/quickstart/images/add-application-catalog-web-cluster-with-db-location.png differ

http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/201818b0/docs/website/quickstart/images/add-application-catalog-web-cluster-with-db.png
----------------------------------------------------------------------
diff --git a/docs/website/quickstart/images/add-application-catalog-web-cluster-with-db.png b/docs/website/quickstart/images/add-application-catalog-web-cluster-with-db.png
new file mode 100644
index 0000000..ebb6f42
Binary files /dev/null and b/docs/website/quickstart/images/add-application-catalog-web-cluster-with-db.png differ

http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/201818b0/docs/website/quickstart/images/add-application-modal-yaml.png
----------------------------------------------------------------------
diff --git a/docs/website/quickstart/images/add-application-modal-yaml.png b/docs/website/quickstart/images/add-application-modal-yaml.png
new file mode 100644
index 0000000..c50b7ab
Binary files /dev/null and b/docs/website/quickstart/images/add-application-modal-yaml.png differ

http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/201818b0/docs/website/quickstart/images/jboss7-cluster-policies-large.png
----------------------------------------------------------------------
diff --git a/docs/website/quickstart/images/jboss7-cluster-policies-large.png b/docs/website/quickstart/images/jboss7-cluster-policies-large.png
new file mode 100644
index 0000000..3d84477
Binary files /dev/null and b/docs/website/quickstart/images/jboss7-cluster-policies-large.png differ

http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/201818b0/docs/website/quickstart/images/jboss7-cluster-policies.png
----------------------------------------------------------------------
diff --git a/docs/website/quickstart/images/jboss7-cluster-policies.png b/docs/website/quickstart/images/jboss7-cluster-policies.png
new file mode 100644
index 0000000..2f85328
Binary files /dev/null and b/docs/website/quickstart/images/jboss7-cluster-policies.png differ

http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/201818b0/docs/website/quickstart/images/my-db-activities-large.png
----------------------------------------------------------------------
diff --git a/docs/website/quickstart/images/my-db-activities-large.png b/docs/website/quickstart/images/my-db-activities-large.png
new file mode 100644
index 0000000..c214d9e
Binary files /dev/null and b/docs/website/quickstart/images/my-db-activities-large.png differ

http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/201818b0/docs/website/quickstart/images/my-db-activities.png
----------------------------------------------------------------------
diff --git a/docs/website/quickstart/images/my-db-activities.png b/docs/website/quickstart/images/my-db-activities.png
new file mode 100644
index 0000000..0f2327c
Binary files /dev/null and b/docs/website/quickstart/images/my-db-activities.png differ

http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/201818b0/docs/website/quickstart/images/my-web-cluster-starting.png
----------------------------------------------------------------------
diff --git a/docs/website/quickstart/images/my-web-cluster-starting.png b/docs/website/quickstart/images/my-web-cluster-starting.png
new file mode 100644
index 0000000..c389b0b
Binary files /dev/null and b/docs/website/quickstart/images/my-web-cluster-starting.png differ

http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/201818b0/docs/website/quickstart/images/my-web-cluster-stop-confirm-large.png
----------------------------------------------------------------------
diff --git a/docs/website/quickstart/images/my-web-cluster-stop-confirm-large.png b/docs/website/quickstart/images/my-web-cluster-stop-confirm-large.png
new file mode 100644
index 0000000..c9bdab6
Binary files /dev/null and b/docs/website/quickstart/images/my-web-cluster-stop-confirm-large.png differ

http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/201818b0/docs/website/quickstart/images/my-web-cluster-stop-confirm.png
----------------------------------------------------------------------
diff --git a/docs/website/quickstart/images/my-web-cluster-stop-confirm.png b/docs/website/quickstart/images/my-web-cluster-stop-confirm.png
new file mode 100644
index 0000000..179b00a
Binary files /dev/null and b/docs/website/quickstart/images/my-web-cluster-stop-confirm.png differ

http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/201818b0/docs/website/quickstart/images/my-web-summary-large.png
----------------------------------------------------------------------
diff --git a/docs/website/quickstart/images/my-web-summary-large.png b/docs/website/quickstart/images/my-web-summary-large.png
new file mode 100644
index 0000000..fc4bffe
Binary files /dev/null and b/docs/website/quickstart/images/my-web-summary-large.png differ

http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/201818b0/docs/website/quickstart/images/my-web-summary.png
----------------------------------------------------------------------
diff --git a/docs/website/quickstart/images/my-web-summary.png b/docs/website/quickstart/images/my-web-summary.png
new file mode 100644
index 0000000..e85752f
Binary files /dev/null and b/docs/website/quickstart/images/my-web-summary.png differ

http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/201818b0/docs/website/quickstart/images/my-web.png
----------------------------------------------------------------------
diff --git a/docs/website/quickstart/images/my-web.png b/docs/website/quickstart/images/my-web.png
new file mode 100644
index 0000000..2bd6ac3
Binary files /dev/null and b/docs/website/quickstart/images/my-web.png differ

http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/201818b0/docs/website/quickstart/index.md
----------------------------------------------------------------------
diff --git a/docs/website/quickstart/index.md b/docs/website/quickstart/index.md
new file mode 100644
index 0000000..40a80b8
--- /dev/null
+++ b/docs/website/quickstart/index.md
@@ -0,0 +1,217 @@
+---
+title: Getting Started
+layout: website-normal
+children:
+- { path: policies-and-catalogs.md }
+---
+
+{% include fields.md %}
+
+This guide will walk you through deploying an application to a public cloud.
+
+We will be deploying an example 3-tier web application, described using this blueprint: 
+
+{% highlight yaml %}
+{% readj _my-web-cluster.yaml %}
+{% endhighlight %}
+
+(This is written in YAML, following the [camp specification](https://www.oasis-open.org/committees/camp/). )
+
+This tutorial assumes that you are using Linux or Mac OSX.
+
+
+## Verify SSH
+
+Brooklyn uses SSH extensively and therefore it is worth making sure that you have a known working SSH setup before
+starting.
+
+Please check the following items:
+
+- If you are using Mac OSX, open System Preferences, go to the Sharing item, and enable 'Remote Login'
+- You have a files named `~/.ssh/id_rsa` and `~/.ssh/id_rsa.pub`
+- `~/.ssh/id_rsa` is NOT readable by any other user
+  - You can verify this with `ls -l ~/.ssh/id_rsa` - the line should start with `-rw-------` or `-r--------`. If it
+    does not, execute `chmod 0600 ~/.ssh/id_rsa`.
+- The file `~/.ssh/authorized_keys` exists and contains a copy of your public key from `~/.ssh/id_rsa.pub`.
+  - Note that it is normal for it to contain other items as well.
+- The key in `~/.ssh/id_rsa` does *not* have a passphrase.
+  - You can test this by executing `ssh-keygen -y`. If it does *not* ask for a passphrase, then your key is OK.
+  - If your key does have a passphrase, remove it. You can do this by running `ssh-keygen -p`. Enter the passphrase,
+    then when prompted for the new passphrase, hit Enter.
+
+Now verify your setup by running the command: `ssh localhost echo hello world`
+
+If you see a message similar to this:
+
+<pre>
+The authenticity of host 'localhost (::1)' can't be established.
+RSA key fingerprint is 7b:e3:8e:c6:5b:2a:05:a1:7c:8a:cf:d1:6a:83:c2:ad.
+Are you sure you want to continue connecting (yes/no)?
+</pre>
+
+then answer 'yes', and then repeat the command run again.
+
+If the response is `hello world`, with no other output or prompts, then your SSH setup is good and Brooklyn should be
+able to use it without a problem.
+
+If these steps are not working, [these instructions]({{ site.path.guide }}/use/guide/locations/) may be
+useful.
+
+
+## Install Brooklyn
+
+Download the [Brooklyn distribution]({{ site.data.brooklyn.url.dist.tgz }}) and expand it to your home directory ( `~/` ), or in a location of your choice. (Other [download options]({{site.path.website}}/download.html) are available.)
+
+{% if brooklyn_version contains 'SNAPSHOT' %}
+Expand the `tar.gz` archive (note: as this is a -SNAPSHOT version, your filename will be slightly different):
+{% else %}
+Expand the `tar.gz` archive:
+{% endif %}
+
+{% if brooklyn_version contains 'SNAPSHOT' %}
+{% highlight bash %}
+$ tar -zxf brooklyn-dist-{{ site.data.brooklyn.version }}-timestamp-dist.tar.gz
+{% endhighlight %}
+{% else %}
+{% highlight bash %}
+$ tar -zxf brooklyn-dist-{{ site.data.brooklyn.version }}-dist.tar.gz
+{% endhighlight %}
+{% endif %}
+
+This will create a `brooklyn-{{ site.data.brooklyn.version }}` folder.
+
+Note: You'll need a Java JRE or SDK installed (version 6 or later), as Brooklyn is Java under the covers.
+
+## Launch Brooklyn
+
+Let's setup some paths for easy commands.
+
+(Click the clipboard on these code snippets for easier c&p.)
+
+{% highlight bash %}
+$ cd brooklyn-{{ site.data.brooklyn.version }}
+$ BROOKLYN_DIR="$(pwd)"
+$ export PATH=$PATH:$BROOKLYN_DIR/bin/
+{% endhighlight %}
+
+We can do a quick test drive by launching Brooklyn:
+
+{% highlight bash %}
+$ brooklyn launch
+{% endhighlight %}
+
+Brooklyn will output the address of the management interface:
+
+
+`INFO  Starting brooklyn web-console on loopback interface because no security config is set`
+
+`INFO  Started Brooklyn console at http://127.0.0.1:8081/, running classpath://brooklyn.war and []`
+
+But before we really use Brooklyn, we need to setup some Locations.
+ 
+Stop Brooklyn with ctrl-c.
+
+## Configuring a Location
+
+Brooklyn deploys applications to Locations.
+
+Locations can be clouds, machines with fixed IPs or localhost (for testing).
+
+Brooklyn loads Location configuration  from `~/.brooklyn/brooklyn.properties`. 
+
+Create a `.brooklyn` folder in your home directory and download the template [brooklyn.properties]({{brooklyn_properties_url_path}}) to that folder.
+
+{% highlight bash %}
+$ mkdir ~/.brooklyn
+$ cd ~/.brooklyn
+$ wget {{brooklyn_properties_url_live}}
+{% endhighlight %}
+
+Open brooklyn.properties in a text editor and add your cloud credentials.
+
+Restart Brooklyn:
+
+{% highlight bash %}
+$ brooklyn launch
+{% endhighlight %}
+
+## Launching an Application
+
+There are several ways to deploy a YAML blueprint (including specifying the blueprint on the command line or submitting it via the REST API).
+
+For now, we will simply copy-and-paste the raw YAML blueprint into the web console.
+
+Open the web console ([127.0.0.1:8081](http://127.0.0.1:8081)). As Brooklyn is not currently managing any applications the 'Create Application' dialog opens automatically. Select the YAML tab.
+
+![Brooklyn web console, showing the YAML tab of the Add Application dialog.](images/add-application-modal-yaml.png)
+
+
+### Chose your Cloud / Location
+
+Let's look again at our YAML blueprint:
+
+{% highlight yaml %}
+{% readj _my-web-cluster.yaml %}
+{% endhighlight %}
+
+Copy this document into the large text box on the YAML tab, labelled `Enter CAMP Plan YAML code here`. But *before* you
+submit it, we need to make a modification.
+
+Find the line near the top of the blueprint that starts `location:`. Change the line to name a location. For example,
+one of these lines:
+
+{% highlight yaml %}
+location: aws-ec2:us-east-1
+location: rackspace-cloudservers-us:ORD
+location: google-compute-engine:europe-west1-a
+location: localhost
+{% endhighlight %}
+
+**My Web Cluster Blueprint**
+
+With the modified YAML in the dialog, click 'Finish'. The dialog will close and Brooklyn will begin deploying your
+application. Your application will be shown as 'Starting' on the web console's front page.
+
+![My Web Cluster is STARTING.](images/my-web-cluster-starting.png)
+
+
+## Monitoring and Managing Applications
+
+Click on the application name, or open the Applications tab.
+
+We can explore the management hierarchy of the application, which will show us the entities it is composed of.
+
+ * My Web Cluster (A `BasicApplication`)
+     * My DB (A `MySqlNode`)
+     * My Web (A `ControlledDynamicWebAppCluster`)
+        * Cluster of JBoss7 Servers (A `DynamicWebAppCluster`)
+        * NginxController (An `NginxController`)
+
+
+
+Clicking on the 'My Web' entity will show the Summary tab. Here we can see if the cluster is ready to serve and, when ready, grab the web address for the front of the loadbalancer.
+
+![Exploring My Web.](images/my-web.png)
+
+
+The Activity tab allows us to drill down into what activities each entity is currently doing or has recently done. It is possible to drill down to all child tasks, and view the commands issued, and any errors or warnings that occured.
+
+Drill into the 'My DB' start operation. Working down through  'Start (processes)', then 'launch', we can discover the ssh command used including the stdin, stdout and stderr.
+
+[![My DB Activities.](images/my-db-activities.png)](images/my-db-activities-large.png)
+
+
+## Stopping the Application
+
+To stop an application, select the application in the tree view (the top/root entity), click on the Effectors tab, and invoke the 'Stop' effector. This will cleanly shutdown all components in the application and return any cloud machines that were being used.
+
+[![My DB Activities.](images/my-web-cluster-stop-confirm.png)](images/my-web-cluster-stop-confirm-large.png)
+
+
+### Next 
+
+So far we have touched on Brooklyn's ability to *deploy* an application blueprint to a cloud provider, but this a very small part of Brooklyn's capabilities!
+
+Brooklyn's real power is in using Policies to automatically *manage* applications. There is also the (very useful) ability to store a catalog of application blueprints, ready to go.
+
+[Getting Started - Policies and Catalogs](policies-and-catalogs.html)

http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/201818b0/docs/website/quickstart/policies-and-catalogs.md
----------------------------------------------------------------------
diff --git a/docs/website/quickstart/policies-and-catalogs.md b/docs/website/quickstart/policies-and-catalogs.md
new file mode 100644
index 0000000..021c0cd
--- /dev/null
+++ b/docs/website/quickstart/policies-and-catalogs.md
@@ -0,0 +1,67 @@
+---
+title: Policies and Catalogs
+layout: website-normal
+---
+
+In the [previous step](index.html) we downloaded Brooklyn and used it to deploy an application to a cloud, but at its heart Brooklyn is a policy driven *management* plane.
+
+Here we will introduce Polices using a simple demo app, which we will load from a Service Catalog.
+
+We strongly advise that you complete [the first tutorial](index.html) before proceeding with this one, to make sure that
+your machine is correctly configured to be able to run Brooklyn applications. Like the previous tutorial, we are also
+assuming that you are running Linux or Mac OSX.
+
+
+## Service Catalogs
+
+Download the template [catalog.xml](catalog.xml) to your `~/.brooklyn/` folder, and relaunch Brooklyn.
+
+{% highlight bash %}
+$ cd ~/.brooklyn
+$ wget {{site.url_root}}{{site.path.guide}}/use/guide/quickstart/catalog.xml
+
+$ brooklyn launch
+{% endhighlight %}
+
+Now when we open the web console, two applications are displayed from the catalog.
+
+Select the 'Demo Web Cluster with DB' and click 'Next'.
+
+[![Viewing Catalog entries in Add Application dialog.](images/add-application-catalog-web-cluster-with-db.png)](add-application-catalog-web-cluster-with-db-large.png)
+
+Select the Location that Brooklyn should deploy to, and name your application:
+
+[![Selecting a location and application name.](images/add-application-catalog-web-cluster-with-db-location.png)](images/add-application-catalog-web-cluster-with-db-location-large.png)
+
+Click 'Finish' to launch the application as before.
+
+
+### Exploring and Testing Policies
+
+The Demo Web Cluster with DB application is pre-configured with two polices.
+
+The app server cluster has an `AutoScalerPolicy`, and the loadbalancer has a `targets` policy.
+
+Use the Applications tab in the web console to drill down into the Policies section of the ControlledDynamicWebAppCluster's Cluster of JBoss7Servers.
+
+You will see that the `AutoScalerPolicy` is running.
+
+[![Inspecting the jboss7 cluster policies.](images/jboss7-cluster-policies.png)](images/jboss7-cluster-policies-large.png)
+
+
+This policy automatically scales the cluster up or down to be the right size for the cluster's current load. (One server is the minimum size allowed by the policy.)
+
+The loadbalancer's `targets` policy ensures that the loadbalancer is updated as the cluster size changes.
+
+Sitting idle, this cluster will only contain one server, but you can use a tool like [jmeter](http://jmeter.apache.org/) pointed at the nginx endpoint to create load on the cluster. (Download a [jmeter test plan](https://github.com/apache/incubator-brooklyn/blob/master/examples/simple-web-cluster/resources/jmeter-test-plan.jmx).)
+
+As load is added, Brooklyn requests a new cloud machine, creates a new app server, and adds it to the cluster. As load is removed, servers are removed from the cluster, and the infrastructure is handed back to the cloud.
+
+### Next
+
+The [Elastic Web Cluster Example]({{site.path.guide}}/use/examples/webcluster/index.html) page
+details how to build this demo application from scratch in Java. It shows in more detail how Brooklyn can
+complement your application with policy driven management, and how applications can be
+run from the command line.
+
+


Mime
View raw message