<ahref="https://gitter.im/locp/cassandra?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge"><imgsrc="https://badges.gitter.im/Join%20Chat.svg"alt="Join the chat at https://gitter.im/locp/cassandra"></a></p>
<h4>
<aid="table-of-contents"class="anchor"href="#table-of-contents"aria-hidden="true"><spanclass="octicon octicon-link"></span></a>Table of Contents</h4>
<ol>
<li><ahref="#overview">Overview</a></li>
<li>
<ahref="#setup">Setup - The basics of getting started with cassandra</a>
<aid="what-the-cassandra-class-affects"class="anchor"href="#what-the-cassandra-class-affects"aria-hidden="true"><spanclass="octicon octicon-link"></span></a>What the cassandra class affects</h4>
<ul>
<li>Installs the Cassandra package (default <strong>dsc22</strong>).</li>
<li>Configures settings in <em>${config_path}/cassandra.yaml</em>.</li>
<li>Optionally ensures that the Cassandra service is enabled and running.</li>
<li>On Ubuntu systems, optionally replace <code>/etc/init.d/cassandra</code> with a
<aid="what-the-cassandradatastax_agent-class-affects"class="anchor"href="#what-the-cassandradatastax_agent-class-affects"aria-hidden="true"><spanclass="octicon octicon-link"></span></a>What the cassandra::datastax_agent class affects</h4>
<ul>
<li>Optionally installs the DataStax agent.</li>
</ul>
<h4>
<aid="what-the-cassandradatastax_agent-class-affects-1"class="anchor"href="#what-the-cassandradatastax_agent-class-affects-1"aria-hidden="true"><spanclass="octicon octicon-link"></span></a>What the cassandra::datastax_agent class affects</h4>
<ul>
<li>Optionally configures a Yum repository to install the Cassandra packages
from (on Red Hat).</li>
<li>Optionally configures an Apt repository to install the Cassandra packages
from (on Ubuntu).</li>
</ul>
<h4>
<aid="what-the-cassandrafirewall_ports-class-affects"class="anchor"href="#what-the-cassandrafirewall_ports-class-affects"aria-hidden="true"><spanclass="octicon octicon-link"></span></a>What the cassandra::firewall_ports class affects</h4>
<ul>
<li>Optionally configures the firewall for the cassandra related network
ports.</li>
</ul>
<h4>
<aid="what-the-cassandrajava-class-affects"class="anchor"href="#what-the-cassandrajava-class-affects"aria-hidden="true"><spanclass="octicon octicon-link"></span></a>What the cassandra::java class affects</h4>
<ul>
<li>Optionally installs a JRE/JDK package (e.g. java-1.7.0-openjdk) and the
Java Native Access (JNA).</li>
</ul>
<h4>
<aid="what-the-cassandraopscenter-class-affects"class="anchor"href="#what-the-cassandraopscenter-class-affects"aria-hidden="true"><spanclass="octicon octicon-link"></span></a>What the cassandra::opscenter class affects</h4>
<ul>
<li>Installs the opscenter package.</li>
<li>Manages the content of the configuration file
(/etc/opscenter/opscenterd.conf).</li>
<li>Manages the opscenterd service.</li>
</ul>
<h4>
<aid="what-the-cassandraopscentercluster_name-type-affects"class="anchor"href="#what-the-cassandraopscentercluster_name-type-affects"aria-hidden="true"><spanclass="octicon octicon-link"></span></a>What the cassandra::opscenter::cluster_name type affects</h4>
<ul>
<li>An optional type that allows DataStax OpsCenter to connect to a remote
key space for metrics storage. These files will be created in
/etc/opscenter/clusters. The module also creates this directory if
required. This functionality is only valid in DataStax Enterprise.</li>
</ul>
<h4>
<aid="what-the-cassandraopscenterpycrypto-class-affects"class="anchor"href="#what-the-cassandraopscenterpycrypto-class-affects"aria-hidden="true"><spanclass="octicon octicon-link"></span></a>What the cassandra::opscenter::pycrypto class affects</h4>
<ul>
<li>On the Red Hat family it installs the pycrypto library and it's
pre-requisits (the python-devel and python-pip packages).</li>
<li>Optionally installs the Extra Packages for Enterprise Linux (EPEL)
repository.</li>
<li>As a workaround for
<ahref="https://tickets.puppetlabs.com/browse/PUP-3829">PUP-3829</a> a symbolic
link is created from <code>/usr/bin/pip</code> to
<code>/usr/bin/pip-python</code>. Hopefully this can be removed in the not
too distant future.</li>
</ul>
<h4>
<aid="what-the-cassandraoptutils-class-affects"class="anchor"href="#what-the-cassandraoptutils-class-affects"aria-hidden="true"><spanclass="octicon octicon-link"></span></a>What the cassandra::optutils class affects</h4>
<ul>
<li>Optionally installs the Cassandra support tools (e.g. cassandra22-tools).</li>
</ul>
<h3>
<aid="beginning-with-cassandra"class="anchor"href="#beginning-with-cassandra"aria-hidden="true"><spanclass="octicon octicon-link"></span></a>Beginning with cassandra</h3>
<aid="create-a-small-cluster"class="anchor"href="#create-a-small-cluster"aria-hidden="true"><spanclass="octicon octicon-link"></span></a>Create a Small Cluster</h3>
<p>In the DataStax documentation <em>Initializing a multiple node cluster (single
<aid="public-defined-types"class="anchor"href="#public-defined-types"aria-hidden="true"><spanclass="octicon octicon-link"></span></a>Public Defined Types</h3>
<aid="private-defined-types"class="anchor"href="#private-defined-types"aria-hidden="true"><spanclass="octicon octicon-link"></span></a>Private Defined Types</h3>
<p>If the default value of <em>undef</em> is left as it is, then a package called
cassandra22-tools or cassandra-tools will be installed
on a Red Hat family or Ubuntu system respectively. Alternatively, one
can specify a package that is available in a package repository to the
node
(default <strong>undef</strong>).</p>
<h3>
<aid="defined-type-cassandraopscentercluster_name"class="anchor"href="#defined-type-cassandraopscentercluster_name"aria-hidden="true"><spanclass="octicon octicon-link"></span></a>Defined Type cassandra::opscenter::cluster_name</h3>
<p>With DataStax Enterprise, one can specify a remote keyspace for OpsCenter
to store metric data (this is not available in DataStax Community).</p>
for more details. A value of <em>undef</em> will ensure the setting is not
present in the file. Default value <em>undef</em></p>
<h3>
<aid="defined-type-cassandrafirewall_portsrule"class="anchor"href="#defined-type-cassandrafirewall_portsrule"aria-hidden="true"><spanclass="octicon octicon-link"></span></a>Defined Type cassandra::firewall_ports::rule</h3>
<p>Simply a defined type to be used as a macro for setting host based firewall
rules. This is not really supposed to be used by a user (who should use the
API provided by cassandra::firewall_ports instead) but is documented
<aid="defined-type-cassandraopscentersetting"class="anchor"href="#defined-type-cassandraopscentersetting"aria-hidden="true"><spanclass="octicon octicon-link"></span></a>Defined Type cassandra::opscenter::setting</h3>
<p>Simply a defined type to be used as a macro for settings in the OpsCenter
configuration file. This is not really supposed to be used by a user (who
should use the API provided by cassandra::opscenter instead) but is documented