Skip to content

Instantly share code, notes, and snippets.

@dbathgate
Last active August 25, 2016 14:38
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save dbathgate/4da3d2e2826979659d01 to your computer and use it in GitHub Desktop.
Save dbathgate/4da3d2e2826979659d01 to your computer and use it in GitHub Desktop.
Installing Cassandra 2.1.x cluster in AWS with RAID0 array
# Installing Cassandra 2.1.x cluster in AWS with RAID0 array
# Prerequisites:
# - CentOS 7 (x86_64) with Updates HVM (available on AWS Marketplace)
# - Instance type with 2 hard drives for RAID0 array
CLUSTER_NAME="Drb Cluster"
SEED="10.0.0.11"
PRIVATE_IP=$(curl -s http://169.254.169.254/latest/meta-data/local-ipv4)
######### Create RAID0 Array ############
yum install mdadm -y
umount /dev/xvdb
yes | mdadm --create --verbose /dev/md0 --level=0 --name=MY_RAID --raid-devices=2 /dev/xvdb /dev/xvdc
mkfs.xfs -f -K /dev/md0
mkdir /var/lib/cassandra
mount /dev/md0 /var/lib/cassandra
#########################################
######### Install Cassandra #############
cat > /etc/yum.repos.d/datastax.repo <<EOF
[datastax]
name = DataStax Repo for Apache Cassandra
baseurl = http://rpm.datastax.com/community
enabled = 1
gpgcheck = 0
EOF
yum install -y java-1.8.0-openjdk
yum install -y dsc21.noarch
sed -i -e "s/cluster_name: 'Test Cluster'/cluster_name: '$CLUSTER_NAME'/g" /etc/cassandra/conf/cassandra.yaml
sed -i -e "s/- seeds: \"127.0.0.1\"/- seeds: \"$SEED\"/g" /etc/cassandra/conf/cassandra.yaml
sed -i -e "s/listen_address: localhost/listen_address: $PRIVATE_IP/g" /etc/cassandra/conf/cassandra.yaml
sed -i -e "s/rpc_address: localhost/rpc_address: $PRIVATE_IP/g" /etc/cassandra/conf/cassandra.yaml
sed -i -e "s/endpoint_snitch: SimpleSnitch/endpoint_snitch: Ec2Snitch/g" /etc/cassandra/conf/cassandra.yaml
/etc/init.d/cassandra start
#########################################
@mattmikula
Copy link

Nice.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment