You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@brooklyn.apache.org by al...@apache.org on 2015/08/06 18:32:23 UTC

[09/26] incubator-brooklyn git commit: [BROOKLYN-162] Renaming of the NoSQL packages

http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/d5cf5285/software/nosql/src/main/resources/brooklyn/entity/nosql/riak/app.config
----------------------------------------------------------------------
diff --git a/software/nosql/src/main/resources/brooklyn/entity/nosql/riak/app.config b/software/nosql/src/main/resources/brooklyn/entity/nosql/riak/app.config
deleted file mode 100644
index 7ee8a37..0000000
--- a/software/nosql/src/main/resources/brooklyn/entity/nosql/riak/app.config
+++ /dev/null
@@ -1,353 +0,0 @@
-%% Brooklyn note: file from 1.4.8 Mac install, with erlang section added, and ports templated
-
-%% -*- mode: erlang;erlang-indent-level: 4;indent-tabs-mode: nil -*-
-%% ex: ft=erlang ts=4 sw=4 et
-[
- %% Riak Client APIs config
- {riak_api, [
-            %% pb_backlog is the maximum length to which the queue of pending
-            %% connections may grow. If set, it must be an integer >= 0.
-            %% By default the value is 5. If you anticipate a huge number of
-            %% connections being initialised *simultaneously*, set this number
-            %% higher.
-            %% {pb_backlog, 64},
-             
-            %% pb is a list of IP addresses and TCP ports that the Riak 
-            %% Protocol Buffers interface will bind.
-            {pb, [ {"0.0.0.0", ${entity.riakPbPort?c} } ]}
-            ]},
-
- %% Riak Core config
- {riak_core, [
-              %% Default location of ringstate
-              {ring_state_dir, "./data/ring"},
-
-              %% Default ring creation size.  Make sure it is a power of 2,
-              %% e.g. 16, 32, 64, 128, 256, 512 etc
-              %{ring_creation_size, 64},
-
-              %% http is a list of IP addresses and TCP ports that the Riak
-              %% HTTP interface will bind.
-              {http, [ {"0.0.0.0", ${entity.riakWebPort?c} } ]},
-
-              %% https is a list of IP addresses and TCP ports that the Riak
-              %% HTTPS interface will bind.
-              %{https, [{ "0.0.0.0", ${entity.riakWebPort?c} }]},
-
-              %% Default cert and key locations for https can be overridden
-              %% with the ssl config variable, for example:
-              %{ssl, [
-              %       {certfile, "./etc/cert.pem"},
-              %       {keyfile, "./etc/key.pem"}
-              %      ]},
-
-              %% riak_handoff_port is the TCP port that Riak uses for
-              %% intra-cluster data handoff.
-              {handoff_port, ${entity.handoffListenerPort?c} },
-
-              %% To encrypt riak_core intra-cluster data handoff traffic,
-              %% uncomment the following line and edit its path to an
-              %% appropriate certfile and keyfile.  (This example uses a
-              %% single file with both items concatenated together.)
-              %{handoff_ssl_options, [{certfile, "/tmp/erlserver.pem"}]},
-
-              %% DTrace support
-              %% Do not enable 'dtrace_support' unless your Erlang/OTP
-              %% runtime is compiled to support DTrace.  DTrace is
-              %% available in R15B01 (supported by the Erlang/OTP
-              %% official source package) and in R14B04 via a custom
-              %% source repository & branch.
-              {dtrace_support, false},
-
-              %% Health Checks
-              %% If disabled, health checks registered by an application will
-              %% be ignored. NOTE: this option cannot be changed at runtime.
-              %% To re-enable, the setting must be changed and the node restarted.
-              %% NOTE: As of Riak 1.3.2, health checks are deprecated as they
-              %% may interfere with the new overload protection mechanisms.
-              %% If there is a good reason to re-enable them, you must uncomment
-              %% this line and also add an entry in the riak_kv section:
-              %%          {riak_kv, [ ..., {enable_health_checks, true}, ...]}
-              %% {enable_health_checks, true},
-
-              %% Platform-specific installation paths (substituted by rebar)
-              {platform_bin_dir, "./bin"},
-              {platform_data_dir, "./data"},
-              {platform_etc_dir, "./etc"},
-              {platform_lib_dir, "./lib"},
-              {platform_log_dir, "./log"}
-             ]},
-
- %% Riak KV config
- {riak_kv, [
-            %% Storage_backend specifies the Erlang module defining the storage
-            %% mechanism that will be used on this node.
-            {storage_backend, riak_kv_bitcask_backend},
-
-            %% raw_name is the first part of all URLS used by the Riak raw HTTP
-            %% interface.  See riak_web.erl and raw_http_resource.erl for
-            %% details.
-            %{raw_name, "riak"},
-
-            %% Enable active anti-entropy subsystem + optional debug messages:
-            %%   {anti_entropy, {on|off, []}},
-            %%   {anti_entropy, {on|off, [debug]}},
-            {anti_entropy, {on, []}},
-
-            %% Restrict how fast AAE can build hash trees. Building the tree
-            %% for a given partition requires a full scan over that partition's
-            %% data. Once built, trees stay built until they are expired.
-            %% Config is of the form:
-            %%   {num-builds, per-timespan-in-milliseconds}
-            %% Default is 1 build per hour.
-            {anti_entropy_build_limit, {1, 3600000}},
-
-            %% Determine how often hash trees are expired after being built.
-            %% Periodically expiring a hash tree ensures the on-disk hash tree
-            %% data stays consistent with the actual k/v backend data. It also
-            %% helps Riak identify silent disk failures and bit rot. However,
-            %% expiration is not needed for normal AAE operation and should be
-            %% infrequent for performance reasons. The time is specified in
-            %% milliseconds. The default is 1 week.
-            {anti_entropy_expire, 604800000},
-
-            %% Limit how many AAE exchanges/builds can happen concurrently.
-            {anti_entropy_concurrency, 2},
-
-            %% The tick determines how often the AAE manager looks for work
-            %% to do (building/expiring trees, triggering exchanges, etc).
-            %% The default is every 15 seconds. Lowering this value will
-            %% speedup the rate that all replicas are synced across the cluster.
-            %% Increasing the value is not recommended.
-            {anti_entropy_tick, 15000},
-
-            %% The directory where AAE hash trees are stored.
-            {anti_entropy_data_dir, "./data/anti_entropy"},
-
-            %% The LevelDB options used by AAE to generate the LevelDB-backed
-            %% on-disk hashtrees.
-            {anti_entropy_leveldb_opts, [{write_buffer_size, 4194304},
-                                         {max_open_files, 20}]},
-
-            %% mapred_name is URL used to submit map/reduce requests to Riak.
-            {mapred_name, "mapred"},
-
-            %% mapred_2i_pipe indicates whether secondary-index
-            %% MapReduce inputs are queued in parallel via their own
-            %% pipe ('true'), or serially via a helper process
-            %% ('false' or undefined).  Set to 'false' or leave
-            %% undefined during a rolling upgrade from 1.0.
-            {mapred_2i_pipe, true},
-
-            %% Each of the following entries control how many Javascript
-            %% virtual machines are available for executing map, reduce,
-            %% pre- and post-commit hook functions.
-            {map_js_vm_count, 8 },
-            {reduce_js_vm_count, 6 },
-            {hook_js_vm_count, 2 },
-
-            %% js_max_vm_mem is the maximum amount of memory, in megabytes,
-            %% allocated to the Javascript VMs. If unset, the default is
-            %% 8MB.
-            {js_max_vm_mem, 8},
-
-            %% js_thread_stack is the maximum amount of thread stack, in megabyes,
-            %% allocate to the Javascript VMs. If unset, the default is 16MB.
-            %% NOTE: This is not the same as the C thread stack.
-            {js_thread_stack, 16},
-
-            %% js_source_dir should point to a directory containing Javascript
-            %% source files which will be loaded by Riak when it initializes
-            %% Javascript VMs.
-            %{js_source_dir, "/tmp/js_source"},
-
-            %% http_url_encoding determines how Riak treats URL encoded
-            %% buckets, keys, and links over the REST API. When set to 'on'
-            %% Riak always decodes encoded values sent as URLs and Headers.
-            %% Otherwise, Riak defaults to compatibility mode where links
-            %% are decoded, but buckets and keys are not. The compatibility
-            %% mode will be removed in a future release.
-            {http_url_encoding, on},
-
-            %% Switch to vnode-based vclocks rather than client ids.  This
-            %% significantly reduces the number of vclock entries.
-            %% Only set true if *all* nodes in the cluster are upgraded to 1.0
-            {vnode_vclocks, true},
-
-            %% This option toggles compatibility of keylisting with 1.0
-            %% and earlier versions.  Once a rolling upgrade to a version
-            %% > 1.0 is completed for a cluster, this should be set to
-            %% true for better control of memory usage during key listing
-            %% operations
-            {listkeys_backpressure, true},
-
-            %% This option specifies how many of each type of fsm may exist
-            %% concurrently.  This is for overload protection and is a new
-            %% mechanism that obsoletes 1.3's health checks. Note that this number
-            %% represents two potential processes, so +P in vm.args should be at 
-            %% least 3X the fsm_limit.
-            {fsm_limit, 50000},
-
-            %% Uncomment to make non-paginated results be sorted the
-            %% same way paginated results are: by term, then key.
-            %% In Riak 1.4.* before 1.4.4, all results were sorted this way
-            %% by default, which can adversely affect performance in some cases.
-            %% Setting this to true emulates that behavior.
-            %% {secondary_index_sort_default, true},
-
-            %% object_format controls which binary representation of a riak_object 
-            %% is stored on disk.
-            %% Current options are: v0, v1.
-            %% v0: Original erlang:term_to_binary format. Higher space overhead.
-            %% v1: New format for more compact storage of small values.
-            {object_format, v1}
-           ]},
-
- %% Riak Search Config
- {riak_search, [
-                %% To enable Search functionality set this 'true'.
-                {enabled, false}
-               ]},
-
- %% Merge Index Config
- {merge_index, [
-                %% The root dir to store search merge_index data
-                {data_root, "./data/merge_index"},
-
-                %% Size, in bytes, of the in-memory buffer.  When this
-                %% threshold has been reached the data is transformed
-                %% into a segment file which resides on disk.
-                {buffer_rollover_size, 1048576},
-
-                %% Overtime the segment files need to be compacted.
-                %% This is the maximum number of segments that will be
-                %% compacted at once.  A lower value will lead to
-                %% quicker but more frequent compactions.
-                {max_compact_segments, 20}
-               ]},
-
- %% Bitcask Config
- {bitcask, [
-             %% Configure how Bitcask writes data to disk.
-             %%   erlang: Erlang's built-in file API
-             %%      nif: Direct calls to the POSIX C API
-             %%
-             %% The NIF mode provides higher throughput for certain
-             %% workloads, but has the potential to negatively impact
-             %% the Erlang VM, leading to higher worst-case latencies
-             %% and possible throughput collapse.
-             {io_mode, erlang},
-
-             {data_root, "./data/bitcask"}
-           ]},
-
- %% eLevelDB Config
- {eleveldb, [
-             {data_root, "./data/leveldb"}
-            ]},
-
- %% Lager Config
- {lager, [
-            %% What handlers to install with what arguments
-            %% The defaults for the logfiles are to rotate the files when
-            %% they reach 10Mb or at midnight, whichever comes first, and keep
-            %% the last 5 rotations. See the lager README for a description of
-            %% the time rotation format:
-            %% https://github.com/basho/lager/blob/master/README.org
-            %%
-            %% If you wish to disable rotation, you can either set the size to 0
-            %% and the rotation time to "", or instead specify a 2-tuple that only
-            %% consists of {Logfile, Level}.
-            %%
-            %% If you wish to have riak log messages to syslog, you can use a handler
-            %% like this:
-            %%   {lager_syslog_backend, ["riak", daemon, info]},
-            %%
-            {handlers, [ 
-                           {lager_file_backend, [ 
-                               {"./log/error.log", error, 10485760, "$D0", 5}, 
-                               {"./log/console.log", info, 10485760, "$D0", 5} 
-                           ]} 
-                       ] },
-
-            %% Whether to write a crash log, and where.
-            %% Commented/omitted/undefined means no crash logger.
-            {crash_log, "./log/crash.log"},
-
-            %% Maximum size in bytes of events in the crash log - defaults to 65536
-            {crash_log_msg_size, 65536},
-
-            %% Maximum size of the crash log in bytes, before its rotated, set
-            %% to 0 to disable rotation - default is 0
-            {crash_log_size, 10485760},
-
-            %% What time to rotate the crash log - default is no time
-            %% rotation. See the lager README for a description of this format:
-            %% https://github.com/basho/lager/blob/master/README.org
-            {crash_log_date, "$D0"},
-
-            %% Number of rotated crash logs to keep, 0 means keep only the
-            %% current one - default is 0
-            {crash_log_count, 5},
-
-            %% Whether to redirect error_logger messages into lager - defaults to true
-            {error_logger_redirect, true},
-
-            %% maximum number of error_logger messages to handle in a second
-            %% lager 2.0.0 shipped with a limit of 50, which is a little low for riak's startup
-            {error_logger_hwm, 100}
-        ]},
-
- %% riak_sysmon config
- {riak_sysmon, [
-         %% To disable forwarding events of a particular type, use a
-         %% limit of 0.
-         {process_limit, 30},
-         {port_limit, 2},
-
-         %% Finding reasonable limits for a given workload is a matter
-         %% of experimentation.
-         %% NOTE: Enabling the 'gc_ms_limit' monitor (by setting non-zero)
-         %%       can cause performance problems on multi-CPU systems.
-         {gc_ms_limit, 0},
-         {heap_word_limit, 40111000},
-
-         %% Configure the following items to 'false' to disable logging
-         %% of that event type.
-         {busy_port, true},
-         {busy_dist_port, true}
-        ]},
-
- %% SASL config
- {sasl, [
-         {sasl_error_logger, false}
-        ]},
-
- %% riak_control config
- {riak_control, [
-                %% Set to false to disable the admin panel.
-                {enabled, true},
-
-                %% Authentication style used for access to the admin
-                %% panel. Valid styles are 'userlist' <TODO>.
-                {auth, userlist},
-
-                %% If auth is set to 'userlist' then this is the
-                %% list of usernames and passwords for access to the
-                %% admin panel.
-                {userlist, [{"user", "pass"}
-                           ]},
-
-                %% The admin panel is broken up into multiple
-                %% components, each of which is enabled or disabled
-                %% by one of these settings.
-                {admin, true}
-                ]},
- 
- %% erlang, constrain port range so we can open the internal firewall ports               
- { kernel, [
-            {inet_dist_listen_min, ${entity.erlangPortRangeStart?c}},
-            {inet_dist_listen_max, ${entity.erlangPortRangeEnd?c}}
-          ]}
-
-].

