blob: d4d722cc26460e96f04605b7bbab023bbe70a4a8 [file] [log] [blame]
Ubuntuc57c5f92013-02-06 21:11:43 +00001#!/bin/bash
2
Masayoshi Kobayashicbd5e0a2013-02-25 19:00:19 +00003# Set paths
Masayoshi Kobayashi20224872013-06-20 17:00:17 -07004ONOS_HOME=`dirname $0`
HIGUCHI Yuta76b0ad32013-06-11 15:06:21 -07005CASSANDRA_DIR=${HOME}/apache-cassandra-1.2.4
Ubuntuc57c5f92013-02-06 21:11:43 +00006LOGDIR=${HOME}/ONOS/onos-logs
Masayoshi Kobayashi274c07d2013-02-20 21:38:16 +00007CASSANDRA_LOG=$LOGDIR/cassandara.`hostname`.log
Ubuntuc57c5f92013-02-06 21:11:43 +00008
9function lotate {
Masayoshi Kobayashi274c07d2013-02-20 21:38:16 +000010 logfile=$1
11 nr_max=${2:-10}
12 if [ -f $logfile ]; then
13 for i in `seq $(expr $nr_max - 1) -1 1`; do
14 if [ -f ${logfile}.${i} ]; then
15 mv -f ${logfile}.${i} ${logfile}.`expr $i + 1`
16 fi
17 done
18 mv $logfile $logfile.1
Ubuntuc57c5f92013-02-06 21:11:43 +000019 fi
Ubuntuc57c5f92013-02-06 21:11:43 +000020}
21
22function start {
23 if [ ! -d ${LOGDIR} ]; then
24 mkdir -p ${LOGDIR}
25 fi
26 echo "rotate log: $log"
27 if [ -f $CASSANDRA_LOG ]; then
28 lotate $CASSANDRA_LOG
29 fi
30
31 # Run cassandra
32 echo "Starting cassandra"
Masayoshi Kobayashiabcc2372013-06-24 13:57:55 -070033 echo "[WARNING] This script copies conf/cassandra.yam to $CASSANDRA_DIR/conf/cassandra.yaml (overwrites)"
34 echo "original cassandra.yaml was backed up as cassandra.yaml.backup"
Masayoshi Kobayashi60ff4502013-06-24 14:15:28 -070035 cp $CASSANDRA_DIR/conf/cassandra.yaml $CASSANDRA_DIR/conf/cassandra.yaml.backup
Masayoshi Kobayashicf909f92013-06-21 13:28:22 -070036 cp ${ONOS_HOME}/conf/cassandra.yaml $CASSANDRA_DIR/conf
Ubuntuc57c5f92013-02-06 21:11:43 +000037 $CASSANDRA_DIR/bin/cassandra > $CASSANDRA_LOG 2>&1
38}
39
40function stop {
41 # Kill the existing processes
42 capid=`ps -edalf |grep java |grep apache-cassandra | awk '{print $4}'`
43 pids="$capid"
44 for p in ${pids}; do
45 if [ x$p != "x" ]; then
Pavlin Radoslavovb531d712013-03-29 15:13:43 -070046 kill -KILL $p
Ubuntuc57c5f92013-02-06 21:11:43 +000047 echo "Killed existing prosess (pid: $p)"
48 fi
49 done
50}
51
Masayoshi Kobayashicbd5e0a2013-02-25 19:00:19 +000052function deldb {
Ubuntuc57c5f92013-02-06 21:11:43 +000053# # Delete the berkeley db database
Masayoshi Kobayashicbd5e0a2013-02-25 19:00:19 +000054 if [ -d "/tmp/cassandra.titan" ]; then
55 echo "deleting berkeley db dir"
56 sudo rm -rf /tmp/cassandra.titan
57 fi
58}
Ubuntuc57c5f92013-02-06 21:11:43 +000059
60case "$1" in
61 start)
Masayoshi Kobayashicbd5e0a2013-02-25 19:00:19 +000062 deldb
Masayoshi Kobayashi20224872013-06-20 17:00:17 -070063 cp $ONOS_HOME/conf/cassandra.titan /tmp
Ubuntuc57c5f92013-02-06 21:11:43 +000064 stop
65 start
66 ;;
67 stop)
68 stop
69 ;;
70# deldb)
71# deldb
72# ;;
73 status)
74 n=`ps -edalf |grep java |grep apache-cassandra | wc -l`
75 echo "$n instance of cassandra running"
76 $CASSANDRA_DIR/bin/nodetool ring
77 ;;
78 *)
79 echo "Usage: $0 {start|stop|restart|status}"
80 exit 1
81esac