poolparty template for spawning a Cassandra cluster
Ruby
Latest commit 3c18224 Sep 13, 2011 @fuentesjr Merge branch 'develop'
Permalink
Failed to load latest commit information.
lib seed Aug 30, 2011
.gitignore seed Aug 30, 2011
Gemfile seed Aug 30, 2011
Gemfile.lock seed Aug 30, 2011
README.md better wording in README Sep 5, 2011
SWITCHES.txt seed Aug 30, 2011
clouds.rb remove aws load balancer for now Sep 13, 2011
config.yml merge ports config into main config Sep 1, 2011

README.md

Description

This is effectively a poolparty cloud.rb template that can easily spawn a Cassandra (8.x or 7.x) or Brisk cluster on Amazon's EC2. Additionaly, it can easily install OpsCenter when provided with OpsCenter credentials. Most of the heavy lifting is done by the DataStax EC2 AMI and poolparty.

Prereqs: EC2 Setup

Add your AWS Info to ~/.profile or ~/.bashrc:

export EC2_URL="https://<region>.ec2.amazonaws.com/" # (e.g. region: us-west-1)
export EC2_ACCESS_KEY="AAAAAAAAAABBBBBB"
export EC2_SECRET_KEY="NRLSKDM@$@$/4@$%%NNNSN"
export EC2_PRIVATE_KEY="/path/to/pk-XXX.pem"
export EC2_CERT="/path/to/cert-XXX.pem"

Also make sure to generate a keypair to use for ssh access.

For more details see poolparty's setup guide.

Download

git clone git://github.com/fuentesjr/cassies-party.git

Install

cd cassies-party
bundle install --binstubs

Configure

# vim config.yml ... edit, edit, etc.
# make sure to specify your ec2 ssh key (keypair) in config.yml otherwise 
# you won't be able to ssh in. The ec2login default would look for:
# ~/.ssh/ec2login.pem

Spawn cluster

bin/cloud start -c ./clouds.rb # This spawns the cluster
bin/cloud ssh -c ./clouds.rb # Wait a few minutes while the DataStax AMI does its magic

Then have at it!

Resources

  1. Great info when running on EC2
  2. Spawn cluster with DataStax AMI
  3. Cassandra Cloud Wiki

MIT License

Copyright (c) 2011 Salvador Fuentes Jr.

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.