http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/d5cf5285/software/nosql/src/main/resources/brooklyn/entity/nosql/riak/riak-cluster-with-solr.yaml
----------------------------------------------------------------------
diff --git a/software/nosql/src/main/resources/brooklyn/entity/nosql/riak/riak-cluster-with-solr.yaml b/software/nosql/src/main/resources/brooklyn/entity/nosql/riak/riak-cluster-with-solr.yaml
deleted file mode 100644
index 93ef146..0000000
--- a/software/nosql/src/main/resources/brooklyn/entity/nosql/riak/riak-cluster-with-solr.yaml
+++ /dev/null
@@ -1,35 +0,0 @@
-#
-# 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.
-#
-
-name: Cluster Riak & Solr
-location:
-  jclouds:aws-ec2:us-east-1:
-    osFamily: centos
-    osVersionRegex: 6\..*
-services:
-- type: brooklyn.entity.nosql.riak.RiakCluster
-  initialSize: 2
-  memberSpec:
-    $brooklyn:entitySpec:
-      type: brooklyn.entity.nosql.riak.RiakNode
-      searchEnabled: true
-  brooklyn.config:
-    provisioning.properties:
-      minCores: 2
-      minRam: 6gb
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/d5cf5285/software/nosql/src/main/resources/brooklyn/entity/nosql/riak/riak-mac.conf
----------------------------------------------------------------------
diff --git a/software/nosql/src/main/resources/brooklyn/entity/nosql/riak/riak-mac.conf b/software/nosql/src/main/resources/brooklyn/entity/nosql/riak/riak-mac.conf
deleted file mode 100644
index d123000..0000000
--- a/software/nosql/src/main/resources/brooklyn/entity/nosql/riak/riak-mac.conf
+++ /dev/null
@@ -1,494 +0,0 @@
-## Brooklyn note: file from 2.0.1 Mac install, with erlang section added, and ports templated
-
-## Where to emit the default log messages (typically at 'info'
-## severity):
-## off: disabled
-## file: the file specified by log.console.file
-## console: to standard output (seen when using `riak attach-direct`)
-## both: log.console.file and standard out.
-##
-## Default: file
-##
-## Acceptable values:
-##   - one of: off, file, console, both
-log.console = file
-
-## The severity level of the console log, default is 'info'.
-##
-## Default: info
-##
-## Acceptable values:
-##   - one of: debug, info, notice, warning, error, critical, alert, emergency, none
-log.console.level = info
-
-## When 'log.console' is set to 'file' or 'both', the file where
-## console messages will be logged.
-##
-## Default: $(platform_log_dir)/console.log
-##
-## Acceptable values:
-##   - the path to a file
-log.console.file = $(platform_log_dir)/console.log
-
-## The file where error messages will be logged.
-##
-## Default: $(platform_log_dir)/error.log
-##
-## Acceptable values:
-##   - the path to a file
-log.error.file = $(platform_log_dir)/error.log
-
-## When set to 'on', enables log output to syslog.
-##
-## Default: off
-##
-## Acceptable values:
-##   - on or off
-log.syslog = off
-
-## Whether to enable the crash log.
-##
-## Default: on
-##
-## Acceptable values:
-##   - on or off
-log.crash = on
-
-## If the crash log is enabled, the file where its messages will
-## be written.
-##
-## Default: $(platform_log_dir)/crash.log
-##
-## Acceptable values:
-##   - the path to a file
-log.crash.file = $(platform_log_dir)/crash.log
-
-## Maximum size in bytes of individual messages in the crash log
-##
-## Default: 64KB
-##
-## Acceptable values:
-##   - a byte size with units, e.g. 10GB
-log.crash.maximum_message_size = 64KB
-
-## Maximum size of the crash log in bytes, before it is rotated
-##
-## Default: 10MB
-##
-## Acceptable values:
-##   - a byte size with units, e.g. 10GB
-log.crash.size = 10MB
-
-## The schedule on which to rotate the crash log.  For more
-## information see:
-## https://github.com/basho/lager/blob/master/README.md#internal-log-rotation
-##
-## Default: $D0
-##
-## Acceptable values:
-##   - text
-log.crash.rotation = $D0
-
-## The number of rotated crash logs to keep. When set to
-## 'current', only the current open log file is kept.
-##
-## Default: 5
-##
-## Acceptable values:
-##   - an integer
-##   - the text "current"
-log.crash.rotation.keep = 5
-
-## Name of the Erlang node
-##
-## Default: riak@127.0.0.1
-##
-## Acceptable values:
-##   - text
-nodename = riak@${driver.hostname}
-
-## Cookie for distributed node communication.  All nodes in the
-## same cluster should use the same cookie or they will not be able to
-## communicate.
-##
-## Default: riak
-##
-## Acceptable values:
-##   - text
-distributed_cookie = riak
-
-## Sets the number of threads in async thread pool, valid range
-## is 0-1024. If thread support is available, the default is 64.
-## More information at: http://erlang.org/doc/man/erl.html
-##
-## Default: 64
-##
-## Acceptable values:
-##   - an integer
-erlang.async_threads = 64
-
-## The number of concurrent ports/sockets
-## Valid range is 1024-134217727
-##
-## Default: 65536
-##
-## Acceptable values:
-##   - an integer
-erlang.max_ports = 65536
-
-## Set scheduler forced wakeup interval. All run queues will be
-## scanned each Interval milliseconds. While there are sleeping
-## schedulers in the system, one scheduler will be woken for each
-## non-empty run queue found. An Interval of zero disables this
-## feature, which also is the default.
-## This feature is a workaround for lengthy executing native code, and
-## native code that do not bump reductions properly.
-## More information: http://www.erlang.org/doc/man/erl.html#+sfwi
-##
-## Acceptable values:
-##   - an integer
-## erlang.schedulers.force_wakeup_interval = 500
-
-## Enable or disable scheduler compaction of load. By default
-## scheduler compaction of load is enabled. When enabled, load
-## balancing will strive for a load distribution which causes as many
-## scheduler threads as possible to be fully loaded (i.e., not run out
-## of work). This is accomplished by migrating load (e.g. runnable
-## processes) into a smaller set of schedulers when schedulers
-## frequently run out of work. When disabled, the frequency with which
-## schedulers run out of work will not be taken into account by the
-## load balancing logic.
-## More information: http://www.erlang.org/doc/man/erl.html#+scl
-##
-## Acceptable values:
-##   - one of: true, false
-## erlang.schedulers.compaction_of_load = false
-
-## Enable or disable scheduler utilization balancing of load. By
-## default scheduler utilization balancing is disabled and instead
-## scheduler compaction of load is enabled which will strive for a
-## load distribution which causes as many scheduler threads as
-## possible to be fully loaded (i.e., not run out of work). When
-## scheduler utilization balancing is enabled the system will instead
-## try to balance scheduler utilization between schedulers. That is,
-## strive for equal scheduler utilization on all schedulers.
-## More information: http://www.erlang.org/doc/man/erl.html#+sub
-##
-## Acceptable values:
-##   - one of: true, false
-## erlang.schedulers.utilization_balancing = true
-
-## Number of partitions in the cluster (only valid when first
-## creating the cluster). Must be a power of 2, minimum 8 and maximum
-## 1024.
-##
-## Default: 64
-##
-## Acceptable values:
-##   - an integer
-## ring_size = 64
-
-## Number of concurrent node-to-node transfers allowed.
-##
-## Default: 2
-##
-## Acceptable values:
-##   - an integer
-## transfer_limit = 2
-
-## Default cert location for https can be overridden
-## with the ssl config variable, for example:
-##
-## Acceptable values:
-##   - the path to a file
-## ssl.certfile = $(platform_etc_dir)/cert.pem
-
-## Default key location for https can be overridden with the ssl
-## config variable, for example:
-##
-## Acceptable values:
-##   - the path to a file
-## ssl.keyfile = $(platform_etc_dir)/key.pem
-
-## Default signing authority location for https can be overridden
-## with the ssl config variable, for example:
-##
-## Acceptable values:
-##   - the path to a file
-## ssl.cacertfile = $(platform_etc_dir)/cacertfile.pem
-
-## DTrace support Do not enable 'dtrace' unless your Erlang/OTP
-## runtime is compiled to support DTrace.  DTrace is available in
-## R15B01 (supported by the Erlang/OTP official source package) and in
-## R14B04 via a custom source repository & branch.
-##
-## Default: off
-##
-## Acceptable values:
-##   - on or off
-dtrace = off
-
-## Platform-specific installation paths (substituted by rebar)
-##
-## Default: ./bin
-##
-## Acceptable values:
-##   - the path to a directory
-platform_bin_dir = ./bin
-
-##
-## Default: ./data
-##
-## Acceptable values:
-##   - the path to a directory
-platform_data_dir = ./data
-
-##
-## Default: ./etc
-##
-## Acceptable values:
-##   - the path to a directory
-platform_etc_dir = ./etc
-
-##
-## Default: ./lib
-##
-## Acceptable values:
-##   - the path to a directory
-platform_lib_dir = ./lib
-
-##
-## Default: ./log
-##
-## Acceptable values:
-##   - the path to a directory
-platform_log_dir = ./log
-
-## Enable consensus subsystem. Set to 'on' to enable the
-## consensus subsystem used for strongly consistent Riak operations.
-##
-## Default: off
-##
-## Acceptable values:
-##   - on or off
-## strong_consistency = on
-
-## listener.http.<name> is an IP address and TCP port that the Riak
-## HTTP interface will bind.
-##
-## Default: 127.0.0.1:8098
-##
-## Acceptable values:
-##   - an IP/port pair, e.g. 127.0.0.1:10011
-listener.http.internal = 0.0.0.0:${entity.riakWebPort?c}
-
-## listener.protobuf.<name> is an IP address and TCP port that the Riak
-## Protocol Buffers interface will bind.
-##
-## Default: 127.0.0.1:8087
-##
-## Acceptable values:
-##   - an IP/port pair, e.g. 127.0.0.1:10011
-listener.protobuf.internal = 0.0.0.0:${entity.riakPbPort?c}
-
-## The maximum length to which the queue of pending connections
-## may grow. If set, it must be an integer > 0. If you anticipate a
-## huge number of connections being initialized *simultaneously*, set
-## this number higher.
-##
-## Default: 128
-##
-## Acceptable values:
-##   - an integer
-## protobuf.backlog = 128
-
-## listener.https.<name> is an IP address and TCP port that the Riak
-## HTTPS interface will bind.
-##
-## Acceptable values:
-##   - an IP/port pair, e.g. 127.0.0.1:10011
-## listener.https.internal = 127.0.0.1:8098
-
-## How Riak will repair out-of-sync keys. Some features require
-## this to be set to 'active', including search.
-## * active: out-of-sync keys will be repaired in the background
-## * passive: out-of-sync keys are only repaired on read
-## * active-debug: like active, but outputs verbose debugging
-## information
-##
-## Default: active
-##
-## Acceptable values:
-##   - one of: active, passive, active-debug
-anti_entropy = active
-
-## Specifies the storage engine used for Riak's key-value data
-## and secondary indexes (if supported).
-##
-## Default: bitcask
-##
-## Acceptable values:
-##   - one of: bitcask, leveldb, memory, multi
-storage_backend = bitcask
-
-## Controls which binary representation of a riak value is stored
-## on disk.
-## * 0: Original erlang:term_to_binary format. Higher space overhead.
-## * 1: New format for more compact storage of small values.
-##
-## Default: 1
-##
-## Acceptable values:
-##   - the integer 1
-##   - the integer 0
-object.format = 1
-
-## Reading or writing objects bigger than this size will write a
-## warning in the logs.
-##
-## Default: 5MB
-##
-## Acceptable values:
-##   - a byte size with units, e.g. 10GB
-object.size.warning_threshold = 5MB
-
-## Writing an object bigger than this will send a failure to the
-## client.
-##
-## Default: 50MB
-##
-## Acceptable values:
-##   - a byte size with units, e.g. 10GB
-object.size.maximum = 50MB
-
-## Writing an object with more than this number of siblings will
-## generate a warning in the logs.
-##
-## Default: 25
-##
-## Acceptable values:
-##   - an integer
-object.siblings.warning_threshold = 25
-
-## Writing an object with more than this number of siblings will
-## send a failure to the client.
-##
-## Default: 100
-##
-## Acceptable values:
-##   - an integer
-object.siblings.maximum = 100
-
-## A path under which bitcask data files will be stored.
-##
-## Default: $(platform_data_dir)/bitcask
-##
-## Acceptable values:
-##   - the path to a directory
-bitcask.data_root = $(platform_data_dir)/bitcask
-
-## Configure how Bitcask writes data to disk.
-## erlang: Erlang's built-in file API
-## nif: Direct calls to the POSIX C API
-## The NIF mode provides higher throughput for certain
-## workloads, but has the potential to negatively impact
-## the Erlang VM, leading to higher worst-case latencies
-## and possible throughput collapse.
-##
-## Default: erlang
-##
-## Acceptable values:
-##   - one of: erlang, nif
-bitcask.io_mode = erlang
-
-## Set to 'off' to disable the admin panel.
-##
-## Default: off
-##
-## Acceptable values:
-##   - on or off
-riak_control = on
-
-## Authentication mode used for access to the admin panel.
-##
-## Default: off
-##
-## Acceptable values:
-##   - one of: off, userlist
-riak_control.auth.mode = off
-
-## If riak control's authentication mode (riak_control.auth.mode)
-## is set to 'userlist' then this is the list of usernames and
-## passwords for access to the admin panel.
-## To create users with given names, add entries of the format:
-## riak_control.auth.user.USERNAME.password = PASSWORD
-## replacing USERNAME with the desired username and PASSWORD with the
-## desired password for that user.
-##
-## Acceptable values:
-##   - text
-## riak_control.auth.user.admin.password = pass
-
-## This parameter defines the percentage of total server memory
-## to assign to LevelDB. LevelDB will dynamically adjust its internal
-## cache sizes to stay within this size.  The memory size can
-## alternately be assigned as a byte count via leveldb.maximum_memory
-## instead.
-##
-## Default: 70
-##
-## Acceptable values:
-##   - an integer
-leveldb.maximum_memory.percent = 70
-
-## To enable Search set this 'on'.
-##
-## Default: off
-##
-## Acceptable values:
-##   - on or off
-search = off
-
-## How long Riak will wait for Solr to start. The start sequence
-## will be tried twice. If both attempts timeout, then the Riak node
-## will be shutdown. This may need to be increased as more data is
-## indexed and Solr takes longer to start. Values lower than 1s will
-## be rounded up to the minimum 1s.
-##
-## Default: 30s
-##
-## Acceptable values:
-##   - a time duration with units, e.g. '10s' for 10 seconds
-search.solr.start_timeout = 30s
-
-## The port number which Solr binds to.
-## NOTE: Binds on every interface.
-##
-## Default: 8093
-##
-## Acceptable values:
-##   - an integer
-search.solr.port = ${entity.searchSolrPort?c}
-
-## The port number which Solr JMX binds to.
-## NOTE: Binds on every interface.
-##
-## Default: 8985
-##
-## Acceptable values:
-##   - an integer
-search.solr.jmx_port = ${entity.searchSolrJmxPort?c}
-
-## The options to pass to the Solr JVM.  Non-standard options,
-## i.e. -XX, may not be portable across JVM implementations.
-## E.g. -XX:+UseCompressedStrings
-##
-## Default: -d64 -Xms1g -Xmx1g -XX:+UseStringCache -XX:+UseCompressedOops
-##
-## Acceptable values:
-##   - text
-search.solr.jvm_options = -d64 -Xms1g -Xmx1g -XX:+UseStringCache -XX:+UseCompressedOops
-
-## erlang, constrain port range so we can open the internal firewall ports
-erlang.distribution.port_range.minimum = ${entity.erlangPortRangeStart?c}
-erlang.distribution.port_range.maximum = ${entity.erlangPortRangeEnd?c}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/d5cf5285/software/nosql/src/main/resources/brooklyn/entity/nosql/riak/riak-with-webapp-cluster.yaml
----------------------------------------------------------------------
diff --git a/software/nosql/src/main/resources/brooklyn/entity/nosql/riak/riak-with-webapp-cluster.yaml b/software/nosql/src/main/resources/brooklyn/entity/nosql/riak/riak-with-webapp-cluster.yaml
deleted file mode 100644
index 6767cb7..0000000
--- a/software/nosql/src/main/resources/brooklyn/entity/nosql/riak/riak-with-webapp-cluster.yaml
+++ /dev/null
@@ -1,42 +0,0 @@
-#
-# 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.
-#
-
-name: Riak Cluster with Webapp Cluster
-location: jclouds:softlayer:sjc01
-services:
-- type: brooklyn.entity.nosql.riak.RiakCluster
-  initialSize: 2
-  id: cluster
-  brooklyn.config:
-    install.version: 2.0.0
-- type: brooklyn.entity.webapp.ControlledDynamicWebAppCluster
-  name: Web Cluster
-  brooklyn.config:
-    initialSize: 2
-    controlleddynamicwebappcluster.controllerSpec:
-      $brooklyn:entitySpec:
-        type: brooklyn.entity.proxy.nginx.NginxController
-        brooklyn.config:
-          member.sensor.hostname: "host.subnet.hostname"
-    wars.root: "https://s3-eu-west-1.amazonaws.com/brooklyn-clocker/brooklyn-example-hello-world-sql-webapp.war"
-    java.sysprops: 
-      brooklyn.example.riak.nodes: $brooklyn:component("cluster").attributeWhenReady("riak.cluster.nodeList")
-
-# Alternative URL for War file if available on classpath
-# "classpath://brooklyn-example-hello-world-sql-webapp.war"

