You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@whirr.apache.org by as...@apache.org on 2012/02/14 10:30:23 UTC

svn commit: r1243842 - in /whirr/trunk: ./ bin/ cli/src/main/java/org/apache/whirr/cli/command/ conf/ core/src/main/java/org/apache/whirr/ core/src/main/java/org/apache/whirr/command/ core/src/main/resources/ core/src/test/java/org/apache/whirr/command...

Author: asavu
Date: Tue Feb 14 09:30:22 2012
New Revision: 1243842

URL: http://svn.apache.org/viewvc?rev=1243842&view=rev
Log:
WHIRR-347. Support provider-independent environment variables for cloud credentials (asavu)

Added:
    whirr/trunk/conf/credentials.sample
    whirr/trunk/recipes/cassandra.properties
    whirr/trunk/recipes/elasticsearch.properties
    whirr/trunk/recipes/ganglia.properties
    whirr/trunk/recipes/hadoop.properties
    whirr/trunk/recipes/hama.properties
    whirr/trunk/recipes/hbase-0.90.properties
    whirr/trunk/recipes/hbase-cdh.properties
    whirr/trunk/recipes/hbase.properties
    whirr/trunk/recipes/mahout.properties
    whirr/trunk/recipes/puppet-http.properties
    whirr/trunk/recipes/voldemort.properties
    whirr/trunk/recipes/zookeeper.properties
Removed:
    whirr/trunk/recipes/cassandra-ec2.properties
    whirr/trunk/recipes/elasticsearch-ec2.properties
    whirr/trunk/recipes/elasticsearch-rackspace.properties
    whirr/trunk/recipes/ganglia-ec2.properties
    whirr/trunk/recipes/hadoop-ec2.properties
    whirr/trunk/recipes/hadoop-rackspace.properties
    whirr/trunk/recipes/hama-ec2.properties
    whirr/trunk/recipes/hbase-ec2-0.90.properties
    whirr/trunk/recipes/hbase-ec2-cdh.properties
    whirr/trunk/recipes/hbase-ec2.properties
    whirr/trunk/recipes/mahout-ec2.properties
    whirr/trunk/recipes/puppet-http-ec2.properties
    whirr/trunk/recipes/puppet-http-rackspace.properties
    whirr/trunk/recipes/voldemort-ec2.properties
    whirr/trunk/recipes/zookeeper-ec2.properties
Modified:
    whirr/trunk/.gitignore
    whirr/trunk/CHANGES.txt
    whirr/trunk/bin/whirr
    whirr/trunk/cli/src/main/java/org/apache/whirr/cli/command/CleanupClusterCommand.java
    whirr/trunk/cli/src/main/java/org/apache/whirr/cli/command/DestroyClusterCommand.java
    whirr/trunk/conf/   (props changed)
    whirr/trunk/core/src/main/java/org/apache/whirr/ClusterSpec.java
    whirr/trunk/core/src/main/java/org/apache/whirr/command/AbstractClusterCommand.java
    whirr/trunk/core/src/main/resources/whirr-default.properties
    whirr/trunk/core/src/test/java/org/apache/whirr/command/AbstractClusterCommandTest.java
    whirr/trunk/src/site/xdoc/quick-start-guide.xml
    whirr/trunk/src/site/xdoc/whirr-in-5-minutes.xml

