tools for managing AWS resources including EC2, EBS, RDS and Route53.
Go to file
Colin Johnson af24aa1cdf Update route53-migrate-zone.py
bigfix - error message not written to stderr.
2013-08-01 00:12:25 +00:00
as-apply-alarms formating changes for README.md files. 2012-12-09 17:01:16 +00:00
as-update-launch-config formating changes for README.md files. 2012-12-09 17:01:16 +00:00
aws-missing-tools-resources update of ec2-cost-calculate-ruby Cost Map to reflect prices as of 2013-05-04 2013-05-04 19:33:31 +00:00
bin wrap AwsHaRelease class in AwsMissingTools module 2013-06-04 15:20:51 -07:00
ec2-automate-backup Region Copy: Updated README with new features 2013-04-10 15:20:11 -04:00
ec2-cost-calculate formating changes for README.md files. 2012-12-09 17:01:16 +00:00
ec2-cost-calculate-ruby formating changes for README.md files. 2012-12-09 17:01:16 +00:00
ec2-write-memory-metrics Update ec2-write-memory-metrics.sh 2013-04-03 22:52:00 +00:00
ec2-write-storage-used Removing typo - had duplicate curl command. 2013-04-03 22:53:02 +00:00
iam-keyfind initial checkin of iam-keyfind.sh. 2013-07-07 01:06:03 +00:00
lib sync with stdout so that output can be piped in realtime 2013-06-05 14:44:19 -07:00
rds-apply-alarms formating changes for README.md files. 2012-12-09 17:01:16 +00:00
rds-cost-calculate formating changes for README.md files. 2012-12-09 17:01:16 +00:00
route53-migrate-zone Update route53-migrate-zone.py 2013-08-01 00:12:25 +00:00
spec add a missing newline 2013-06-04 19:49:30 -07:00
.gitignore ignore .gem files 2013-06-04 11:20:05 -07:00
aws-missing-tools.gemspec use ruby optionparser instead of trollop 2013-06-04 15:18:18 -07:00
Gemfile make aws-missing-tools a gem 2013-05-30 16:19:08 -07:00
Gemfile.lock use ruby optionparser instead of trollop 2013-06-04 15:18:18 -07:00
README.md Update README.md 2013-06-05 09:59:11 -06:00

AWS HA Release

Introduction:

aws-ha-release allows the high-availability / no downtime replacement of all EC2 Instances in an Auto Scaling Group that is behind an Elastic Load Balancer.

Potential Use:

Some potential uses for aws-ha-release are listed below:

  1. Delivery of new code - if your deployment scheme utilizes the termination of EC2 instances in order to release new code aws-ha-release provides an automated way to do this without incurring any downtime.

  2. Return of all EC2 instances to "pristine" or "vanilla" state - all older EC2 instances can be replaced with newer EC2 instances.

Directions For Use:

Example of Use:

aws-ha-release.sh -a my-scaling-group

the above example would terminate and replace each EC2 Instance in the Auto Scaling group "my-scaling-group" with a new EC2 Instance.

Required Options:

aws-ha-release.sh requires the following option: -a, --as-group-name GROUP_NAME - the name of the Auto Scaling Group for which you wish to perform a high availability release.

Optional Parameters:

-r, --region REGION - allows you specify the region in which your Auto Scaling Group is in. By default aws-ha-release assumes the "us-east-1" region. -t, --elb-timeout TIME - time, in seconds, in which an EC2 instance should be given to complete request processing prior to being terminated. Set this value high enough so that any requests sent through an ELB would have time to be completed by an EC2 instance. For example: if the ELB allows connections to stay open for 120 seconds then setting this value to 120 seconds allows an instance behind an ELB 120 seconds to complete all processing before being terminated. By default both an AWS ELB and aws-ha-release.sh utilize 60 seconds timeout period. -i, --inservice-time-allowed TIME - allows you to specify the number of seconds an EC2 instance is provided to come into service. By default EC2 instances are given 300 seconds to come into service - if aws-ha-release.sh notices that an instance has not come into service in 300 seconds it will exit and return an exit status of 79. If an EC2 instance and application combination requires more than 300 seconds to come "InService" from the perspective of an ELB then this value should be set to a greater number. -m, --min-inservice-time TIME - Minimum time an instance must be in service before it is considered healthy (seconds). Default is 30 seconds. See issue 32. -o, --aws_access_key AWS_ACCESS_KEY - your AWS Access Key. If not specified, must be available as an environment variable called AWS_ACCESS_KEY. If you specify the secret key, you must also specify the access key. -s, --aws_secret_key AWS_SECRET_KEY - your AWS Secret Key. If not specified, must be available as an environment variable called AWS_SECRET_KEY. If you specify the access key, you must also specify the secret key.

Additional Information: