Cassandra “Quick Install” on CentOS 5
Cassandra is notoriously a pain to install on CentOS. So partially as documentation for myself, here are the “quick install” steps for getting Cassandra up and running. For explanation, see the official Cassandra documentation. I think the biggest reason this differs so significantly from other install guides out there is that I wanted it to work on RightScale (know issues w/Java) as well as CentOS 5.1-5.4. I can’t wait until I can get Cassandra from yum …..
# Generic tools needed to install. Note that this is significantly more
# than found in any docs, but I couldn't get things to build otherwise
yum -y install gcc-c++ make cmake python-devel bzip2-devel zlib-devel
yum -y install log4cpp-devel git git-core cronolog google-perftools-devel
yum -y install readline-devel ncurses-devel libtool autoconf expat
yum -y install libevent-devel flex byacc expat-devel
# Perl Modules for Thrift Install
yum -y install perl-Bit-Vector perl-Class-Accessor
# Ruby Install
yum -y install ruby rubygems ruby-devel rake
# 1.42.0 Boost C++ Libraries
# (must build manually because yum repos are too old)
cd /usr/local/src/
wget http://sourceforge.net/projects/boost/files/boost/1.43.0/boost_1_43_0.tar.gz/download
tar xvzf boost_1_43_0.tar.gz
cd boost_1_43_0
./bootstrap.sh
./bjam install
# Java Install
yum -y remove jpackage-utils
wget http://dev.centos.org/centos/5/testing/x86_64/RPMS/jpackage-utils-1.7.5-1jpp.1.el5.centos.noarch.rpm
rpm -ivh jpackage-utils-1.7.5-1jpp.1.el5.centos.noarch.rpm
yum -y install xml-commons-apis xml-commons-apis-javadoc ant
yum -y install java
yum -y install log4j jakarta-commons-logging jakarta-commons-lang
yum -y install java-1.4.2-gcj-compat java-1.4.2-gcj-compat-devel
# Install Thrift (link probably won't work)
cd /usr/local/src
wget http://www.poolsaboveground.com/apache/incubator/thrift/0.2.0-incubating/thrift-0.2.0-incubating.tar.gz
./configure && make && make install
# Get Cassandra: Authoritative link is http://incubator.apache.org/cassandra/
cd /usr/local
# Note this link will probably not work
wget http://apache.opensourceresources.org/cassandra/0.6.1/apache-cassandra-0.6.1-bin.tar.gz
tar xvzf apache-cassandra-0.6.1-bin.tar.gz
ln -s /usr/local/apache-cassandra-0.6.1 /usr/local/cassandra
useradd cassandra
mkdir -p /var/log/cassandra
chown cassandra /var/log/cassandra
mkdir -p /var/lib/cassandra
chown cassandra /var/lib/cassandra
# Put in place an init.d file
cd /etc/init.d/
# Taken from http://posulliv.com/2009/09/07/building-a-small-cassandra-cluster-for-testing-and-development.html
wget http://www.pablowe.net/cassandra
chmod +x cassandra
chkconfig --add cassandra
chkconfig --levels 2345 cassandra on