http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/d5cf5285/software/nosql/src/main/resources/brooklyn/entity/nosql/riak/riak-with-webapp.yaml
----------------------------------------------------------------------
diff --git a/software/nosql/src/main/resources/brooklyn/entity/nosql/riak/riak-with-webapp.yaml b/software/nosql/src/main/resources/brooklyn/entity/nosql/riak/riak-with-webapp.yaml
deleted file mode 100644
index db2bef1..0000000
--- a/software/nosql/src/main/resources/brooklyn/entity/nosql/riak/riak-with-webapp.yaml
+++ /dev/null
@@ -1,36 +0,0 @@
-#
-# 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.
-#
-
-name: Riak Cluster with Webapp
-location: aws-ec2:eu-west-1
-services:
-- type: brooklyn.entity.nosql.riak.RiakCluster
-  initialSize: 2
-  id: cluster
-- type: brooklyn.entity.webapp.jboss.JBoss7Server
-  name: Web
-  brooklyn.config:
-    wars.root: "https://s3-eu-west-1.amazonaws.com/brooklyn-clocker/brooklyn-example-hello-world-sql-webapp.war"
-    java.sysprops: 
-      brooklyn.example.riak.nodes: $brooklyn:component("cluster").attributeWhenReady("riak.cluster.nodeList")
-  provisioning.properties:
-    osFamily: centos
-
-# Alternative URL for War file if available on classpath
-# "classpath://brooklyn-example-hello-world-sql-webapp.war"