Modified: whirr/trunk/.gitignore
URL: http://svn.apache.org/viewvc/whirr/trunk/.gitignore?rev=1243842&r1=1243841&r2=1243842&view=diff
==============================================================================
--- whirr/trunk/.gitignore (original)
+++ whirr/trunk/.gitignore Tue Feb 14 09:30:22 2012
@@ -8,3 +8,4 @@ target
 **/*.log
 services/voldemort/lib/
 whirr.log
+conf/credentials

Modified: whirr/trunk/CHANGES.txt
URL: http://svn.apache.org/viewvc/whirr/trunk/CHANGES.txt?rev=1243842&r1=1243841&r2=1243842&view=diff
==============================================================================
--- whirr/trunk/CHANGES.txt (original)
+++ whirr/trunk/CHANGES.txt Tue Feb 14 09:30:22 2012
@@ -53,6 +53,9 @@ Trunk (unreleased changes)
     WHIRR-422. Integration tests should fail or succeed in a limited 
     amount of time (asavu)
 
+    WHIRR-347. Support provider-independent environment variables for 
+    cloud credentials (asavu)
+
   BUG FIXES
 
     WHIRR-367. Wrong groupId for zookeeper (Joe Crobak via asavu)

Modified: whirr/trunk/bin/whirr
URL: http://svn.apache.org/viewvc/whirr/trunk/bin/whirr?rev=1243842&r1=1243841&r2=1243842&view=diff
==============================================================================
--- whirr/trunk/bin/whirr (original)
+++ whirr/trunk/bin/whirr Tue Feb 14 09:30:22 2012
@@ -24,6 +24,23 @@ case "`uname`" in
 	CYGWIN*) cygwin=true;
 esac
 
+if [ -e ~/.whirr/credentials ]; then
+    . ~/.whirr/credentials
+elif [ -e $BIN/../conf/credentials ]; then
+    . $BIN/../conf/credentials
+fi
+
+# Override cloud provider credentials as needed
+export WHIRR_PROVIDER=${WHIRR_PROVIDER:-$PROVIDER}
+export WHIRR_IDENTITY=${WHIRR_IDENTITY:-$IDENTITY}
+export WHIRR_CREDENTIAL=${WHIRR_CREDENTIAL:-$CREDENTIAL}
+
+# Override blob store credentials as needed
+export WHIRR_BLOBSTORE_PROVIDER=${WHIRR_BLOBSTORE_PROVIDER:-$BLOBSTORE_PROVIDER}
+export WHIRR_BLOBSTORE_IDENTITY=${WHIRR_BLOBSTORE_IDENTITY:-$BLOBSTORE_IDENTITY}
+export WHIRR_BLOBSTORE_CREDENTIAL=${WHIRR_BLOBSTORE_CREDENTIAL:-$BLOBSTORE_CREDENTIAL}
+
+# Build the classpath
 if [ -d "$BIN/../cli/target/lib" ]; then
   CLASSPATH="$BIN/../conf/:$BIN/..:$BIN/../cli/target/lib/*:$BIN/../cli/target/*"
 else
@@ -36,5 +53,8 @@ if $cygwin; then 
   CLASSPATH=`cygpath -wp $CLASSPATH`;
 fi
 
+echo Starting cluster on "$WHIRR_PROVIDER" using identity "$WHIRR_IDENTITY"
+
+# Start the application
 java $LOGGING_OPTS $WHIRR_CLI_OPTS -cp "$CLASSPATH" org.apache.whirr.cli.Main "$@"
  

Modified: whirr/trunk/cli/src/main/java/org/apache/whirr/cli/command/CleanupClusterCommand.java
URL: http://svn.apache.org/viewvc/whirr/trunk/cli/src/main/java/org/apache/whirr/cli/command/CleanupClusterCommand.java?rev=1243842&r1=1243841&r2=1243842&view=diff
==============================================================================
--- whirr/trunk/cli/src/main/java/org/apache/whirr/cli/command/CleanupClusterCommand.java (original)
+++ whirr/trunk/cli/src/main/java/org/apache/whirr/cli/command/CleanupClusterCommand.java Tue Feb 14 09:30:22 2012
@@ -52,7 +52,7 @@ public class CleanupClusterCommand exten
   public int run(InputStream in, PrintStream out, PrintStream err,
       List<String> args) throws Exception {
     
-    OptionSet optionSet = parser.parse(args.toArray(new String[0]));
+    OptionSet optionSet = parser.parse(args.toArray(new String[args.size()]));
     if (!optionSet.nonOptionArguments().isEmpty()) {
       printUsage(err);
       return -1;

Modified: whirr/trunk/cli/src/main/java/org/apache/whirr/cli/command/DestroyClusterCommand.java
URL: http://svn.apache.org/viewvc/whirr/trunk/cli/src/main/java/org/apache/whirr/cli/command/DestroyClusterCommand.java?rev=1243842&r1=1243841&r2=1243842&view=diff
==============================================================================
--- whirr/trunk/cli/src/main/java/org/apache/whirr/cli/command/DestroyClusterCommand.java (original)
+++ whirr/trunk/cli/src/main/java/org/apache/whirr/cli/command/DestroyClusterCommand.java Tue Feb 14 09:30:22 2012
@@ -46,7 +46,7 @@ public class DestroyClusterCommand exten
   public int run(InputStream in, PrintStream out, PrintStream err,
                  List<String> args) throws Exception {
 
-    OptionSet optionSet = parser.parse(args.toArray(new String[0]));
+    OptionSet optionSet = parser.parse(args.toArray(new String[args.size()]));
 
     if (!optionSet.nonOptionArguments().isEmpty()) {
       printUsage(err);

Propchange: whirr/trunk/conf/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Tue Feb 14 09:30:22 2012
@@ -0,0 +1 @@
+credentials

Added: whirr/trunk/conf/credentials.sample
URL: http://svn.apache.org/viewvc/whirr/trunk/conf/credentials.sample?rev=1243842&view=auto
==============================================================================
--- whirr/trunk/conf/credentials.sample (added)
+++ whirr/trunk/conf/credentials.sample Tue Feb 14 09:30:22 2012
@@ -0,0 +1,53 @@
+# 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.
+
+# In this file users can store their cloud login credentials for convenience
+# If this file exists it is sourced by Whirr scripts.
+#
+# Whirr will look for this file in the home directory first (~/.whirr/credentials)
+# If not found it will look for it in the conf directory.
+#
+# Preset environment variables will take precedence over these files.
+#
+# VARIABLES:
+#
+# PROVIDER - The cloud provider to use in Whirr
+# IDENTITY - The identity to use in Whirr
+# CREDENTIAL - The credential to use in Whirr
+#
+# BLOBSTORE_* - Overrides the base variables (e.g. PROVIDER) specifically for
+# blobstore contexts. Base variables are still used for compute access
+# If BLOBSTORE_* variables are not defined Whirr will use the base variables
+# for blobstore access.
+
+# Users can assign these variables the values they want to assign to
+# their WHIRR_* variable counterparts. If a WHIRR_* variable is found in env
+# then it takes precedence (to be able to do one-off overrides on recipes)
+# otherwise WHIRR_* variables take the value from this file. Finally .properties
+# files override both this file and previous env variables
+
+# Set cloud provider connection details
+
+PROVIDER=
+IDENTITY=
+CREDENTIAL=
+
+# Set blob store connection details. If not defined they are computed
+# from the cloud provider connection details defined above
+
+# BLOBSTORE_PROVIDER=
+# BLOBSTORE_IDENTITY=
+# BLOBSTORE_CREDENTIAL=
+

Modified: whirr/trunk/core/src/main/java/org/apache/whirr/ClusterSpec.java
URL: http://svn.apache.org/viewvc/whirr/trunk/core/src/main/java/org/apache/whirr/ClusterSpec.java?rev=1243842&r1=1243841&r2=1243842&view=diff
==============================================================================
--- whirr/trunk/core/src/main/java/org/apache/whirr/ClusterSpec.java (original)
+++ whirr/trunk/core/src/main/java/org/apache/whirr/ClusterSpec.java Tue Feb 14 09:30:22 2012
@@ -434,7 +434,8 @@ public class ClusterSpec {
       throws ConfigurationException {
     CompositeConfiguration composed = new CompositeConfiguration();
     composed.addConfiguration(userConfig);
-    composed.addConfiguration(new PropertiesConfiguration(getClass().getClassLoader().getResource(DEFAULT_PROPERTIES)));
+    composed.addConfiguration(new PropertiesConfiguration(
+        getClass().getClassLoader().getResource(DEFAULT_PROPERTIES)));
     return composed;
   }
 

Modified: whirr/trunk/core/src/main/java/org/apache/whirr/command/AbstractClusterCommand.java
URL: http://svn.apache.org/viewvc/whirr/trunk/core/src/main/java/org/apache/whirr/command/AbstractClusterCommand.java?rev=1243842&r1=1243841&r2=1243842&view=diff
==============================================================================
--- whirr/trunk/core/src/main/java/org/apache/whirr/command/AbstractClusterCommand.java (original)
+++ whirr/trunk/core/src/main/java/org/apache/whirr/command/AbstractClusterCommand.java Tue Feb 14 09:30:22 2012
@@ -18,22 +18,15 @@
 
 package org.apache.whirr.command;
 
-import static org.apache.whirr.ClusterSpec.Property.CLUSTER_NAME;
-import static org.apache.whirr.ClusterSpec.Property.IDENTITY;
-import static org.apache.whirr.ClusterSpec.Property.INSTANCE_TEMPLATES;
-
 import com.google.common.collect.Maps;
-
 import java.io.IOException;
 import java.io.PrintStream;
 import java.util.EnumSet;
 import java.util.Map;
-
 import joptsimple.ArgumentAcceptingOptionSpec;
 import joptsimple.OptionParser;
 import joptsimple.OptionSet;
 import joptsimple.OptionSpec;
-
 import org.apache.commons.configuration.CompositeConfiguration;
 import org.apache.commons.configuration.Configuration;
 import org.apache.commons.configuration.ConfigurationException;
@@ -43,6 +36,12 @@ import org.apache.whirr.ClusterControlle
 import org.apache.whirr.ClusterControllerFactory;
 import org.apache.whirr.ClusterSpec;
 import org.apache.whirr.ClusterSpec.Property;
+import static org.apache.whirr.ClusterSpec.Property.CLUSTER_NAME;
+import static org.apache.whirr.ClusterSpec.Property.CREDENTIAL;
+import static org.apache.whirr.ClusterSpec.Property.IDENTITY;
+import static org.apache.whirr.ClusterSpec.Property.INSTANCE_TEMPLATES;
+import static org.apache.whirr.ClusterSpec.Property.PRIVATE_KEY_FILE;
+import static org.apache.whirr.ClusterSpec.Property.PROVIDER;
 import org.apache.whirr.state.ClusterStateStore;
 import org.apache.whirr.state.ClusterStateStoreFactory;
 import org.slf4j.Logger;
@@ -100,12 +99,14 @@ public abstract class AbstractClusterCom
     for (Map.Entry<Property, OptionSpec<?>> entry : optionSpecs.entrySet()) {
       Property property = entry.getKey();
       OptionSpec<?> option = entry.getValue();
+      Object value;
       if (property.hasMultipleArguments()) {
-        optionsConfig.setProperty(property.getConfigName(),
-            optionSet.valuesOf(option));
+        value = optionSet.valuesOf(option);
       } else {
-        optionsConfig.setProperty(property.getConfigName(),
-            optionSet.valueOf(option));
+        value = optionSet.valueOf(option);
+      }
+      if (value != null) {
+        optionsConfig.setProperty(property.getConfigName(), value);
       }
     }
     CompositeConfiguration config = new CompositeConfiguration();
@@ -114,14 +115,17 @@ public abstract class AbstractClusterCom
       Configuration defaults = new PropertiesConfiguration(optionSet.valueOf(configOption));
       config.addConfiguration(defaults);
     }
+    ClusterSpec clusterSpec = new ClusterSpec(config);
 
-    for (Property required : EnumSet.of(CLUSTER_NAME, IDENTITY, INSTANCE_TEMPLATES)) {
-      if (config.getString(required.getConfigName()) == null) {
+    for (Property required : EnumSet.of(CLUSTER_NAME, PROVIDER, IDENTITY, CREDENTIAL,
+        INSTANCE_TEMPLATES, PRIVATE_KEY_FILE)) {
+      if (clusterSpec.getConfiguration().getString(required.getConfigName()) == null) {
         throw new IllegalArgumentException(String.format("Option '%s' not set.",
             required.getSimpleName()));
       }
     }
-    return new ClusterSpec(config);
+
+    return clusterSpec;
   }
 
   /**

Modified: whirr/trunk/core/src/main/resources/whirr-default.properties
URL: http://svn.apache.org/viewvc/whirr/trunk/core/src/main/resources/whirr-default.properties?rev=1243842&r1=1243841&r2=1243842&view=diff
==============================================================================
--- whirr/trunk/core/src/main/resources/whirr-default.properties (original)
+++ whirr/trunk/core/src/main/resources/whirr-default.properties Tue Feb 14 09:30:22 2012
@@ -15,6 +15,10 @@ whirr.private-key-file=${sys:user.home}/
 # whirr.public-key-file = ${whirr.private-key-file}.pub
 # this is created in ClusterSpec class constructor
 
+whirr.provider=${env:WHIRR_PROVIDER}
+whirr.identity=${env:WHIRR_IDENTITY}
+whirr.credential=${env:WHIRR_CREDENTIAL}
+
 whirr.version=${version}
 
 whirr.max-startup-retries=1

Modified: whirr/trunk/core/src/test/java/org/apache/whirr/command/AbstractClusterCommandTest.java
URL: http://svn.apache.org/viewvc/whirr/trunk/core/src/test/java/org/apache/whirr/command/AbstractClusterCommandTest.java?rev=1243842&r1=1243841&r2=1243842&view=diff
==============================================================================
--- whirr/trunk/core/src/test/java/org/apache/whirr/command/AbstractClusterCommandTest.java (original)
+++ whirr/trunk/core/src/test/java/org/apache/whirr/command/AbstractClusterCommandTest.java Tue Feb 14 09:30:22 2012
@@ -18,8 +18,11 @@
 
 package org.apache.whirr.command;
 
-import static org.hamcrest.Matchers.is;
-import static org.junit.Assert.assertThat;
+import joptsimple.OptionSet;
+import org.apache.whirr.ClusterControllerFactory;
+import org.apache.whirr.ClusterSpec;
+import org.apache.whirr.util.KeyPair;
+import org.junit.Test;
 
 import java.io.File;
 import java.io.InputStream;
@@ -27,12 +30,8 @@ import java.io.PrintStream;
 import java.util.List;
 import java.util.Map;
 
-import joptsimple.OptionSet;
-
-import org.apache.whirr.ClusterControllerFactory;
-import org.apache.whirr.ClusterSpec;
-import org.apache.whirr.util.KeyPair;
-import org.junit.Test;
+import static org.hamcrest.Matchers.is;
+import static org.junit.Assert.assertThat;
 
 public class AbstractClusterCommandTest {
 
@@ -62,6 +61,7 @@ public class AbstractClusterCommandTest 
    * Ensure that an invalid service name uses the default (after logging a
    * warning).
    */
