Not your grandparents’ EC2 deployment tool.
Rudy is a command-line development and deployment tool for Amazon Web Services. It helps you build and manage machines in EC2 by organizing them into groups of environments and roles. These are called machine groups. stage
is the default environment and app
is the default role. You can run multiple machines with the same role. These are called positions. Rudy also supports running machine groups across availability zones.
When you put all this together, you have a unique name for every machine. The default machine is:
zone env role v v v m-us-east-1b-stage-app-01 ^ ^ "machine" position
All configuration is organized into the zones, environments, and roles that you specify (Rudy assumes positions are identical which is important for backups and scaling). And as you’d expect, the defaults can be changed too (in ~/.rudy/config
).
See Getting-Started[http://wiki.github.com/solutious/rudy/getting-started] for more info.
NOTE: This is a BETA release. That means Rudy’s not ready for production use! See Project-Status[http://wiki.github.com/solutious/rudy/project-status].
-
Create complex environments with a single command
-
Launch multiple instances
-
Assign elastic IP addresses
-
Create EBS volumes, attach to instances, format, and mount
-
Run scripts locally and remotely automatically
-
-
Organize instances into environments and roles
-
Powerful command-line tools
-
$ rudy -u root ssh
-
$ rudy -e testing -r database startup
-
-
Use _any Linux_ Amazon machine image (AMI) (partial Solaris support)
-
Complete command-line interface for EC2. See
bin/rudy-ec2
.
Via Rubygems, one of:
$ sudo gem install rudy $ sudo gem install solutious-rudy --source http://gems.github.com/
or via download:
NOTE: If you are not installing via RubyGems, you need to make sure the dependencies are in your LOAD_PATH ($:
). Ryan Tomayko wrote a gist[http://gist.github.com/54177] about it.
See Getting-Started[http://wiki.github.com/solutious/rudy/getting-started] for more info.
-
Amazon AWS Account
-
Fork at GitHub
-
Read the Documentation
-
Submit issues to the IssueTracker
-
Start a discussion on the GoogleGroup
-
Find some Inspiration
-
For all other inquires, email me directly: delano@solutious.com
-
The Rilli.com team
-
Adam Bognar
-
Andrew Simpson
-
Caleb Buxton
-
Colin Brumelle
-
-
Sam Aaron
-
Everyone at Utrecht.rb
-
Jamis Buck for Net::SSH and friends
-
Glenn Rempe for amazon-ec2
-
Marcel Molina Jr. for aws-s3
-
Keshia Knight Pulliam
I’m very open to contributions!
-
For bigger features please fork the git repo and send me a pull request.
-
For small or single file changes, send me an email with the details:
delano@solutious.com
-
Delano Mandelbaum (delano@solutious.com)
-
Rudy::AWS::SDB adapted from aws_sdb by Tim Dysinger (dysinger.net)
-
Pool Party – www.poolpartyrb.com/
-
Rubber – github.com/wr0ngway/rubber/wikis
-
Moonshine – github.com/railsmachine/moonshine/tree
-
Boto – code.google.com/p/boto/
See: LICENSE.txt