http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/d5cf5285/software/nosql/src/main/resources/brooklyn/entity/nosql/riak/riak.conf
----------------------------------------------------------------------
diff --git a/software/nosql/src/main/resources/brooklyn/entity/nosql/riak/riak.conf b/software/nosql/src/main/resources/brooklyn/entity/nosql/riak/riak.conf
deleted file mode 100644
index 125fa77..0000000
--- a/software/nosql/src/main/resources/brooklyn/entity/nosql/riak/riak.conf
+++ /dev/null
@@ -1,494 +0,0 @@
-## Brooklyn note: file from 2.0.1 Ubuntu install, with erlang section added, and ports templated
-
-## Where to emit the default log messages (typically at 'info'
-## severity):
-## off: disabled
-## file: the file specified by log.console.file
-## console: to standard output (seen when using `riak attach-direct`)
-## both: log.console.file and standard out.
-## 
-## Default: file
-## 
-## Acceptable values:
-##   - one of: off, file, console, both
-log.console = file
-
-## The severity level of the console log, default is 'info'.
-## 
-## Default: info
-## 
-## Acceptable values:
-##   - one of: debug, info, notice, warning, error, critical, alert, emergency, none
-log.console.level = info
-
-## When 'log.console' is set to 'file' or 'both', the file where
-## console messages will be logged.
-## 
-## Default: $(platform_log_dir)/console.log
-## 
-## Acceptable values:
-##   - the path to a file
-log.console.file = $(platform_log_dir)/console.log
-
-## The file where error messages will be logged.
-## 
-## Default: $(platform_log_dir)/error.log
-## 
-## Acceptable values:
-##   - the path to a file
-log.error.file = $(platform_log_dir)/error.log
-
-## When set to 'on', enables log output to syslog.
-## 
-## Default: off
-## 
-## Acceptable values:
-##   - on or off
-log.syslog = off
-
-## Whether to enable the crash log.
-## 
-## Default: on
-## 
-## Acceptable values:
-##   - on or off
-log.crash = on
-
-## If the crash log is enabled, the file where its messages will
-## be written.
-## 
-## Default: $(platform_log_dir)/crash.log
-## 
-## Acceptable values:
-##   - the path to a file
-log.crash.file = $(platform_log_dir)/crash.log
-
-## Maximum size in bytes of individual messages in the crash log
-## 
-## Default: 64KB
-## 
-## Acceptable values:
-##   - a byte size with units, e.g. 10GB
-log.crash.maximum_message_size = 64KB
-
-## Maximum size of the crash log in bytes, before it is rotated
-## 
-## Default: 10MB
-## 
-## Acceptable values:
-##   - a byte size with units, e.g. 10GB
-log.crash.size = 10MB
-
-## The schedule on which to rotate the crash log.  For more
-## information see:
-## https://github.com/basho/lager/blob/master/README.md#internal-log-rotation
-## 
-## Default: $D0
-## 
-## Acceptable values:
-##   - text
-log.crash.rotation = $D0
-
-## The number of rotated crash logs to keep. When set to
-## 'current', only the current open log file is kept.
-## 
-## Default: 5
-## 
-## Acceptable values:
-##   - an integer
-##   - the text "current"
-log.crash.rotation.keep = 5
-
-## Name of the Erlang node
-## 
-## Default: riak@127.0.0.1
-## 
-## Acceptable values:
-##   - text
-nodename = riak@${driver.subnetHostname}
-
-## Cookie for distributed node communication.  All nodes in the
-## same cluster should use the same cookie or they will not be able to
-## communicate.
-## 
-## Default: riak
-## 
-## Acceptable values:
-##   - text
-distributed_cookie = riak
-
-## Sets the number of threads in async thread pool, valid range
-## is 0-1024. If thread support is available, the default is 64.
-## More information at: http://erlang.org/doc/man/erl.html
-## 
-## Default: 64
-## 
-## Acceptable values:
-##   - an integer
-erlang.async_threads = 64
-
-## The number of concurrent ports/sockets
-## Valid range is 1024-134217727
-## 
-## Default: 65536
-## 
-## Acceptable values:
-##   - an integer
-erlang.max_ports = 65536
-
-## Set scheduler forced wakeup interval. All run queues will be
-## scanned each Interval milliseconds. While there are sleeping
-## schedulers in the system, one scheduler will be woken for each
-## non-empty run queue found. An Interval of zero disables this
-## feature, which also is the default.
-## This feature is a workaround for lengthy executing native code, and
-## native code that do not bump reductions properly.
-## More information: http://www.erlang.org/doc/man/erl.html#+sfwi
-## 
-## Acceptable values:
-##   - an integer
-## erlang.schedulers.force_wakeup_interval = 500
-
-## Enable or disable scheduler compaction of load. By default
-## scheduler compaction of load is enabled. When enabled, load
-## balancing will strive for a load distribution which causes as many
-## scheduler threads as possible to be fully loaded (i.e., not run out
-## of work). This is accomplished by migrating load (e.g. runnable
-## processes) into a smaller set of schedulers when schedulers
-## frequently run out of work. When disabled, the frequency with which
-## schedulers run out of work will not be taken into account by the
-## load balancing logic.
-## More information: http://www.erlang.org/doc/man/erl.html#+scl
-## 
-## Acceptable values:
-##   - one of: true, false
-## erlang.schedulers.compaction_of_load = false
-
-## Enable or disable scheduler utilization balancing of load. By
-## default scheduler utilization balancing is disabled and instead
-## scheduler compaction of load is enabled which will strive for a
-## load distribution which causes as many scheduler threads as
-## possible to be fully loaded (i.e., not run out of work). When
-## scheduler utilization balancing is enabled the system will instead
-## try to balance scheduler utilization between schedulers. That is,
-## strive for equal scheduler utilization on all schedulers.
-## More information: http://www.erlang.org/doc/man/erl.html#+sub
-## 
-## Acceptable values:
-##   - one of: true, false
-## erlang.schedulers.utilization_balancing = true
-
-## Number of partitions in the cluster (only valid when first
-## creating the cluster). Must be a power of 2, minimum 8 and maximum
-## 1024.
-## 
-## Default: 64
-## 
-## Acceptable values:
-##   - an integer
-## ring_size = 64
-
-## Number of concurrent node-to-node transfers allowed.
-## 
-## Default: 2
-## 
-## Acceptable values:
-##   - an integer
-## transfer_limit = 2
-
-## Default cert location for https can be overridden
-## with the ssl config variable, for example:
-## 
-## Acceptable values:
-##   - the path to a file
-## ssl.certfile = $(platform_etc_dir)/cert.pem
-
-## Default key location for https can be overridden with the ssl
-## config variable, for example:
-## 
-## Acceptable values:
-##   - the path to a file
-## ssl.keyfile = $(platform_etc_dir)/key.pem
-
-## Default signing authority location for https can be overridden
-## with the ssl config variable, for example:
-## 
-## Acceptable values:
-##   - the path to a file
-## ssl.cacertfile = $(platform_etc_dir)/cacertfile.pem
-
-## DTrace support Do not enable 'dtrace' unless your Erlang/OTP
-## runtime is compiled to support DTrace.  DTrace is available in
-## R15B01 (supported by the Erlang/OTP official source package) and in
-## R14B04 via a custom source repository & branch.
-## 
-## Default: off
-## 
-## Acceptable values:
-##   - on or off
-dtrace = off
-
-## Platform-specific installation paths (substituted by rebar)
-## 
-## Default: /usr/sbin
-## 
-## Acceptable values:
-##   - the path to a directory
-platform_bin_dir = /usr/sbin
-
-## 
-## Default: /var/lib/riak
-## 
-## Acceptable values:
-##   - the path to a directory
-platform_data_dir = /var/lib/riak
-
-## 
-## Default: /etc/riak
-## 
-## Acceptable values:
-##   - the path to a directory
-platform_etc_dir = /etc/riak
-
-## 
-## Default: /usr/lib64/riak/lib
-## 
-## Acceptable values:
-##   - the path to a directory
-platform_lib_dir = /usr/lib64/riak/lib
-
-## 
-## Default: /var/log/riak
-## 
-## Acceptable values:
-##   - the path to a directory
-platform_log_dir = /var/log/riak
-
-## Enable consensus subsystem. Set to 'on' to enable the
-## consensus subsystem used for strongly consistent Riak operations.
-## 
-## Default: off
-## 
-## Acceptable values:
-##   - on or off
-## strong_consistency = on
-
-## listener.http.<name> is an IP address and TCP port that the Riak
-## HTTP interface will bind.
-## 
-## Default: 127.0.0.1:8098
-## 
-## Acceptable values:
-##   - an IP/port pair, e.g. 127.0.0.1:10011
-listener.http.internal = 0.0.0.0:${entity.riakWebPort?c}
-
-## listener.protobuf.<name> is an IP address and TCP port that the Riak
-## Protocol Buffers interface will bind.
-## 
-## Default: 127.0.0.1:8087
-## 
-## Acceptable values:
-##   - an IP/port pair, e.g. 127.0.0.1:10011
-listener.protobuf.internal = 0.0.0.0:${entity.riakPbPort?c}
-
-## The maximum length to which the queue of pending connections
-## may grow. If set, it must be an integer > 0. If you anticipate a
-## huge number of connections being initialized *simultaneously*, set
-## this number higher.
-## 
-## Default: 128
-## 
-## Acceptable values:
-##   - an integer
-## protobuf.backlog = 128
-
-## listener.https.<name> is an IP address and TCP port that the Riak
-## HTTPS interface will bind.
-## 
-## Acceptable values:
-##   - an IP/port pair, e.g. 127.0.0.1:10011
-## listener.https.internal = 127.0.0.1:8098
-
-## How Riak will repair out-of-sync keys. Some features require
-## this to be set to 'active', including search.
-## * active: out-of-sync keys will be repaired in the background
-## * passive: out-of-sync keys are only repaired on read
-## * active-debug: like active, but outputs verbose debugging
-## information
-## 
-## Default: active
-## 
-## Acceptable values:
-##   - one of: active, passive, active-debug
-anti_entropy = active
-
-## Specifies the storage engine used for Riak's key-value data
-## and secondary indexes (if supported).
-## 
-## Default: bitcask
-## 
-## Acceptable values:
-##   - one of: bitcask, leveldb, memory, multi
-storage_backend = bitcask
-
-## Controls which binary representation of a riak value is stored
-## on disk.
-## * 0: Original erlang:term_to_binary format. Higher space overhead.
-## * 1: New format for more compact storage of small values.
-## 
-## Default: 1
-## 
-## Acceptable values:
-##   - the integer 1
-##   - the integer 0
-object.format = 1
-
-## Reading or writing objects bigger than this size will write a
-## warning in the logs.
-## 
-## Default: 5MB
-## 
-## Acceptable values:
-##   - a byte size with units, e.g. 10GB
-object.size.warning_threshold = 5MB
-
-## Writing an object bigger than this will send a failure to the
-## client.
-## 
-## Default: 50MB
-## 
-## Acceptable values:
-##   - a byte size with units, e.g. 10GB
-object.size.maximum = 50MB
-
-## Writing an object with more than this number of siblings will
-## generate a warning in the logs.
-## 
-## Default: 25
-## 
-## Acceptable values:
-##   - an integer
-object.siblings.warning_threshold = 25
-
-## Writing an object with more than this number of siblings will
-## send a failure to the client.
-## 
-## Default: 100
-## 
-## Acceptable values:
-##   - an integer
-object.siblings.maximum = 100
-
-## A path under which bitcask data files will be stored.
-## 
-## Default: $(platform_data_dir)/bitcask
-## 
-## Acceptable values:
-##   - the path to a directory
-bitcask.data_root = $(platform_data_dir)/bitcask
-
-## Configure how Bitcask writes data to disk.
-## erlang: Erlang's built-in file API
-## nif: Direct calls to the POSIX C API
-## The NIF mode provides higher throughput for certain
-## workloads, but has the potential to negatively impact
-## the Erlang VM, leading to higher worst-case latencies
-## and possible throughput collapse.
-## 
-## Default: erlang
-## 
-## Acceptable values:
-##   - one of: erlang, nif
-bitcask.io_mode = erlang
-
-## Set to 'off' to disable the admin panel.
-## 
-## Default: off
-## 
-## Acceptable values:
-##   - on or off
-riak_control = on
-
-## Authentication mode used for access to the admin panel.
-## 
-## Default: off
-## 
-## Acceptable values:
-##   - one of: off, userlist
-riak_control.auth.mode = off
-
-## If riak control's authentication mode (riak_control.auth.mode)
-## is set to 'userlist' then this is the list of usernames and
-## passwords for access to the admin panel.
-## To create users with given names, add entries of the format:
-## riak_control.auth.user.USERNAME.password = PASSWORD
-## replacing USERNAME with the desired username and PASSWORD with the
-## desired password for that user.
-## 
-## Acceptable values:
-##   - text
-## riak_control.auth.user.admin.password = pass
-
-## This parameter defines the percentage of total server memory
-## to assign to LevelDB. LevelDB will dynamically adjust its internal
-## cache sizes to stay within this size.  The memory size can
-## alternately be assigned as a byte count via leveldb.maximum_memory
-## instead.
-## 
-## Default: 70
-## 
-## Acceptable values:
-##   - an integer
-leveldb.maximum_memory.percent = 70
-
-## To enable Search set this 'on'.
-## 
-## Default: off
-## 
-## Acceptable values:
-##   - on or off
-search = ${entity.isSearchEnabled()?string('on','off')}
-
-## How long Riak will wait for Solr to start. The start sequence
-## will be tried twice. If both attempts timeout, then the Riak node
-## will be shutdown. This may need to be increased as more data is
-## indexed and Solr takes longer to start. Values lower than 1s will
-## be rounded up to the minimum 1s.
-## 
-## Default: 30s
-## 
-## Acceptable values:
-##   - a time duration with units, e.g. '10s' for 10 seconds
-search.solr.start_timeout = 30s
-
-## The port number which Solr binds to.
-## NOTE: Binds on every interface.
-## 
-## Default: 8093
-## 
-## Acceptable values:
-##   - an integer
-search.solr.port = ${entity.searchSolrPort?c}
-
-## The port number which Solr JMX binds to.
-## NOTE: Binds on every interface.
-## 
-## Default: 8985
-## 
-## Acceptable values:
-##   - an integer
-search.solr.jmx_port = ${entity.searchSolrJmxPort?c}
-
-## The options to pass to the Solr JVM.  Non-standard options,
-## i.e. -XX, may not be portable across JVM implementations.
-## E.g. -XX:+UseCompressedStrings
-## 
-## Default: -d64 -Xms1g -Xmx1g -XX:+UseStringCache -XX:+UseCompressedOops
-## 
-## Acceptable values:
-##   - text
-search.solr.jvm_options = -d64 -Xms1g -Xmx1g -XX:+UseStringCache -XX:+UseCompressedOops
-
-## erlang, constrain port range so we can open the internal firewall ports
-erlang.distribution.port_range.minimum = ${entity.erlangPortRangeStart?c}
-erlang.distribution.port_range.maximum = ${entity.erlangPortRangeEnd?c}

