PC & OS -Information
vijay@hp-15-notebook-pc:~$ uname -a
Linux vijay.cluster.node1 3.16.0-33-generic #44~14.04.1-Ubuntu SMP Fri Mar 13 10:33:29 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux
vijay@hp-15-notebook-pc:~$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 14.04.2 LTS
Release: 14.04
Codename: trusty
RAM : 4 GB (3.3 GiB available)
Processor : AMD A8-6410 APU with AMD Radeon R5 Graphics × 4
OS type : 64 bit
Disk : 109.6 GB
Download
http://apache.cs.utah.edu/cassandra/2.0.15/apache-cassandra-2.0.15-bin.tar.gz
Make Sure Java is available
vijay@hp-15-notebook-pc:~/developer/installations$ java -version
java version “1.7.0_45”
Java(TM) SE Runtime Environment (build 1.7.0_45-b18)
Java HotSpot(TM) 64-Bit Server VM (build 24.45-b08, mixed mode)
Unzip
vijay@hp-15-notebook-pc:~/developer/installations$ tar -xf apache-cassandra-2.0.15-bin.tar.gz
vijay@hp-15-notebook-pc:~/developer/installations$ ls -l
total 17704
drwxrwxr-x 9 vijay vijay 4096 May 20 21:24 apache-cassandra-2.0.15
-rw-rw-r– 1 vijay vijay 18111795 May 20 21:22 apache-cassandra-2.0.15-bin.tar.gz
drwxr-xr-x 8 vijay vijay 4096 Oct 8 2013 jdk1.7.0_45
drwxr-xr-x 5 vijay vijay 4096 Apr 19 20:27 sublime
vijay@hp-15-notebook-pc:~/developer/installations$ rm -r apache-cassandra-2.0.15-bin.tar.gz
vijay@hp-15-notebook-pc:~/developer/installations$ ls
apache-cassandra-2.0.15 jdk1.7.0_45 sublime
vijay@hp-15-notebook-pc:~/developer/installations$ cd apache-cassandra-2.0.15/
vijay@hp-15-notebook-pc:~/developer/installations/apache-cassandra-2.0.15$ ls
bin CHANGES.txt conf interface javadoc lib LICENSE.txt NEWS.txt NOTICE.txt pylib tools
vijay@hp-15-notebook-pc:~/developer/installations/apache-cassandra-2.0.15$ ls -l
total 320
drwxr-xr-x 2 vijay vijay 4096 May 20 21:24 bin
-rw-r–r– 1 vijay vijay 220336 May 13 21:17 CHANGES.txt
drwxr-xr-x 3 vijay vijay 4096 May 20 21:24 conf
drwxr-xr-x 2 vijay vijay 4096 May 20 21:24 interface
drwxr-xr-x 4 vijay vijay 4096 May 20 21:24 javadoc
drwxr-xr-x 3 vijay vijay 4096 May 20 21:24 lib
-rw-r–r– 1 vijay vijay 11609 May 13 21:17 LICENSE.txt
-rw-r–r– 1 vijay vijay 60141 May 13 21:17 NEWS.txt
-rw-r–r– 1 vijay vijay 2030 May 13 21:17 NOTICE.txt
drwxr-xr-x 3 vijay vijay 4096 May 20 21:24 pylib
drwxr-xr-x 4 vijay vijay 4096 May 13 21:17 tools
vijay@hp-15-notebook-pc:~/developer/installations/apache-cassandra-2.0.15$ pwd
/home/vijay/developer/installations/apache-cassandra-2.0.15
vijay@hp-15-notebook-pc:~/developer/installations/apache-cassandra-2.0.15$ cd bin/
vijay@hp-15-notebook-pc:~/developer/installations/apache-cassandra-2.0.15/bin$ ls
cassandra cassandra.in.sh debug-cql.bat nodetool.bat sstablekeys.bat sstablescrub.bat sstableupgrade.bat
cassandra.bat cqlsh json2sstable sstable2json sstableloader sstablesplit stop-server
cassandra-cli cqlsh.bat json2sstable.bat sstable2json.bat sstableloader.bat sstablesplit.bat
cassandra-cli.bat debug-cql nodetool sstablekeys sstablescrub sstableupgrade
vijay@hp-15-notebook-pc:~/developer/installations/apache-cassandra-2.0.15/bin$
Change Directory Permissions
Next, make sure that the folders Cassandra accesses, such as the log folder, exists and that Cassandra has the right to write on it:
sudo mkdir /var/lib/cassandra
sudo mkdir /var/log/cassandra
sudo chown -R $USER:$GROUP /var/lib/cassandra
sudo chown -R $USER:$GROUP /var/log/cassandra
Set Cassandra Path and Home
vijay@cluster-01:~$ sudo vim ~/.bashrc
vijay@cluster-01:~$ source ~/.bashrc
vijay@cluster-01:~$ tail ~/.bashrc
#——— Cassandra
export export CASSANDRA_HOME=/home/vijay/developer/installations/apache-cassandra-2.0.15
export PATH=$PATH:$CASSANDRA_HOME/bin
vijay@cluster-01:~$
Start Cassandra:
restart terminal session and run below command.
vijay@cluster-01:~$ cassandra -p
STOP Cassandra:
vijay@cluster-01:~$ jps
4180 CassandraDaemon
4414 Jps
vijay@cluster-01:~$ sudo kill -9 4180 (or) pkill -f CassandraDaemon
[sudo] password for vijay:
vijay@cluster-01:~$ jps
4439 Jps
Start Cassandra and start CLI – cqlsh
vijay@cluster-01:~$ cqlsh
Connected to Test Cluster at localhost:9160.
[cqlsh 4.1.1 | Cassandra 2.0.15 | CQL spec 3.1.1 | Thrift protocol 19.39.0]
Use HELP for help.
Create a keyspace — a namespace of tables.
cqlsh> CREATE KEYSPACE mykeyspace
… WITH REPLICATION = { ‘class’ : ‘SimpleStrategy’, ‘replication_factor’ : 1 };
Help
cqlsh> help
Documented shell commands:
===========================
CAPTURE COPY DESCRIBE EXPAND SHOW TRACING
CONSISTENCY DESC EXIT HELP SOURCE
CQL help topics:
================
ALTER CREATE_TABLE_OPTIONS SELECT
ALTER_ADD CREATE_TABLE_TYPES SELECT_COLUMNFAMILY
ALTER_ALTER CREATE_USER SELECT_EXPR
ALTER_DROP DELETE SELECT_LIMIT
ALTER_RENAME DELETE_COLUMNS SELECT_TABLE
ALTER_USER DELETE_USING SELECT_WHERE
ALTER_WITH DELETE_WHERE TEXT_OUTPUT
APPLY DROP TIMESTAMP_INPUT
ASCII_OUTPUT DROP_COLUMNFAMILY TIMESTAMP_OUTPUT
BEGIN DROP_INDEX TRUNCATE
BLOB_INPUT DROP_KEYSPACE TYPES
BOOLEAN_INPUT DROP_TABLE UPDATE
COMPOUND_PRIMARY_KEYS DROP_USER UPDATE_COUNTERS
CREATE GRANT UPDATE_SET
CREATE_COLUMNFAMILY INSERT UPDATE_USING
CREATE_COLUMNFAMILY_OPTIONS LIST UPDATE_WHERE
CREATE_COLUMNFAMILY_TYPES LIST_PERMISSIONS USE
CREATE_INDEX LIST_USERS UUID_INPUT
CREATE_KEYSPACE PERMISSIONS
CREATE_TABLE REVOKE
cqlsh> USE mykeyspace;
cqlsh:mykeyspace>
Create table
cqlsh> USE mykeyspace;
cqlsh:mykeyspace> CREATE TABLE users (
… user_id int PRIMARY KEY,
… fname text,
… lname text
… );
Insert the data
cqlsh:mykeyspace> INSERT INTO users (user_id, fname, lname)
… VALUES (1745, ‘john’, ‘smith’);
cqlsh:mykeyspace> INSERT INTO users (user_id, fname, lname)
… VALUES (1744, ‘john’, ‘doe’);
cqlsh:mykeyspace> INSERT INTO users (user_id, fname, lname)
… VALUES (1746, ‘john’, ‘smith’);
Check the entries
cqlsh:mykeyspace> SELECT * FROM users;
user_id | fname | lname
———+——-+——-
1745 | john | smith
1744 | john | doe
1746 | john | smith
(3 rows)
cqlsh:mykeyspace>
Indexing
—You can retrieve data about users whose last name is smith by creating an index, then querying the table as follows:
cqlsh:mykeyspace> CREATE INDEX ON users (lname);
cqlsh:mykeyspace> SELECT * FROM users WHERE lname = ‘smith’;
user_id | fname | lname
———+——-+——-
1745 | john | smith
1746 | john | smith
(2 rows)
cqlsh:mykeyspace>
Node tool
vijay@cluster-01:~$ nodetool -h localhost status
Note: Ownership information does not include topology; for complete information, specify a keyspace
Datacenter: datacenter1
=======================
Status=Up/Down
|/ State=Normal/Leaving/Joining/Moving
— Address Load Tokens Owns Host ID Rack
UN 127.0.0.1 117.04 KB 256 100.0% 971c1a4f-4e49-4400-801a-2e27d46af032 rack1
vijay@cluster-01:~$
For GUI Installation
http://downloads.datastax.com/community/opscenter-5.0.tar.gz