+  @Test
   public void testCreateServerWithInvalidClusterControllerName() throws Exception {
     AbstractClusterCommand clusterCommand = new AbstractClusterCommand("name",
         "description", new ClusterControllerFactory()) {

Added: whirr/trunk/recipes/cassandra.properties
URL: http://svn.apache.org/viewvc/whirr/trunk/recipes/cassandra.properties?rev=1243842&view=auto
==============================================================================
--- whirr/trunk/recipes/cassandra.properties (added)
+++ whirr/trunk/recipes/cassandra.properties Tue Feb 14 09:30:22 2012
@@ -0,0 +1,43 @@
+#
+# 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.
+#
+
+#
+# Setup an Apache Cassandra Cluster
+# 
+
+# Read the Configuration Guide for more info:
+# http://whirr.apache.org/docs/latest/configuration-guide.html 
+
+# Change the cluster name here
+whirr.cluster-name=cassandra
+
+# Setup your cloud credentials by copying conf/credentials.sample
+# to ~/.whirr/credentials and editing as needed
+
+# Change the name of cluster admin user
+whirr.cluster-user=${sys:user.name}
+
+# Change the number of machines in the cluster here
+whirr.instance-templates=3 cassandra
+
+# By default use the user system SSH keys. Override them here.
+# whirr.private-key-file=${sys:user.home}/.ssh/id_rsa
+# whirr.public-key-file=${whirr.private-key-file}.pub
+
+# Expert: specify the version of Cassandra to install.
+#whirr.cassandra.version.major=1.0.7
+#whirr.cassandra.tarball.url=http://www.apache.org/dist/cassandra/1.0.7/apache-cassandra-1.0.7-bin.tar.gz

Added: whirr/trunk/recipes/elasticsearch.properties
URL: http://svn.apache.org/viewvc/whirr/trunk/recipes/elasticsearch.properties?rev=1243842&view=auto
==============================================================================
--- whirr/trunk/recipes/elasticsearch.properties (added)
+++ whirr/trunk/recipes/elasticsearch.properties Tue Feb 14 09:30:22 2012
@@ -0,0 +1,89 @@
+#
+# 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.
+#
+
+#
+# Setup an ElasticSearch Cluster
+# 
+
+# Read the Configuration Guide for more info:
+# http://whirr.apache.org/docs/latest/configuration-guide.html
+
+# Change the cluster name here
+whirr.cluster-name=elasticsearch
+
+# Change the name of cluster admin user
+whirr.cluster-user=${sys:user.name}
+
+# Setup your cloud credentials by copying conf/credentials.sample
+# to ~/.whirr/credentials and editing as needed
+
+# Change the number of machines in the cluster here
+whirr.instance-templates=2 elasticsearch
+whirr.hardware-min-ram=2048
+
+# By default use the user system SSH keys. Override them here.
+# whirr.private-key-file=${sys:user.home}/.ssh/id_rsa
+# whirr.public-key-file=${whirr.private-key-file}.pub
+
+# You can specify the version by setting the tarball url
+# whirr.elasticsearch.tarball.url=http://github.com/downloads/elasticsearch/elasticsearch/elasticsearch-0.15.2.tar.gz
+
+#
+# elasticsearch specific settings (Expert)
+#
+
+# 1. Gateway Persistence settings
+# See: http://www.elasticsearch.org/guide/reference/modules/gateway/
+# Defaults: the index is only stored in memory and all data is lost on shutdown
+
+# 1.1 Enable persistence on S3
+# See: http://www.elasticsearch.org/guide/reference/modules/gateway/s3.html
+
+# es.gateway.type=s3
+# es.gateway.s3.bucket: elasticsearch
+
+# 1.2 Enable persistence on the local filesystem
+# See: http://www.elasticsearch.org/guide/reference/modules/gateway/local.html
+
+# es.gateway.type=fs
+# es.gateway.recovery_after_nodes=1
+# es.gateway.recovery_after_time=5m
+# es.expected_nodes=2
+
+# 1.3 Enable persistence on HDFS
+# See: http://www.elasticsearch.org/guide/reference/modules/gateway/hadoop.html
+
+# es.gateway.type=hdfs
+# es.gateway.hdfs.uri=hdfs://myhost:8022
+# es.gateway.hdfs.path=/some/path
+
+# 2. Scripting Support
+# See: http://www.elasticsearch.org/guide/reference/modules/scripting.html
+# The scripting module uses by default mvel
+
+# Just add them to the list of installed plugins
+# es.plugins=lang-javascript, lang-groovy, lang-python,
+
+# 3. Memcached protocol support
+# See: http://www.elasticsearch.org/guide/reference/modules/memcached.html
+
+# es.plugins=transport-memcached
+
+# 4. Thrift protocol support
+# See: http://www.elasticsearch.org/guide/reference/modules/thrift.html
+
+# es.plugins=transport-thrift

Added: whirr/trunk/recipes/ganglia.properties
URL: http://svn.apache.org/viewvc/whirr/trunk/recipes/ganglia.properties?rev=1243842&view=auto
==============================================================================
--- whirr/trunk/recipes/ganglia.properties (added)
+++ whirr/trunk/recipes/ganglia.properties Tue Feb 14 09:30:22 2012
@@ -0,0 +1,38 @@
+#
+# 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.
+#
+
+#
+# Setup a Ganglia Cluster
+# 
+
+# Read the Configuration Guide for more info:
+# http://whirr.apache.org/docs/latest/configuration-guide.html 
+
+# Change the cluster name here
+whirr.cluster-name=ganglia
+
+# Change the number of machines in the cluster here
+# Also, setting up a cluster just for the sake of monitoring doesn't make much sense :)
+whirr.instance-templates=1 ganglia-metad, 2 ganglia-monitor
+
+# Setup your cloud credentials by copying conf/credentials.sample
+# to ~/.whirr/credentials and editing as needed
+
+# By default use the user system SSH keys. Override them here.
+# whirr.private-key-file=${sys:user.home}/.ssh/id_rsa
+# whirr.public-key-file=${whirr.private-key-file}.pub
+

Added: whirr/trunk/recipes/hadoop.properties
URL: http://svn.apache.org/viewvc/whirr/trunk/recipes/hadoop.properties?rev=1243842&view=auto
==============================================================================
--- whirr/trunk/recipes/hadoop.properties (added)
+++ whirr/trunk/recipes/hadoop.properties Tue Feb 14 09:30:22 2012
@@ -0,0 +1,97 @@
+#
+# 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.
+#
+
+#
+# Setup an Apache Hadoop Cluster
+# 
+
+# Read the Configuration Guide for more info:
+# http://whirr.apache.org/docs/latest/configuration-guide.html
+
+# Change the cluster name here
+whirr.cluster-name=hadoop
+
+# Change the name of cluster admin user
+whirr.cluster-user=${sys:user.name}
+
+# Change the number of machines in the cluster here
+whirr.instance-templates=1 hadoop-namenode+hadoop-jobtracker,5 hadoop-datanode+hadoop-tasktracker
+
+#
+# Customise instance type or template / AMI per instance template
+#
+
+# whirr.templates.hadoop-namenode+hadoop.jobtracker.hardware-id=m1.xlarge
+# whirr.templates.hadoop-datanode+hadoop.tasktracker.image-id=us-east-1/ami-da0cf8b3
+
+#
+# Uncomment out the following two lines to run CDH
+#
+
+#whirr.hadoop.install-function=install_cdh_hadoop
+#whirr.hadoop.configure-function=configure_cdh_hadoop
+
+#
+# Customise instance types & AMI for Amazon EC2
+#
+
+# Use a specific instance type. See http://aws.amazon.com/ec2/instance-types/
+# whirr.hardware-id=c1.xlarge
+
+# Ubuntu 10.04 LTS Lucid. See http://cloud.ubuntu.com/ami/
+# whirr.image-id=us-east-1/ami-35de095c
+
+# You can also specify the spot instance price: http://aws.amazon.com/ec2/spot-instances/
+# whirr.aws-ec2-spot-price=0.15
+
+#
+# Or for Rackspace Cloud
+#
+
+# The size of the instance to use. See http://www.rackspacecloud.com/cloud_hosting_products/servers/faq/
+# id 3: 1GB, 1 virtual core
+# id 4: 2GB, 2 virtual cores
+# id 5: 4GB, 2 virtual cores
+# id 6: 8GB, 4 virtual cores
+# id 7: 15.5GB, 4 virtual cores
+# whirr.hardware-id=6
+# Ubuntu 10.04 LTS Lucid
+# whirr.image-id=49
+
+#
+# By default use the user system SSH keys. Override them here.
+#
+
+# whirr.private-key-file=${sys:user.home}/.ssh/id_rsa
+# whirr.public-key-file=${whirr.private-key-file}.pub
+
+#
+# Expert: override Hadoop properties by setting properties with the prefix
+#
+
+# hadoop-common, hadoop-hdfs, hadoop-mapreduce to set Common, HDFS, MapReduce
+# site properties, respectively. The prefix is removed by Whirr, so that for
+# example, setting 
+# hadoop-common.fs.trash.interval=1440
+# will result in fs.trash.interval being set to 1440 in core-site.xml.
+
+#
+# Expert: specify the version of Hadoop to install.
+#
+
+#whirr.hadoop.version=0.20.2
+#whirr.hadoop.tarball.url=http://archive.apache.org/dist/hadoop/core/hadoop-${whirr.hadoop.version}/hadoop-${whirr.hadoop.version}.tar.gz

Added: whirr/trunk/recipes/hama.properties
URL: http://svn.apache.org/viewvc/whirr/trunk/recipes/hama.properties?rev=1243842&view=auto
==============================================================================
--- whirr/trunk/recipes/hama.properties (added)
+++ whirr/trunk/recipes/hama.properties Tue Feb 14 09:30:22 2012
@@ -0,0 +1,72 @@
+#
+# 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.
+#
+
+#
+# Start a Hama Cluster
+# 
+
+# Read the Configuration Guide for more info:
+# http://whirr.apache.org/docs/latest/configuration-guide.html
+
+# Change the cluster name here
+whirr.cluster-name=hama
+
+# Change the number of machines in the cluster here
+whirr.instance-templates=1 zookeeper+hadoop-namenode+hadoop-jobtracker+hama-master,5 hadoop-datanode+hadoop-tasktracker+hama-groomserver
+
+# Setup your cloud credentials by copying conf/credentials.sample
+# to ~/.whirr/credentials and editing as needed
+
+#
+# Customise instance types & AMI for Amazon EC2
+#
+
+# Use a specific instance type. See http://aws.amazon.com/ec2/instance-types/
+# whirr.hardware-id=c1.xlarge
+
+# Ubuntu 10.04 LTS Lucid. See http://cloud.ubuntu.com/ami/
+# whirr.image-id=us-east-1/ami-35de095c
+
+# You can also specify the spot instance price: http://aws.amazon.com/ec2/spot-instances/
+# whirr.aws-ec2-spot-price=0.15
+
+#
+# Or for Rackspace Cloud
+#
+
+# The size of the instance to use. See http://www.rackspacecloud.com/cloud_hosting_products/servers/faq/
+# id 3: 1GB, 1 virtual core
+# id 4: 2GB, 2 virtual cores
+# id 5: 4GB, 2 virtual cores
+# id 6: 8GB, 4 virtual cores
+# id 7: 15.5GB, 4 virtual cores
+# whirr.hardware-id=6
+# Ubuntu 10.04 LTS Lucid
+# whirr.image-id=49
+
+#
+# By default use the user system SSH keys. Override them here.
+#
+
+# whirr.private-key-file=${sys:user.home}/.ssh/id_rsa
+# whirr.public-key-file=${whirr.private-key-file}.pub
+
+#
+# Expert: specify the version of Hama to install.
+#
+
+#whirr.hama.tarball.url=http://archive.apache.org/dist/incubator/hama/0.3-incubating/hama-0.3.0-incubating.tar.gz

Added: whirr/trunk/recipes/hbase-0.90.properties
URL: http://svn.apache.org/viewvc/whirr/trunk/recipes/hbase-0.90.properties?rev=1243842&view=auto
==============================================================================
--- whirr/trunk/recipes/hbase-0.90.properties (added)
+++ whirr/trunk/recipes/hbase-0.90.properties Tue Feb 14 09:30:22 2012
@@ -0,0 +1,80 @@
+#
+# 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.
+#
+
+#
+# HBase 0.90.x on Cloudera Hadoop Cluster
+# 
+
+# Read the Configuration Guide for more info:
+# http://whirr.apache.org/docs/latest/configuration-guide.html
+
+# Change the cluster name here
+whirr.cluster-name=hbase-0.90
+
+# Change the number of machines in the cluster here
+whirr.instance-templates=1 zookeeper+hadoop-namenode+hadoop-jobtracker+hbase-master,3 hadoop-datanode+hadoop-tasktracker+hbase-regionserver
+
+# Setup your cloud credentials by copying conf/credentials.sample
+# to ~/.whirr/credentials and editing as needed
+
+# replication level should not be higher than number of data nodes
+hbase-site.dfs.replication=2
+
+#
+# Customise instance types & AMI for Amazon EC2
+#
+
+# Use a specific instance type. See http://aws.amazon.com/ec2/instance-types/
+# whirr.hardware-id=c1.xlarge
+
+# Ubuntu 10.04 LTS Lucid. See http://cloud.ubuntu.com/ami/
+# whirr.image-id=us-east-1/ami-35de095c
+
+# You can also specify the spot instance price: http://aws.amazon.com/ec2/spot-instances/
+# whirr.aws-ec2-spot-price=0.15
+
+#
+# Or for Rackspace Cloud
+#
+
+# The size of the instance to use. See http://www.rackspacecloud.com/cloud_hosting_products/servers/faq/
+# id 3: 1GB, 1 virtual core
+# id 4: 2GB, 2 virtual cores
+# id 5: 4GB, 2 virtual cores
+# id 6: 8GB, 4 virtual cores
+# id 7: 15.5GB, 4 virtual cores
+# whirr.hardware-id=6
+# Ubuntu 10.04 LTS Lucid
+# whirr.image-id=49
+
+# By default use the user system SSH keys. Override them here.
+# whirr.private-key-file=${sys:user.home}/.ssh/id_rsa
+# whirr.public-key-file=${whirr.private-key-file}.pub
+
+# The HBase version to use.
+whirr.hbase.tarball.url=http://apache.cu.be/hbase/hbase-0.90.3/hbase-0.90.3.tar.gz
+
+# The Hadoop version to use. See http://hbase.apache.org/book/hadoop.html
+# The default Hadoop version used by Whirr does not fulfill the HBase 0.90.x requirements.
+# Whirr will replace the hadoop-core jar in HBase with the one from the actually installed Hadoop.
+# This example uses Cloudera's CDH3.
+whirr.hadoop.tarball.url=http://archive.cloudera.com/cdh/3/hadoop-0.20.2-cdh3u1.tar.gz
+
+# Options for the hbase master & regionserver processes
+#hbase-env.HBASE_MASTER_OPTS=-Xms1000m -Xmx1000m -Xmn256m -XX:+UseConcMarkSweepGC -XX:+AggressiveOpts -verbose:gc -XX:+PrintGCDetails -XX:+PrintGCTimeStamps -Xloggc:/data/hbase/logs/hbase-master-gc.log
+#hbase-env.HBASE_MASTER_OPTS=-Xms2000m -Xmx2000m -Xmn256m -XX:+UseConcMarkSweepGC -XX:CMSInitiatingOccupancyFraction=88 -XX:+AggressiveOpts -verbose:gc -XX:+PrintGCDetails -XX:+PrintGCTimeStamps -Xloggc:/data/hbase/logs/hbase-regionserver-gc.log
+

Added: whirr/trunk/recipes/hbase-cdh.properties
URL: http://svn.apache.org/viewvc/whirr/trunk/recipes/hbase-cdh.properties?rev=1243842&view=auto
==============================================================================
--- whirr/trunk/recipes/hbase-cdh.properties (added)
+++ whirr/trunk/recipes/hbase-cdh.properties Tue Feb 14 09:30:22 2012
@@ -0,0 +1,77 @@
+#
+# 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.
+#
+
+#
+# HBase CDH install
+#
+
+whirr.cluster-name=hbase-cdh
+
+whirr.instance-templates=1 zookeeper+hadoop-namenode+hadoop-jobtracker+hbase-master,1 hadoop-datanode+hadoop-tasktracker+hbase-regionserver
+
+# Setup your cloud credentials by copying conf/credentials.sample
+# to ~/.whirr/credentials and editing as needed
+
+# replication level should not be higher than number of data nodes
+hbase-site.dfs.replication=1
+
+#custom CDH zookeeper install and configure functions
+whirr.zookeeper.install-function=install_cdh_zookeeper
+whirr.zookeeper.configure-function=configure_cdh_zookeeper
+
+#custom CDH hadoop install and configure functions
+whirr.hadoop.install-function=install_cdh_hadoop
+whirr.hadoop.configure-function=configure_cdh_hadoop
+
+#custom CDH hbase install and configure functions
+whirr.hbase.install-function=install_cdh_hbase
+whirr.hbase.configure-function=configure_cdh_hbase
+
+#
+# Customise instance types & AMI for Amazon EC2
+#
+
+# Use a specific instance type. See http://aws.amazon.com/ec2/instance-types/
+# whirr.hardware-id=c1.xlarge
+
+# Ubuntu 10.04 LTS Lucid. See http://cloud.ubuntu.com/ami/
+# whirr.image-id=us-east-1/ami-35de095c
+
+# You can also specify the spot instance price: http://aws.amazon.com/ec2/spot-instances/
+# whirr.aws-ec2-spot-price=0.15
+
+#
+# Or for Rackspace Cloud
+#
+
+# The size of the instance to use. See http://www.rackspacecloud.com/cloud_hosting_products/servers/faq/
+# id 3: 1GB, 1 virtual core
+# id 4: 2GB, 2 virtual cores
+# id 5: 4GB, 2 virtual cores
+# id 6: 8GB, 4 virtual cores
+# id 7: 15.5GB, 4 virtual cores
+# whirr.hardware-id=6
+# Ubuntu 10.04 LTS Lucid
+# whirr.image-id=49
+
+# By default use the user system SSH keys. Override them here.
+# whirr.private-key-file=${sys:user.home}/.ssh/id_rsa
+# whirr.public-key-file=${whirr.private-key-file}.pub
+
+# Options for the hbase master & regionserver processes
+#hbase-env.HBASE_MASTER_OPTS=-Xms1000m -Xmx1000m -Xmn256m -XX:+UseConcMarkSweepGC -XX:+AggressiveOpts -verbose:gc -XX:+PrintGCDetails -XX:+PrintGCTimeStamps -Xloggc:/data/hbase/logs/hbase-master-gc.log
+#hbase-env.HBASE_REGIONSERVER_OPTS=-Xms2000m -Xmx2000m -Xmn256m -XX:+UseConcMarkSweepGC -XX:CMSInitiatingOccupancyFraction=88 -XX:+AggressiveOpts -verbose:gc -XX:+PrintGCDetails -XX:+PrintGCTimeStamps -Xloggc:/data/hbase/logs/hbase-regionserver-gc.log

Added: whirr/trunk/recipes/hbase.properties
URL: http://svn.apache.org/viewvc/whirr/trunk/recipes/hbase.properties?rev=1243842&view=auto
==============================================================================
--- whirr/trunk/recipes/hbase.properties (added)
+++ whirr/trunk/recipes/hbase.properties Tue Feb 14 09:30:22 2012
@@ -0,0 +1,71 @@
+#
+# 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.
+#
+
+#
+# Deploy an Apache HBase Cluster
+# 
+
+# Read the Configuration Guide for more info:
+# http://whirr.apache.org/docs/latest/configuration-guide.html
+
+# Change the cluster name here
+whirr.cluster-name=hbase
+
+# Change the number of machines in the cluster here
+whirr.instance-templates=1 zookeeper+hadoop-namenode+hadoop-jobtracker+hbase-master,5 hadoop-datanode+hadoop-tasktracker+hbase-regionserver
+
+# Setup your cloud credentials by copying conf/credentials.sample
+# to ~/.whirr/credentials and editing as needed
+
+#
+# Customise instance types & AMI for Amazon EC2
+#
+
+# Use a specific instance type. See http://aws.amazon.com/ec2/instance-types/
+# whirr.hardware-id=c1.xlarge
+
+# Ubuntu 10.04 LTS Lucid. See http://cloud.ubuntu.com/ami/
+# whirr.image-id=us-east-1/ami-35de095c
+
+# You can also specify the spot instance price: http://aws.amazon.com/ec2/spot-instances/
+# whirr.aws-ec2-spot-price=0.15
+
+#
+# Or for Rackspace Cloud
+#
+
+# The size of the instance to use. See http://www.rackspacecloud.com/cloud_hosting_products/servers/faq/
+# id 3: 1GB, 1 virtual core
+# id 4: 2GB, 2 virtual cores
+# id 5: 4GB, 2 virtual cores
+# id 6: 8GB, 4 virtual cores
+# id 7: 15.5GB, 4 virtual cores
+# whirr.hardware-id=6
+# Ubuntu 10.04 LTS Lucid
+# whirr.image-id=49
+
+# By default use the user system SSH keys. Override them here.
+# whirr.private-key-file=${sys:user.home}/.ssh/id_rsa
+# whirr.public-key-file=${whirr.private-key-file}.pub
+
+# Expert: specify the version of HBase to install.
+#whirr.hbase.tarball.url=http://archive.apache.org/dist/hbase/hbase-0.89.20100924/hbase-0.89.20100924-bin.tar.gz
+
+# Options for the hbase master & regionserver processes
+#hbase-env.HBASE_MASTER_OPTS=-Xms1000m -Xmx1000m -Xmn256m -XX:+UseConcMarkSweepGC -XX:+AggressiveOpts -verbose:gc -XX:+PrintGCDetails -XX:+PrintGCTimeStamps -Xloggc:/data/hbase/logs/hbase-master-gc.log
+#hbase-env.HBASE_REGIONSERVER_OPTS=-Xms2000m -Xmx2000m -Xmn256m -XX:+UseConcMarkSweepGC -XX:CMSInitiatingOccupancyFraction=88 -XX:+AggressiveOpts -verbose:gc -XX:+PrintGCDetails -XX:+PrintGCTimeStamps -Xloggc:/data/hbase/logs/hbase-regionserver-gc.log
+

Added: whirr/trunk/recipes/mahout.properties
URL: http://svn.apache.org/viewvc/whirr/trunk/recipes/mahout.properties?rev=1243842&view=auto
==============================================================================
--- whirr/trunk/recipes/mahout.properties (added)
+++ whirr/trunk/recipes/mahout.properties Tue Feb 14 09:30:22 2012
@@ -0,0 +1,68 @@
+#
+# 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.
+#
+
+# Deploy an Apache Hadoop cluster with Mahout
+
+# Read the Configuration Guide for more info:
+# http://whirr.apache.org/docs/latest/configuration-guide.html
+
+# Change the cluster name here
+whirr.cluster-name=mahout
+
+whirr.instance-templates=1 hadoop-jobtracker+hadoop-namenode+mahout-client,1 hadoop-datanode+hadoop-tasktracker
+
+whirr.mahout.version=0.5
+whirr.mahout.tarball.url=http://archive.apache.org/dist/mahout/${whirr.mahout.version}/mahout-distribution-${whirr.mahout.version}.tar.gz
+
+# Setup your cloud credentials by copying conf/credentials.sample
+# to ~/.whirr/credentials and editing as needed
+
+#
+# Customise instance types & AMI for Amazon EC2
+#
+
+# Use a specific instance type. See http://aws.amazon.com/ec2/instance-types/
+# whirr.hardware-id=c1.xlarge
+
+# Ubuntu 10.04 LTS Lucid. See http://cloud.ubuntu.com/ami/
+# whirr.image-id=us-east-1/ami-35de095c
+
+# You can also specify the spot instance price: http://aws.amazon.com/ec2/spot-instances/
+# whirr.aws-ec2-spot-price=0.15
+
+#
+# Or for Rackspace Cloud
+#
+
+# The size of the instance to use. See http://www.rackspacecloud.com/cloud_hosting_products/servers/faq/
+# id 3: 1GB, 1 virtual core
+# id 4: 2GB, 2 virtual cores
+# id 5: 4GB, 2 virtual cores
+# id 6: 8GB, 4 virtual cores
+# id 7: 15.5GB, 4 virtual cores
+# whirr.hardware-id=6
+# Ubuntu 10.04 LTS Lucid
+# whirr.image-id=49
+
+#
+# By default use the user system SSH keys. Override them here.
+#
+
+# whirr.private-key-file=${sys:user.home}/.ssh/id_rsa
+# whirr.public-key-file=${whirr.private-key-file}.pub
+
+

Added: whirr/trunk/recipes/puppet-http.properties
URL: http://svn.apache.org/viewvc/whirr/trunk/recipes/puppet-http.properties?rev=1243842&view=auto
==============================================================================
--- whirr/trunk/recipes/puppet-http.properties (added)
+++ whirr/trunk/recipes/puppet-http.properties Tue Feb 14 09:30:22 2012
@@ -0,0 +1,48 @@
+#
+# 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.
+#
+#
+# Puppet managed http cluster
+# 
+
+# Read the Configuration Guide for more info:
+# http://whirr.apache.org/docs/latest/configuration-guide.html 
+
+# Change the cluster name here
+whirr.cluster-name=puppettest
+
+# Change the number of machines in the cluster here
+whirr.instance-templates=1 puppet:apache+puppet:ntp
+whirr.firewall-rules=80
+
+# Setup your cloud credentials by copying conf/credentials.sample
+# to ~/.whirr/credentials and editing as needed
+
+# with puppet, you need to specify where to pull the modules from
+puppet.apache.module=git://github.com/metcalfc/puppet-apache.git
+puppet.ntp.module=git://github.com/puppetlabs/puppetlabs-ntp.git
+
+# with puppet, you can set class parameters
+ntp.servers=[ '0.pool.ntp.org', 'clock.redhat.com' ]
+ntp.autoupdate=true
+
+# By default use the user system SSH keys. Override them here.
+# whirr.private-key-file=${sys:user.home}/.ssh/id_rsa
+# whirr.public-key-file=${whirr.private-key-file}.pub
+
+# Expert: specify alternate module sources instead of from git
+#puppet.http.module=/tmp/git-puppetlabs-http.tgz

Added: whirr/trunk/recipes/voldemort.properties
URL: http://svn.apache.org/viewvc/whirr/trunk/recipes/voldemort.properties?rev=1243842&view=auto
==============================================================================
--- whirr/trunk/recipes/voldemort.properties (added)
+++ whirr/trunk/recipes/voldemort.properties Tue Feb 14 09:30:22 2012
@@ -0,0 +1,44 @@
+#
+# 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.
+#
+
+#
+# Deploy a Voldemort cluster
+# 
+
+# Read the Configuration Guide for more info:
+# http://whirr.apache.org/docs/latest/configuration-guide.html
+
+# Change the cluster name here
+whirr.cluster-name=voldemort
+
+# Change the number of machines in the cluster here
+whirr.instance-templates=2 voldemort 
+
+# Setup your cloud credentials by copying conf/credentials.sample
+# to ~/.whirr/credentials and editing as needed
+
+# By default use the user system SSH keys. Override them here.
+# whirr.private-key-file=${sys:user.home}/.ssh/id_rsa
+# whirr.public-key-file=${whirr.private-key-file}.pub
+
+# By default we use a stock build and configuration, but these can be overridden
+# by providing URLs for the build and configuration. Note: the configuration is
+# a flat hierarchy, there are no expected sub-directories in whirr.voldemort.conf.url, 
+# just the two files server.properties and stores.xml.
+#whirr.voldemort.tarball.url=http://www.example.com/my/custom/build/of/voldemort.tar.gz
+#whirr.voldemort.conf.url=http://www.example.com/my/custom/voldemort/config.tar.gz
+

Added: whirr/trunk/recipes/zookeeper.properties
URL: http://svn.apache.org/viewvc/whirr/trunk/recipes/zookeeper.properties?rev=1243842&view=auto
==============================================================================
--- whirr/trunk/recipes/zookeeper.properties (added)
+++ whirr/trunk/recipes/zookeeper.properties Tue Feb 14 09:30:22 2012
@@ -0,0 +1,40 @@
+#
+# 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.
+#
+
+#
+# Deploy an Apache ZooKeeper cluster
+# 
+
+# Read the Configuration Guide for more info:
+# http://whirr.apache.org/docs/latest/configuration-guide.html
+
+# Change the cluster name here
+whirr.cluster-name=zookeeper
+
+# Change the number of machines in the cluster here
+whirr.instance-templates=3 zookeeper
+
+# Setup your cloud credentials by copying conf/credentials.sample
+# to ~/.whirr/credentials and editing as needed
+
+# By default use the user system SSH keys. Override them here.
+# whirr.private-key-file=${sys:user.home}/.ssh/id_rsa
+# whirr.public-key-file=${whirr.private-key-file}.pub
+
+# Specify tarball url
+# whirr.zookeeper.tarball.url=http://archive.apache.org/dist/zookeeper/zookeeper-3.3.3/zookeeper-3.3.3.tar.gz
+

Modified: whirr/trunk/src/site/xdoc/quick-start-guide.xml
URL: http://svn.apache.org/viewvc/whirr/trunk/src/site/xdoc/quick-start-guide.xml?rev=1243842&r1=1243841&r2=1243842&view=diff
==============================================================================
--- whirr/trunk/src/site/xdoc/quick-start-guide.xml (original)
+++ whirr/trunk/src/site/xdoc/quick-start-guide.xml Tue Feb 14 09:30:22 2012
@@ -50,6 +50,15 @@ xsi:schemaLocation="http://maven.apache.
     <p>Which will display the version of Whirr that is installed.</p>
     <p>To get usage instructions type:</p>
     <source>% bin/whirr</source>
+
+    <h4>Setup your Credentials</h4>
+
+    <source>% mkdir -p ~/.whirr
+    % cp conf/credentials.sample ~/.whirr/credentials
+    </source>
+
+    <p>Edit ~/.whirr/credentials using your editor of choice and add the API
+    connection credentials as required.</p>
     
     <h4>Configure a Hadoop cluster</h4>
 
@@ -64,8 +73,6 @@ xsi:schemaLocation="http://maven.apache.
 whirr.cluster-name=myhadoopcluster 
 whirr.instance-templates=1 hadoop-jobtracker+hadoop-namenode,1 hadoop-datanode+hadoop-tasktracker 
 whirr.provider=aws-ec2
-whirr.identity=${env:AWS_ACCESS_KEY_ID} 
-whirr.credential=${env:AWS_SECRET_ACCESS_KEY}
 whirr.private-key-file=${sys:user.home}/.ssh/id_rsa
 whirr.public-key-file=${sys:user.home}/.ssh/id_rsa.pub
 </source>

Modified: whirr/trunk/src/site/xdoc/whirr-in-5-minutes.xml
URL: http://svn.apache.org/viewvc/whirr/trunk/src/site/xdoc/whirr-in-5-minutes.xml?rev=1243842&r1=1243841&r2=1243842&view=diff
==============================================================================
--- whirr/trunk/src/site/xdoc/whirr-in-5-minutes.xml (original)
+++ whirr/trunk/src/site/xdoc/whirr-in-5-minutes.xml Tue Feb 14 09:30:22 2012
@@ -26,8 +26,10 @@ xsi:schemaLocation="http://maven.apache.
     your AWS credentials can be found in the 
     <a href="http://whirr.apache.org/faq.html#how-do-i-find-my-cloud-credentials">FAQ</a>.</p>
     <source>
-export AWS_ACCESS_KEY_ID=... 
-export AWS_SECRET_ACCESS_KEY=... 
+export WHIRR_PROVIDER=aws-ec2
+export WHIRR_IDENTITY=$AWS_ACCESS_KEY_ID
+export WHIRR_CREDENTIAL=$AWS_SECRET_ACCESS_KEY
+# or create ~/.whirr/credentials similar to conf/credentials.sample
 
 curl -O http://www.apache.org/dist/whirr/whirr-0.8.0/whirr-0.8.0.tar.gz
 tar zxf whirr-0.8.0.tar.gz; cd whirr-0.8.0