http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/d5cf5285/software/nosql/src/main/resources/brooklyn/entity/nosql/riak/riak.md
----------------------------------------------------------------------
diff --git a/software/nosql/src/main/resources/brooklyn/entity/nosql/riak/riak.md b/software/nosql/src/main/resources/brooklyn/entity/nosql/riak/riak.md
deleted file mode 100644
index 8def551..0000000
--- a/software/nosql/src/main/resources/brooklyn/entity/nosql/riak/riak.md
+++ /dev/null
@@ -1,67 +0,0 @@
-# Riak Examples
-
-Here is a selection of examples showing how to deploy Riak.
-
-
-### A Single-Node Deployment
-
-```
-location: YOUR_CLOUD
-services:
-- type: brooklyn.entity.nosql.riak.RiakNode
-```
-
-
-### A Single-Node Deployment
-
-```
-location: YOUR_CLOUD
-services:
-- type: brooklyn.entity.nosql.riak.RiakNode
-```
-
-
-### A Cluster
-
-```
-services:
-- type: brooklyn.entity.nosql.riak.RiakCluster
-  location: YOUR_CLOUD
-  initialSize: 5
-```
-
-
-### A Cluster at a Specific Version with a Web App
-
-```
-services:
-- type: brooklyn.entity.nosql.riak.RiakCluster
-  id: cluster
-  brooklyn.config:
-    initialSize: 2
-    install.version: 2.0.0
-- type: brooklyn.entity.webapp.ControlledDynamicWebAppCluster
-  brooklyn.config:
-    initialSize: 2
-    wars.root: https://s3-eu-west-1.amazonaws.com/brooklyn-clocker/brooklyn-example-hello-world-sql-webapp.war
-    java.sysprops: 
-      brooklyn.example.riak.nodes: $brooklyn:component("cluster").attributeWhenReady("riak.cluster.nodeList")
-```
-
-----
-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.

