As far as I understand AWS Elastic Beanstalk will allow you to set auto-scaling, which means that you can use a micro-instance overnight, say, and auto-scale up during the day. Can you still take advantage of reserved EC2 instance pricing if you do this?
1 Answers
Update (Sept 2013)
AWS has just announced support to Modify EC2 Reserved Instance Reservations, which removes two of the former restrictions (I've updated my initial answer accordingly):
Today we are making the Reserved Instance model even more flexible by giving you the power to modify your Reserved Instances (RI's) when your needs change. You can now move your RI's between Availability Zones as long as you stay within the same Region. If your AWS account is enabled for EC2-Classic, you can also move your RI's between EC2-Classic and EC2-VPC. You can now make adjustments to your Reserved Instances as your needs and your architecture change.
Initial Answer (updated)
Can you still take advantage of reserved EC2 instance pricing if you do this?
Absolutely, Amazon EC2 reserved instance billing and usage is handled transparently, i.e. AWS simply applies your reserved instance pricing as long as you have reserved instances available matching your running ones by type, region and availability zone, see the following FAQs for details:
- How do I control which instances are billed at the Reserved Instance rate?
The RunInstances command does not distinguish between On-Demand and Reserved Instances. When computing your bill, our system will automatically optimize which instances are charged at the lower Reserved Instance rate to ensure you always pay the lowest amount.
Beware of the restrictions regarding how instances from this virtual pool are matched though, e.g.:
Can a Reserved Instance that I’ve bought for a particular instance type (i.e. High-CPU Extra Large Instance) be applied to a different instance type that I am running (i.e. Standard Large Instance)?
No. Each Reserved Instance is associated with a specific instance type, and can only be applied to that instance type for the duration of the Reserved Instance term.Can I move a Reserved Instance from one Region to another?
No. Each Reserved Instance is associated with a specific Region that is fixed for the lifetime of the Reserved Instance and cannot be changed.Do I need to specify an Availability Zone when I launch my instances in order to take advantage of my Reserved Instances?
Yes. When you purchase a Reserved Instance you specify the Availability Zone in which you want to reserve that instance. In order to use that Reserved Instance, you need to ensure that you launch your instance in that same Availability Zone. [...]
The latter is easily overlooked when starting instances without explicitly specifying an availability zone, which will yield a random one in turn.