Jump to: navigation, search
Line 7: Line 7:
 
* Single Datacenter — 1 datacenter with a minimum of three Cassandra nodes
 
* Single Datacenter — 1 datacenter with a minimum of three Cassandra nodes
 
* Two Datacenters — 2 datacenters with a minimum of three Cassandra nodes in each datacenter
 
* Two Datacenters — 2 datacenters with a minimum of three Cassandra nodes in each datacenter
 +
 +
{{NoteFormat|For more complex Cassandra deployments, please consult with Genesys.}}
  
 
Select a tab below for the procedure that matches your deployment scenario.
 
Select a tab below for the procedure that matches your deployment scenario.
 
<!-- Available styles: (default)-Important, 2-Tip, 3-Warning -->
 
<!-- Important: equal signs (=) will not work in a note. Use the equivalent HTML code (&#61;) instead.-->
 
{{NoteFormat|For more complex Cassandra deployments, please consult with Genesys.}}
 
  
 
<tabber>
 
<tabber>
Line 20: Line 18:
  
 
<ol>
 
<ol>
<li>Copy the <tt>ks-schema-local.txt</tt> file from <tt>[installation_CD]/data</tt> to the Cassandra node host.</li>
+
<li>Copy the '''ks-schema-local.txt''' file from '''''installation_CD''/data''' to the Cassandra node host.</li>
<li>By default, the replication factor is set to <tt>1</tt>. Since this is a single node deployment, you do not need to modify this value. Refer to the [http://www.datastax.com/documentation/cassandra/1.2/cassandra/architecture/architectureDataDistributeReplication_c.html Cassandra documentation] for more information about replication factors.</li>
+
<li>By default, the replication factor is set to <tt>1</tt>. Since this is a single node deployment, you don't need to modify this value. Refer to the [http://www.datastax.com/documentation/cassandra/1.2/cassandra/architecture/architectureDataDistributeReplication_c.html Cassandra documentation] for more information about replication factors.</li>
<nowiki>and strategy_options = {replication_factor : 1}</nowiki>
+
<source lang="text">
 +
and strategy_options = {replication_factor : 1}
 +
</source>
 
<li>Run the following command to create the Cassandra schema:</li>
 
<li>Run the following command to create the Cassandra schema:</li>
<nowiki>[cassandra install dir]/bin/cassandra-cli  -h [cassandra host] --file ks-schema-local.txt</nowiki>
+
<tt>''cassandra_install_dir''/bin/cassandra-cli  -h ''cassandra_host'' --file ks-schema-local.txt</tt>
 
+
* <tt>''cassandra_host''</tt> is the host name (fully qualified domain name) or IP address of the Cassandra node.
* <tt>[cassandra host]</tt> is the host name (fully qualified domain name) or IP address of the Cassandra node
 
 
</ol>
 
</ol>
 
'''End'''
 
'''End'''
Line 34: Line 33:
  
 
<ol>
 
<ol>
<li>Copy the <tt>cf-schema.txt</tt> file from <tt>[installation_CD]/data</tt> to the Cassandra node host.</li>
+
<li>Copy the '''cf-schema.txt''' file from '''''installation_CD''/data''' to the Cassandra node host.</li>
 
<li>Run the following command to create the Cassandra schema:</li>
 
<li>Run the following command to create the Cassandra schema:</li>
<nowiki>[cassandra install dir]/bin/cassandra-cli  -h [cassandra host] --file cf-schema.txt</nowiki>
+
<tt>''cassandra_install_dir''/bin/cassandra-cli  -h ''cassandra_host'' --file cf-schema.txt</tt>
* <tt>[cassandra host]</tt> is the host name (fully qualified domain name) or IP address of the Cassandra node
+
* <tt>''cassandra_host''</tt> is the host name (fully qualified domain name) or IP address of the Cassandra node.
 
</ol>
 
</ol>
  
Line 50: Line 49:
  
 
<ol>
 
<ol>
<li>Copy the <tt>ks-schema-prod.txt</tt> file from <tt>[installation_CD]/data</tt> to the Cassandra node host.</li>
+
<li>Copy the '''ks-schema-prod.txt''' file from '''''installation_CD''/data''' to the Cassandra node host.</li>
<li>For fault tolerance, Genesys recommends that you use at least 3 Cassandra nodes and set the replication factor to 3. Please refer to the [http://www.datastax.com/documentation/cassandra/1.2/cassandra/architecture/architectureDataDistributeReplication_c.html Cassandra documentation] for more information about replication factors. To modify this value, change the following line:</li>
+
<li>For fault tolerance, Genesys recommends that you use at least 3 Cassandra nodes and set the replication factor to <tt>3</tt>. Refer to the [http://www.datastax.com/documentation/cassandra/1.2/cassandra/architecture/architectureDataDistributeReplication_c.html Cassandra documentation] for more information about replication factors. To modify this value, change the following line:</li>
<nowiki>and strategy_options = {replication_factor : <replication-factor-in-your-lab>}</nowiki>
+
<source lang="text">
 +
and strategy_options = {replication_factor : <replication-factor-in-your-lab>}
 +
</source>
 
<li>Run the following command to create the Cassandra schema:</li>
 
<li>Run the following command to create the Cassandra schema:</li>
<nowiki>[cassandra install dir]/bin/cassandra-cli  -h [cassandra host] --file ks-schema-prod.txt</nowiki>
+
<tt>''cassandra_install_dir''/bin/cassandra-cli  -h ''cassandra_host'' --file ks-schema-prod.txt</tt>
* <tt>[cassandra host]</tt> is the host name (fully qualified domain name) or IP address of the Cassandra node
+
* <tt>''cassandra_host''</tt> is the host name (fully qualified domain name) or IP address of the Cassandra node
 
</ol>
 
</ol>
 
'''End'''
 
'''End'''
Line 65: Line 66:
  
 
<ol>
 
<ol>
<li>Copy the <tt>cf-schema.txt</tt> file from <tt>[installation_CD]/data</tt> to the Cassandra node host.</li>
+
<li>Copy the '''cf-schema.txt''' file from '''''installation_CD''/data''' to the Cassandra node host.</li>
 
<li>Run the following command to create the Cassandra schema:</li>
 
<li>Run the following command to create the Cassandra schema:</li>
<nowiki>[cassandra install dir]/bin/cassandra-cli  -h [cassandra host] --file cf-schema.txt</nowiki>
+
<tt>''cassandra_install_dir''/bin/cassandra-cli  -h ''cassandra_host'' --file cf-schema.txt</nowiki>
* <tt>[cassandra host]</tt> is the host name (fully qualified domain name) or IP address of the Cassandra node
+
* <tt>''cassandra_host''</tt> is the host name (fully qualified domain name) or IP address of the Cassandra node
 
</ol>
 
</ol>
  
Line 81: Line 82:
  
 
<ol>
 
<ol>
<li>Copy the <tt>ks-schema-prod_HA.txt</tt> file from <tt>[installation_CD]/data</tt> to the Cassandra node host.</li>
+
<li>Copy the '''ks-schema-prod_HA.txt''' file from '''''installation_CD''/data''' to the Cassandra node host.</li>
 
<li>Modify the following line:
 
<li>Modify the following line:
<pre>with strategy_options ={ AZ1 : 3, AZ2 : 3 }</pre>
+
<source lang="text">
 +
with strategy_options ={ AZ1 : 3, AZ2 : 3 }
 +
</source>
 
<ol type="a">
 
<ol type="a">
<li>Add the datacenter name. You can use nodetool to find the name of the datacenter by examining the output of "nodetool ring" (the tool is located in the <tt>bin</tt> directory of Cassandra). The following is sample output from the nodetool:</li>
+
<li>Add the datacenter name. You can use nodetool to find the name of the datacenter by examining the output of "nodetool ring" (the tool is located in the '''bin''' directory of Cassandra). The following is sample output from the nodetool:</li>
<nowiki>/genesys/apache-cassandra-1.1.6/bin$ ./nodetool ring
+
<source lang="text">
 +
/genesys/apache-cassandra-1.1.6/bin$ ./nodetool ring
 
Address        DC          Rack  Status  State  Load      Owns    Token
 
Address        DC          Rack  Status  State  Load      Owns    Token
 
192.0.2.10    datacenter1  rack1  Up      Normal  14.97 MB  100.00%  0
 
192.0.2.10    datacenter1  rack1  Up      Normal  14.97 MB  100.00%  0
Line 93: Line 97:
 
198.51.100.11  datacenter2  rack1  Up      Normal  14.97 MB  100.00%  56713727820156410577229101238628035242
 
198.51.100.11  datacenter2  rack1  Up      Normal  14.97 MB  100.00%  56713727820156410577229101238628035242
 
192.0.2.12    datacenter1  rack1  Up      Normal  14.97 MB  100.00%  113427455640312821154458202477256070484
 
192.0.2.12    datacenter1  rack1  Up      Normal  14.97 MB  100.00%  113427455640312821154458202477256070484
198.51.100.12  datacenter2  rack1  Up      Normal  14.97 MB  100.00%  113427455640312821154458202477256070484</nowiki>
+
198.51.100.12  datacenter2  rack1  Up      Normal  14.97 MB  100.00%  113427455640312821154458202477256070484
 +
</source>
 
<li>Add the replication factor. Refer to the [http://www.datastax.com/documentation/cassandra/1.2/cassandra/architecture/architectureDataDistributeReplication_c.html Cassandra documentation] for more information about replication factors.</li>
 
<li>Add the replication factor. Refer to the [http://www.datastax.com/documentation/cassandra/1.2/cassandra/architecture/architectureDataDistributeReplication_c.html Cassandra documentation] for more information about replication factors.</li>
 
</ol>
 
</ol>
Based on the nodetool output above, your line might be: <pre>with strategy_options ={ datacenter1 : 3, datacenter2 : 3 }</pre>
+
Based on the nodetool output above, your line might be:  
 +
<source lang="text">
 +
with strategy_options ={ datacenter1 : 3, datacenter2 : 3 }
 +
</source>
 
</li>
 
</li>
 
<li>Run the following command to create the Cassandra schema:</li>
 
<li>Run the following command to create the Cassandra schema:</li>
<nowiki>[cassandra install dir]/bin/cassandra-cli  -h [cassandra host] --file ks-schema-prod_HA.txt</nowiki>
+
<tt>''cassandra_install_dir''/bin/cassandra-cli  -h ''cassandra_host'' --file ks-schema-prod_HA.txt</nowiki>
* <tt>[cassandra host]</tt> is the host name (fully qualified domain name) or IP address of the Cassandra node
+
* <tt>''cassandra_host''</tt> is the host name (fully qualified domain name) or IP address of the Cassandra node
 
</ol>
 
</ol>
 
'''End'''
 
'''End'''
Line 110: Line 118:
  
 
<ol>
 
<ol>
<li>Copy the <tt>cf-schema.txt</tt> file from <tt>[installation_CD]/data</tt> to the Cassandra node host.</li>
+
<li>Copy the '''cf-schema.txt</tt> file from <tt>[installation_CD]/data</tt> to the Cassandra node host.</li>
 
<li>Run the following command to create the Cassandra schema:</li>
 
<li>Run the following command to create the Cassandra schema:</li>
<nowiki>[cassandra install dir]/bin/cassandra-cli  -h [cassandra host] --file cf-schema.txt</nowiki>
+
<tt>''cassandra_install_dir''/bin/cassandra-cli  -h ''cassandra_host'' --file cf-schema.txt</tt>
* <tt>[cassandra host]</tt> is the host name (fully qualified domain name) or IP address of the Cassandra node
+
* <tt>''cassandra_host''</tt> is the host name (fully qualified domain name) or IP address of the Cassandra node
 
</ol>
 
</ol>
  

Revision as of 12:28, April 1, 2015

Initializing Cassandra

Creating the Cassandra Keyspace

The procedures below describe how to create the Cassandra keyspace for the following scenarios:

  • Development — 1 Cassandra node (appropriate for a development or lab environment)
  • Single Datacenter — 1 datacenter with a minimum of three Cassandra nodes
  • Two Datacenters — 2 datacenters with a minimum of three Cassandra nodes in each datacenter
Important
For more complex Cassandra deployments, please consult with Genesys.

Select a tab below for the procedure that matches your deployment scenario.

Creating the Cassandra Keyspace (1 Cassandra node)

Start

  1. Copy the ks-schema-local.txt file from installation_CD/data to the Cassandra node host.
  2. By default, the replication factor is set to 1. Since this is a single node deployment, you don't need to modify this value. Refer to the Cassandra documentation for more information about replication factors.
  3. and strategy_options = {replication_factor : 1}
  4. Run the following command to create the Cassandra schema:
  5. cassandra_install_dir/bin/cassandra-cli -h cassandra_host --file ks-schema-local.txt

  • cassandra_host is the host name (fully qualified domain name) or IP address of the Cassandra node.

End

Creating the Column Families

Start

  1. Copy the cf-schema.txt file from installation_CD/data to the Cassandra node host.
  2. Run the following command to create the Cassandra schema:
  3. cassandra_install_dir/bin/cassandra-cli -h cassandra_host --file cf-schema.txt

  • cassandra_host is the host name (fully qualified domain name) or IP address of the Cassandra node.

End

Creating the Cassandra Keyspace (1 datacenter)

Complete the following procedure on one node in your Cassandra cluster.

Start

  1. Copy the ks-schema-prod.txt file from installation_CD/data to the Cassandra node host.
  2. For fault tolerance, Genesys recommends that you use at least 3 Cassandra nodes and set the replication factor to 3. Refer to the Cassandra documentation for more information about replication factors. To modify this value, change the following line:
  3. and strategy_options = {replication_factor : <replication-factor-in-your-lab>}
  4. Run the following command to create the Cassandra schema:
  5. cassandra_install_dir/bin/cassandra-cli -h cassandra_host --file ks-schema-prod.txt

  • cassandra_host is the host name (fully qualified domain name) or IP address of the Cassandra node

End

Creating the Column Families

Complete the following procedure on one node in your Cassandra cluster.

Start

  1. Copy the cf-schema.txt file from installation_CD/data to the Cassandra node host.
  2. Run the following command to create the Cassandra schema:
  3. cassandra_install_dir/bin/cassandra-cli -h cassandra_host --file cf-schema.txt</nowiki>

    • cassandra_host is the host name (fully qualified domain name) or IP address of the Cassandra node

End

Creating the Cassandra Keyspace (2 datacenters)

Complete the following procedure on one node in your Cassandra cluster.

Start

  1. Copy the ks-schema-prod_HA.txt file from installation_CD/data to the Cassandra node host.
  2. Modify the following line:
    with strategy_options ={ AZ1 : 3, AZ2 : 3 }
    1. Add the datacenter name. You can use nodetool to find the name of the datacenter by examining the output of "nodetool ring" (the tool is located in the bin directory of Cassandra). The following is sample output from the nodetool:
    2. /genesys/apache-cassandra-1.1.6/bin$ ./nodetool ring
      Address        DC           Rack   Status  State   Load      Owns     Token
      192.0.2.10     datacenter1  rack1  Up      Normal  14.97 MB  100.00%  0
      198.51.100.10  datacenter2  rack1  Up      Normal  14.97 MB  100.00%  100
      192.0.2.11     datacenter1  rack1  Up      Normal  14.97 MB  100.00%  56713727820156410577229101238628035242
      198.51.100.11  datacenter2  rack1  Up      Normal  14.97 MB  100.00%  56713727820156410577229101238628035242
      192.0.2.12     datacenter1  rack1  Up      Normal  14.97 MB  100.00%  113427455640312821154458202477256070484
      198.51.100.12  datacenter2  rack1  Up      Normal  14.97 MB  100.00%  113427455640312821154458202477256070484
    3. Add the replication factor. Refer to the Cassandra documentation for more information about replication factors.

    Based on the nodetool output above, your line might be:

    with strategy_options ={ datacenter1 : 3, datacenter2 : 3 }
  3. Run the following command to create the Cassandra schema:
  4. cassandra_install_dir/bin/cassandra-cli -h cassandra_host --file ks-schema-prod_HA.txt</nowiki>

    • cassandra_host is the host name (fully qualified domain name) or IP address of the Cassandra node

End

Creating the Column Families

Complete the following procedure on one node in your Cassandra cluster.

Start

  1. Copy the cf-schema.txt file from [installation_CD]/data to the Cassandra node host.
  2. Run the following command to create the Cassandra schema:
  3. cassandra_install_dir/bin/cassandra-cli -h cassandra_host --file cf-schema.txt

  • cassandra_host is the host name (fully qualified domain name) or IP address of the Cassandra node

End

Next Steps

Comments or questions about this documentation? Contact us for support!