http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/d5cf5285/software/nosql/src/main/resources/brooklyn/entity/nosql/riak/riak.png
----------------------------------------------------------------------
diff --git a/software/nosql/src/main/resources/brooklyn/entity/nosql/riak/riak.png b/software/nosql/src/main/resources/brooklyn/entity/nosql/riak/riak.png
deleted file mode 100644
index a230b04..0000000
Binary files a/software/nosql/src/main/resources/brooklyn/entity/nosql/riak/riak.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/d5cf5285/software/nosql/src/main/resources/brooklyn/entity/nosql/riak/vm.args
----------------------------------------------------------------------
diff --git a/software/nosql/src/main/resources/brooklyn/entity/nosql/riak/vm.args b/software/nosql/src/main/resources/brooklyn/entity/nosql/riak/vm.args
deleted file mode 100644
index be58d78..0000000
--- a/software/nosql/src/main/resources/brooklyn/entity/nosql/riak/vm.args
+++ /dev/null
@@ -1,64 +0,0 @@
-##### Brooklyn note: File from OSX distribution of Riak 1.4.8
-
-## Name of the riak node
--name riak@${driver.subnetHostname}
-
-## Cookie for distributed erlang.  All nodes in the same cluster
-## should use the same cookie or they will not be able to communicate.
--setcookie riak
-
-## Heartbeat management; auto-restarts VM if it dies or becomes unresponsive
-## (Disabled by default..use with caution!)
-##-heart
-
-## Enable kernel poll and a few async threads
-+K true
-+A 64
-
-## Treat error_logger warnings as warnings
-+W w
-
-## Increase number of concurrent ports/sockets
--env ERL_MAX_PORTS 64000
-
-## Tweak GC to run more often 
--env ERL_FULLSWEEP_AFTER 0
-
-## Set the location of crash dumps
--env ERL_CRASH_DUMP ./log/erl_crash.dump
-
-## Raise the ETS table limit
--env ERL_MAX_ETS_TABLES 256000
-
-## Force the erlang VM to use SMP
--smp enable
-
-## For nodes with many busy_dist_port events, Basho recommends
-## raising the sender-side network distribution buffer size.
-## 32MB may not be sufficient for some workloads and is a suggested
-## starting point.
-## The Erlang/OTP default is 1024 (1 megabyte).
-## See: http://www.erlang.org/doc/man/erl.html#%2bzdbbl
-##+zdbbl 32768
-
-## Raise the default erlang process limit 
-+P 256000
-
-## Erlang VM scheduler tuning.
-## Prerequisite: a patched VM from Basho, or a VM compiled separately
-## with this patch applied:
-##     https://gist.github.com/evanmcc/a599f4c6374338ed672e
-##+sfwi 500
-
-## Begin SSL distribution items, DO NOT DELETE OR EDIT THIS COMMENT
-
-## To enable SSL encryption of the Erlang intra-cluster communication,
-## un-comment the three lines below and make certain that the paths
-## point to correct PEM data files.  See docs TODO for details.
-
-## -proto_dist inet_ssl
-## -ssl_dist_opt client_certfile "${driver.riakEtcDir}/erlclient.pem"
-## -ssl_dist_opt server_certfile "${driver.riakEtcDir}/erlserver.pem"
-
-## End SSL distribution items, DO NOT DELETE OR EDIT THIS COMMENT
-

http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/d5cf5285/software/nosql/src/main/resources/brooklyn/entity/nosql/solr/solr.xml
----------------------------------------------------------------------
diff --git a/software/nosql/src/main/resources/brooklyn/entity/nosql/solr/solr.xml b/software/nosql/src/main/resources/brooklyn/entity/nosql/solr/solr.xml
deleted file mode 100644
index 6e12b5c..0000000
--- a/software/nosql/src/main/resources/brooklyn/entity/nosql/solr/solr.xml
+++ /dev/null
@@ -1,19 +0,0 @@
-[#ftl]
-<?xml version="1.0" encoding="UTF-8"?>
-<solr>
-  <int name="coreLoadThreads">4</int>
-
-  <solrcloud>
-    <str name="host">${driver.hostname}</str>
-    <int name="hostPort">${entity.solrPort?c}</int>
-    <str name="hostContext">solr</str>
-    <int name="zkClientTimeout">15000</int>
-    <bool name="genericCoreNodeNames">true</bool>
-  </solrcloud>
-
-  <shardHandlerFactory name="shardHandlerFactory"
-    class="HttpShardHandlerFactory">
-    <int name="socketTimeout">0</int>
-    <int name="connTimeout">0</int>
-  </shardHandlerFactory>
-</solr>

http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/d5cf5285/software/nosql/src/main/resources/org/apache/brooklyn/entity/nosql/cassandra/cassandra-1.2.yaml
----------------------------------------------------------------------
diff --git a/software/nosql/src/main/resources/org/apache/brooklyn/entity/nosql/cassandra/cassandra-1.2.yaml b/software/nosql/src/main/resources/org/apache/brooklyn/entity/nosql/cassandra/cassandra-1.2.yaml
new file mode 100644
index 0000000..045bb45
--- /dev/null
+++ b/software/nosql/src/main/resources/org/apache/brooklyn/entity/nosql/cassandra/cassandra-1.2.yaml
@@ -0,0 +1,644 @@
+[#ftl]
+#
+# Cassandra storage config YAML 
+
+# NOTE:
+#   See http://wiki.apache.org/cassandra/StorageConfiguration for
+#   full explanations of configuration directives
+# /NOTE
+
+# The name of the cluster. This is mainly used to prevent machines in
+# one logical cluster from joining another.
+cluster_name: '${entity.clusterName}'
+
+# This defines the number of tokens randomly assigned to this node on the ring
+# The more tokens, relative to other nodes, the larger the proportion of data
+# that this node will store. You probably want all nodes to have the same number
+# of tokens assuming they have equal hardware capability.
+#
+# If you leave this unspecified, Cassandra will use the default of 1 token for legacy compatibility,
+# and will use the initial_token as described below.
+#
+# Specifying initial_token will override this setting.
+#
+# If you already have a cluster with 1 token per node, and wish to migrate to 
+# multiple tokens per node, see http://wiki.apache.org/cassandra/Operations
+num_tokens: ${entity.numTokensPerNode?c}
+
+# If you haven't specified num_tokens, or have set it to the default of 1 then
+# you should always specify InitialToken when setting up a production
+# cluster for the first time, and often when adding capacity later.
+# The principle is that each node should be given an equal slice of
+# the token ring; see http://wiki.apache.org/cassandra/Operations
+# for more details.
+#
+# If blank, Cassandra will request a token bisecting the range of
+# the heaviest-loaded existing node.  If there is no load information
+# available, such as is the case with a new cluster, it will pick
+# a random token, which will lead to hot spots.
+initial_token: ${entity.tokensAsString}
+
+# See http://wiki.apache.org/cassandra/HintedHandoff
+hinted_handoff_enabled: true
+# this defines the maximum amount of time a dead host will have hints
+# generated.  After it has been dead this long, hints will be dropped.
+max_hint_window_in_ms: 10800000 # 3 hours
+# throttle in KB's per second, per delivery thread
+hinted_handoff_throttle_in_kb: 1024
+# Number of threads with which to deliver hints;
+# Consider increasing this number when you have multi-dc deployments, since
+# cross-dc handoff tends to be slower
+max_hints_delivery_threads: 2
+
+# The following setting populates the page cache on memtable flush and compaction
+# WARNING: Enable this setting only when the whole node's data fits in memory.
+# Defaults to: false
+# populate_io_cache_on_flush: false
+
+# authentication backend, implementing IAuthenticator; used to identify users
+authenticator: org.apache.cassandra.auth.AllowAllAuthenticator
+
+# authorization backend, implementing IAuthorizer; used to limit access/provide permissions
+authorizer: org.apache.cassandra.auth.AllowAllAuthorizer
+
+# The partitioner is responsible for distributing rows (by key) across
+# nodes in the cluster.  Any IPartitioner may be used, including your
+# own as long as it is on the classpath.  Out of the box, Cassandra
+# provides org.apache.cassandra.dht.{Murmur3Partitioner, RandomPartitioner
+# ByteOrderedPartitioner, OrderPreservingPartitioner (deprecated)}.
+# 
+# - RandomPartitioner distributes rows across the cluster evenly by md5.
+#   This is the default prior to 1.2 and is retained for compatibility.
+# - Murmur3Partitioner is similar to RandomPartioner but uses Murmur3_128
+#   Hash Function instead of md5.  When in doubt, this is the best option.
+# - ByteOrderedPartitioner orders rows lexically by key bytes.  BOP allows
+#   scanning rows in key order, but the ordering can generate hot spots
+#   for sequential insertion workloads.
+# - OrderPreservingPartitioner is an obsolete form of BOP, that stores
+# - keys in a less-efficient format and only works with keys that are
+#   UTF8-encoded Strings.
+# - CollatingOPP colates according to EN,US rules rather than lexical byte
+#   ordering.  Use this as an example if you need custom collation.
+#
+# See http://wiki.apache.org/cassandra/Operations for more on
+# partitioners and token selection.
+partitioner: org.apache.cassandra.dht.Murmur3Partitioner
+
+# directories where Cassandra should store data on disk.
+data_file_directories:
+    - ${driver.runDir}/data
+
+# commit log
+commitlog_directory: ${driver.runDir}/commitlog
+
+# policy for data disk failures:
+# stop: shut down gossip and Thrift, leaving the node effectively dead, but
+#       still inspectable via JMX.
+# best_effort: stop using the failed disk and respond to requests based on
+#              remaining available sstables.  This means you WILL see obsolete
+#              data at CL.ONE!
+# ignore: ignore fatal errors and let requests fail, as in pre-1.2 Cassandra
+disk_failure_policy: stop
+
+# Maximum size of the key cache in memory.
+#
+# Each key cache hit saves 1 seek and each row cache hit saves 2 seeks at the
+# minimum, sometimes more. The key cache is fairly tiny for the amount of
+# time it saves, so it's worthwhile to use it at large numbers.
+# The row cache saves even more time, but must store the whole values of
+# its rows, so it is extremely space-intensive. It's best to only use the
+# row cache if you have hot rows or static rows.
+#
+# NOTE: if you reduce the size, you may not get you hottest keys loaded on startup.
+#
+# Default value is empty to make it "auto" (min(5% of Heap (in MB), 100MB)). Set to 0 to disable key cache.
+key_cache_size_in_mb:
+
+# Duration in seconds after which Cassandra should
+# safe the keys cache. Caches are saved to saved_caches_directory as
+# specified in this configuration file.
+#
+# Saved caches greatly improve cold-start speeds, and is relatively cheap in
+# terms of I/O for the key cache. Row cache saving is much more expensive and
+# has limited use.
+#
+# Default is 14400 or 4 hours.
+key_cache_save_period: 14400
+
+# Number of keys from the key cache to save
+# Disabled by default, meaning all keys are going to be saved
+# key_cache_keys_to_save: 100
+
+# Maximum size of the row cache in memory.
+# NOTE: if you reduce the size, you may not get you hottest keys loaded on startup.
+#
+# Default value is 0, to disable row caching.
+row_cache_size_in_mb: 0
+
+# Duration in seconds after which Cassandra should
+# safe the row cache. Caches are saved to saved_caches_directory as specified
+# in this configuration file.
+#
+# Saved caches greatly improve cold-start speeds, and is relatively cheap in
+# terms of I/O for the key cache. Row cache saving is much more expensive and
+# has limited use.
+#
+# Default is 0 to disable saving the row cache.
+row_cache_save_period: 0
+
+# Number of keys from the row cache to save
+# Disabled by default, meaning all keys are going to be saved
+# row_cache_keys_to_save: 100
+
+# The provider for the row cache to use.
+#
+# Supported values are: ConcurrentLinkedHashCacheProvider, SerializingCacheProvider
+#
+# SerializingCacheProvider serialises the contents of the row and stores
+# it in native memory, i.e., off the JVM Heap. Serialized rows take
+# significantly less memory than "live" rows in the JVM, so you can cache
+# more rows in a given memory footprint.  And storing the cache off-heap
+# means you can use smaller heap sizes, reducing the impact of GC pauses.
+#
+# It is also valid to specify the fully-qualified class name to a class
+# that implements org.apache.cassandra.cache.IRowCacheProvider.
+#
+# Defaults to SerializingCacheProvider
+row_cache_provider: SerializingCacheProvider
+
+# saved caches
+saved_caches_directory: ${driver.runDir}/saved_caches
+
+# commitlog_sync may be either "periodic" or "batch." 
+# When in batch mode, Cassandra won't ack writes until the commit log
+# has been fsynced to disk.  It will wait up to
+# commitlog_sync_batch_window_in_ms milliseconds for other writes, before
+# performing the sync.
+#
+# commitlog_sync: batch
+# commitlog_sync_batch_window_in_ms: 50
+#
+# the other option is "periodic" where writes may be acked immediately
+# and the CommitLog is simply synced every commitlog_sync_period_in_ms
+# milliseconds.
+commitlog_sync: periodic
+commitlog_sync_period_in_ms: 10000
+
+# The size of the individual commitlog file segments.  A commitlog
+# segment may be archived, deleted, or recycled once all the data
+# in it (potentally from each columnfamily in the system) has been 
+# flushed to sstables.  
+#
+# The default size is 32, which is almost always fine, but if you are
+# archiving commitlog segments (see commitlog_archiving.properties),
+# then you probably want a finer granularity of archiving; 8 or 16 MB
+# is reasonable.
+commitlog_segment_size_in_mb: 32
+
+# any class that implements the SeedProvider interface and has a
+# constructor that takes a Map<String, String> of parameters will do.
+seed_provider:
+    # Addresses of hosts that are deemed contact points. 
+    # Cassandra nodes use this list of hosts to find each other and learn
+    # the topology of the ring.  You must change this if you are running
+    # multiple nodes!
+    - class_name: org.apache.cassandra.locator.SimpleSeedProvider
+      parameters:
+          # seeds is actually a comma-delimited list of addresses.
+          # Ex: "<ip1>,<ip2>,<ip3>"
+          - seeds: "${entity.seeds}"
+
+# emergency pressure valve: each time heap usage after a full (CMS)
+# garbage collection is above this fraction of the max, Cassandra will
+# flush the largest memtables.  
+#
+# Set to 1.0 to disable.  Setting this lower than
+# CMSInitiatingOccupancyFraction is not likely to be useful.
+#
+# RELYING ON THIS AS YOUR PRIMARY TUNING MECHANISM WILL WORK POORLY:
+# it is most effective under light to moderate load, or read-heavy
+# workloads; under truly massive write load, it will often be too
+# little, too late.
+flush_largest_memtables_at: 0.75
+
+# emergency pressure valve #2: the first time heap usage after a full
+# (CMS) garbage collection is above this fraction of the max,
+# Cassandra will reduce cache maximum _capacity_ to the given fraction
+# of the current _size_.  Should usually be set substantially above
+# flush_largest_memtables_at, since that will have less long-term
+# impact on the system.  
+# 
+# Set to 1.0 to disable.  Setting this lower than
+# CMSInitiatingOccupancyFraction is not likely to be useful.
+reduce_cache_sizes_at: 0.85
+reduce_cache_capacity_to: 0.6
+
+# For workloads with more data than can fit in memory, Cassandra's
+# bottleneck will be reads that need to fetch data from
+# disk. "concurrent_reads" should be set to (16 * number_of_drives) in
+# order to allow the operations to enqueue low enough in the stack
+# that the OS and drives can reorder them.
+#
+# On the other hand, since writes are almost never IO bound, the ideal
+# number of "concurrent_writes" is dependent on the number of cores in
+# your system; (8 * number_of_cores) is a good rule of thumb.
+concurrent_reads: 32
+concurrent_writes: 32
+
+# Total memory to use for memtables.  Cassandra will flush the largest
+# memtable when this much memory is used.
+# If omitted, Cassandra will set it to 1/3 of the heap.
+# memtable_total_space_in_mb: 2048
+
+# Total space to use for commitlogs.  Since commitlog segments are
+# mmapped, and hence use up address space, the default size is 32
+# on 32-bit JVMs, and 1024 on 64-bit JVMs.
+#
+# If space gets above this value (it will round up to the next nearest
+# segment multiple), Cassandra will flush every dirty CF in the oldest
+# segment and remove it.  So a small total commitlog space will tend
+# to cause more flush activity on less-active columnfamilies.
+# commitlog_total_space_in_mb: 4096
+
+# This sets the amount of memtable flush writer threads.  These will
+# be blocked by disk io, and each one will hold a memtable in memory
+# while blocked. If you have a large heap and many data directories,
+# you can increase this value for better flush performance.
+# By default this will be set to the amount of data directories defined.
+#memtable_flush_writers: 1
+
+# the number of full memtables to allow pending flush, that is,
+# waiting for a writer thread.  At a minimum, this should be set to
+# the maximum number of secondary indexes created on a single CF.
+memtable_flush_queue_size: 4
+
+# Whether to, when doing sequential writing, fsync() at intervals in
+# order to force the operating system to flush the dirty
+# buffers. Enable this to avoid sudden dirty buffer flushing from
+# impacting read latencies. Almost always a good idea on SSD:s; not
+# necessarily on platters.
+trickle_fsync: false
+trickle_fsync_interval_in_kb: 10240
+
+# TCP port, for commands and data
+storage_port: ${entity.gossipPort?c}
+
+# SSL port, for encrypted communication.  Unused unless enabled in
+# encryption_options
+ssl_storage_port: ${entity.sslGossipPort?c}
+
+# Address to bind to and tell other Cassandra nodes to connect to. You
+# _must_ change this if you want multiple nodes to be able to
+# communicate!
+# 
+# Leaving it blank leaves it up to InetAddress.getLocalHost(). This
+# will always do the Right Thing *if* the node is properly configured
+# (hostname, name resolution, etc), and the Right Thing is to use the
+# address associated with the hostname (it might not be).
+#
+# Setting this to 0.0.0.0 is always wrong.
+listen_address: ${entity.listenAddress}
+
+# Address to broadcast to other Cassandra nodes
+# Leaving this blank will set it to the same value as listen_address
+broadcast_address: ${entity.broadcastAddress}
+
+# Whether to start the native transport server.
+# Currently, only the thrift server is started by default because the native
+# transport is considered beta.
+# Please note that the address on which the native transport is bound is the
+# same as the rpc_address. The port however is different and specified below.
+start_native_transport: true
+# port for the CQL native transport to listen for clients on
+native_transport_port: ${entity.nativeTransportPort?c}
+# The minimum and maximum threads for handling requests when the native
+# transport is used. The meaning is those is similar to the one of
+# rpc_min_threads and rpc_max_threads, though the default differ slightly and
+# are the ones below:
+#native_transport_min_threads: 16
+#native_transport_max_threads: 128
+
+
+# Whether to start the thrift rpc server.
+start_rpc: true
+# The address to bind the Thrift RPC service to -- clients connect
+# here. Unlike ListenAddress above, you *can* specify 0.0.0.0 here if
+# you want Thrift to listen on all interfaces.
+# 
+# Leaving this blank has the same effect it does for ListenAddress,
+# (i.e. it will be based on the configured hostname of the node).
+rpc_address: ${entity.rpcAddress}
+# port for Thrift to listen for clients on
+rpc_port: ${entity.thriftPort?c}
+
+# enable or disable keepalive on rpc connections
+rpc_keepalive: true
+
+# Cassandra provides three out-of-the-box options for the RPC Server:
+#
+# sync  -> One thread per thrift connection. For a very large number of clients, memory
+#          will be your limiting factor. On a 64 bit JVM, 128KB is the minimum stack size
+#          per thread, and that will correspond to your use of virtual memory (but physical memory
+#          may be limited depending on use of stack space).
+#
+# hsha  -> Stands for "half synchronous, half asynchronous." All thrift clients are handled
+#          asynchronously using a small number of threads that does not vary with the amount
+#          of thrift clients (and thus scales well to many clients). The rpc requests are still
+#          synchronous (one thread per active request).
+#
+# The default is sync because on Windows hsha is about 30% slower.  On Linux,
+# sync/hsha performance is about the same, with hsha of course using less memory.
+#
+# Alternatively,  can provide your own RPC server by providing the fully-qualified class name
+# of an o.a.c.t.TServerFactory that can create an instance of it.
+rpc_server_type: sync
+
+# Uncomment rpc_min|max_thread to set request pool size limits.
+#
+# Regardless of your choice of RPC server (see above), the number of maximum requests in the
+# RPC thread pool dictates how many concurrent requests are possible (but if you are using the sync
+# RPC server, it also dictates the number of clients that can be connected at all).
+#
+# The default is unlimited and thus provide no protection against clients overwhelming the server. You are
+# encouraged to set a maximum that makes sense for you in production, but do keep in mind that
+# rpc_max_threads represents the maximum number of client requests this server may execute concurrently.
+#
+# rpc_min_threads: 16
+# rpc_max_threads: 2048
+
+# uncomment to set socket buffer sizes on rpc connections
+# rpc_send_buff_size_in_bytes:
+# rpc_recv_buff_size_in_bytes:
+
+# Frame size for thrift (maximum field length).
+thrift_framed_transport_size_in_mb: 15
+
+# The max length of a thrift message, including all fields and
+# internal thrift overhead.
+thrift_max_message_length_in_mb: 16
+
+# Set to true to have Cassandra create a hard link to each sstable
+# flushed or streamed locally in a backups/ subdirectory of the
+# Keyspace data.  Removing these links is the operator's
+# responsibility.
+incremental_backups: false
+
+# Whether or not to take a snapshot before each compaction.  Be
+# careful using this option, since Cassandra won't clean up the
+# snapshots for you.  Mostly useful if you're paranoid when there
+# is a data format change.
+snapshot_before_compaction: false
+
+# Whether or not a snapshot is taken of the data before keyspace truncation
+# or dropping of column families. The STRONGLY advised default of true 
+# should be used to provide data safety. If you set this flag to false, you will
+# lose data on truncation or drop.
+auto_snapshot: true
+
+# Add column indexes to a row after its contents reach this size.
+# Increase if your column values are large, or if you have a very large
+# number of columns.  The competing causes are, Cassandra has to
+# deserialize this much of the row to read a single column, so you want
+# it to be small - at least if you do many partial-row reads - but all
+# the index data is read for each access, so you don't want to generate
+# that wastefully either.
+column_index_size_in_kb: 64
+
+# Size limit for rows being compacted in memory.  Larger rows will spill
+# over to disk and use a slower two-pass compaction process.  A message
+# will be logged specifying the row key.
+in_memory_compaction_limit_in_mb: 64
+
+# Number of simultaneous compactions to allow, NOT including
+# validation "compactions" for anti-entropy repair.  Simultaneous
+# compactions can help preserve read performance in a mixed read/write
+# workload, by mitigating the tendency of small sstables to accumulate
+# during a single long running compactions. The default is usually
+# fine and if you experience problems with compaction running too
+# slowly or too fast, you should look at
+# compaction_throughput_mb_per_sec first.
+#
+# concurrent_compactors defaults to the number of cores.
+# Uncomment to make compaction mono-threaded, the pre-0.8 default.
+#concurrent_compactors: 1
+
+# Multi-threaded compaction. When enabled, each compaction will use
+# up to one thread per core, plus one thread per sstable being merged.
+# This is usually only useful for SSD-based hardware: otherwise, 
+# your concern is usually to get compaction to do LESS i/o (see:
+# compaction_throughput_mb_per_sec), not more.
+multithreaded_compaction: false
+
+# Throttles compaction to the given total throughput across the entire
+# system. The faster you insert data, the faster you need to compact in
+# order to keep the sstable count down, but in general, setting this to
+# 16 to 32 times the rate you are inserting data is more than sufficient.
+# Setting this to 0 disables throttling. Note that this account for all types
+# of compaction, including validation compaction.
+compaction_throughput_mb_per_sec: 16
+
+# Track cached row keys during compaction, and re-cache their new
+# positions in the compacted sstable.  Disable if you use really large
+# key caches.
+compaction_preheat_key_cache: true
+
+# Throttles all outbound streaming file transfers on this node to the
+# given total throughput in Mbps. This is necessary because Cassandra does
+# mostly sequential IO when streaming data during bootstrap or repair, which
+# can lead to saturating the network connection and degrading rpc performance.
+# When unset, the default is 400 Mbps or 50 MB/s.
+# stream_throughput_outbound_megabits_per_sec: 400
+
+# How long the coordinator should wait for read operations to complete
+read_request_timeout_in_ms: 10000
+# How long the coordinator should wait for seq or index scans to complete
+range_request_timeout_in_ms: 10000
+# How long the coordinator should wait for writes to complete
+write_request_timeout_in_ms: 10000
+# How long the coordinator should wait for truncates to complete
+# (This can be much longer, because unless auto_snapshot is disabled
+# we need to flush first so we can snapshot before removing the data.)
+truncate_request_timeout_in_ms: 60000
+# The default timeout for other, miscellaneous operations
+request_timeout_in_ms: 10000
+
+# Enable operation timeout information exchange between nodes to accurately
+# measure request timeouts, If disabled cassandra will assuming the request
+# was forwarded to the replica instantly by the coordinator
+#
+# Warning: before enabling this property make sure to ntp is installed
+# and the times are synchronized between the nodes.
+cross_node_timeout: false
+
+# Enable socket timeout for streaming operation.
+# When a timeout occurs during streaming, streaming is retried from the start
+# of the current file. This *can* involve re-streaming an important amount of
+# data, so you should avoid setting the value too low.
+# Default value is 0, which never timeout streams.
+# streaming_socket_timeout_in_ms: 0
+
+# phi value that must be reached for a host to be marked down.
+# most users should never need to adjust this.
+# phi_convict_threshold: 8
+
+# endpoint_snitch -- Set this to a class that implements
+# IEndpointSnitch.  The snitch has two functions:
+# - it teaches Cassandra enough about your network topology to route
+#   requests efficiently
+# - it allows Cassandra to spread replicas around your cluster to avoid
+#   correlated failures. It does this by grouping machines into
+#   "datacenters" and "racks."  Cassandra will do its best not to have
+#   more than one replica on the same "rack" (which may not actually
+#   be a physical location)
+#
+# IF YOU CHANGE THE SNITCH AFTER DATA IS INSERTED INTO THE CLUSTER,
+# YOU MUST RUN A FULL REPAIR, SINCE THE SNITCH AFFECTS WHERE REPLICAS
+# ARE PLACED.
+#
+# Out of the box, Cassandra provides
+#  - SimpleSnitch:
+#    Treats Strategy order as proximity. This improves cache locality
+#    when disabling read repair, which can further improve throughput.
+#    Only appropriate for single-datacenter deployments.
+#  - PropertyFileSnitch:
+#    Proximity is determined by rack and data center, which are
+#    explicitly configured in cassandra-topology.properties.
+#  - GossipingPropertyFileSnitch
+#    The rack and datacenter for the local node are defined in
+#    cassandra-rackdc.properties and propagated to other nodes via gossip.  If
+#    cassandra-topology.properties exists, it is used as a fallback, allowing
+#    migration from the PropertyFileSnitch.
+#  - RackInferringSnitch:
+#    Proximity is determined by rack and data center, which are
+#    assumed to correspond to the 3rd and 2nd octet of each node's
+#    IP address, respectively.  Unless this happens to match your
+#    deployment conventions (as it did Facebook's), this is best used
+#    as an example of writing a custom Snitch class.
+#  - Ec2Snitch:
+#    Appropriate for EC2 deployments in a single Region.  Loads Region
+#    and Availability Zone information from the EC2 API. The Region is
+#    treated as the Datacenter, and the Availability Zone as the rack.
+#    Only private IPs are used, so this will not work across multiple
+#    Regions.
+#  - Ec2MultiRegionSnitch:
+#    Uses public IPs as broadcast_address to allow cross-region
+#    connectivity.  (Thus, you should set seed addresses to the public
+#    IP as well.) You will need to open the storage_port or
+#    ssl_storage_port on the public IP firewall.  (For intra-Region
+#    traffic, Cassandra will switch to the private IP after
+#    establishing a connection.)
+#
+# You can use a custom Snitch by setting this to the full class name
+# of the snitch, which will be assumed to be on your classpath.
+endpoint_snitch: ${driver.endpointSnitchName}
+
+# controls how often to perform the more expensive part of host score
+# calculation
+dynamic_snitch_update_interval_in_ms: 100 
+# controls how often to reset all host scores, allowing a bad host to
+# possibly recover
+dynamic_snitch_reset_interval_in_ms: 600000
+# if set greater than zero and read_repair_chance is < 1.0, this will allow
+# 'pinning' of replicas to hosts in order to increase cache capacity.
+# The badness threshold will control how much worse the pinned host has to be
+# before the dynamic snitch will prefer other replicas over it.  This is
+# expressed as a double which represents a percentage.  Thus, a value of
+# 0.2 means Cassandra would continue to prefer the static snitch values
+# until the pinned host was 20% worse than the fastest.
+dynamic_snitch_badness_threshold: 0.1
+
+# request_scheduler -- Set this to a class that implements
+# RequestScheduler, which will schedule incoming client requests
+# according to the specific policy. This is useful for multi-tenancy
+# with a single Cassandra cluster.
+# NOTE: This is specifically for requests from the client and does
+# not affect inter node communication.
+# org.apache.cassandra.scheduler.NoScheduler - No scheduling takes place
+# org.apache.cassandra.scheduler.RoundRobinScheduler - Round robin of
+# client requests to a node with a separate queue for each
+# request_scheduler_id. The scheduler is further customized by
+# request_scheduler_options as described below.
+request_scheduler: org.apache.cassandra.scheduler.NoScheduler
+
+# Scheduler Options vary based on the type of scheduler
+# NoScheduler - Has no options
+# RoundRobin
+#  - throttle_limit -- The throttle_limit is the number of in-flight
+#                      requests per client.  Requests beyond 
+#                      that limit are queued up until
+#                      running requests can complete.
+#                      The value of 80 here is twice the number of
+#                      concurrent_reads + concurrent_writes.
+#  - default_weight -- default_weight is optional and allows for
+#                      overriding the default which is 1.
+#  - weights -- Weights are optional and will default to 1 or the
+#               overridden default_weight. The weight translates into how
+#               many requests are handled during each turn of the
+#               RoundRobin, based on the scheduler id.
+#
+# request_scheduler_options:
+#    throttle_limit: 80
+#    default_weight: 5
+#    weights:
+#      Keyspace1: 1
+#      Keyspace2: 5
+
+# request_scheduler_id -- An identifer based on which to perform
+# the request scheduling. Currently the only valid option is keyspace.
+# request_scheduler_id: keyspace
+
+# index_interval controls the sampling of entries from the primrary
+# row index in terms of space versus time.  The larger the interval,
+# the smaller and less effective the sampling will be.  In technicial
+# terms, the interval coresponds to the number of index entries that
+# are skipped between taking each sample.  All the sampled entries
+# must fit in memory.  Generally, a value between 128 and 512 here
+# coupled with a large key cache size on CFs results in the best trade
+# offs.  This value is not often changed, however if you have many
+# very small rows (many to an OS page), then increasing this will
+# often lower memory usage without a impact on performance.
+index_interval: 128
+
+# Enable or disable inter-node encryption
+# Default settings are TLS v1, RSA 1024-bit keys (it is imperative that
+# users generate their own keys) TLS_RSA_WITH_AES_128_CBC_SHA as the cipher
+# suite for authentication, key exchange and encryption of the actual data transfers.
+# NOTE: No custom encryption options are enabled at the moment
+# The available internode options are : all, none, dc, rack
+#
+# If set to dc cassandra will encrypt the traffic between the DCs
+# If set to rack cassandra will encrypt the traffic between the racks
+#
+# The passwords used in these options must match the passwords used when generating
+# the keystore and truststore.  For instructions on generating these files, see:
+# http://download.oracle.com/javase/6/docs/technotes/guides/security/jsse/JSSERefGuide.html#CreateKeystore
+#
+server_encryption_options:
+    internode_encryption: none
+    keystore: conf/.keystore
+    keystore_password: cassandra
+    truststore: conf/.truststore
+    truststore_password: cassandra
+    # More advanced defaults below:
+    # protocol: TLS
+    # algorithm: SunX509
+    # store_type: JKS
+    # cipher_suites: [TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA]
+
+# enable or disable client/server encryption.
+client_encryption_options:
+    enabled: false
+    keystore: conf/.keystore
+    keystore_password: cassandra
+    # More advanced defaults below:
+    # protocol: TLS
+    # algorithm: SunX509
+    # store_type: JKS
+    # cipher_suites: [TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA]
+
+# internode_compression controls whether traffic between nodes is
+# compressed.
+# can be:  all  - all traffic is compressed
+#          dc   - traffic between different datacenters is compressed
+#          none - nothing is compressed.
+internode_compression: all