Virtual Dedicated Hosting with AWS - Some notions answered

One of our prospective customers read our post on Cloud Computing and came back to us with some questions on Virtual Dedicated Hosting (yes a new term for Cloud Computing, relating only to server hosting). With their permission I am reproducing some of the questions as below with the hope that the very same questions will help alleviate the indecision from our other prospective customers:

Incorrect Notion #1 : EC2 lacks persistent Storage. You can create a custom virtual machine image that runs on EC2 but all data or changes since the image started are lost when it terminates.Termination can be caused by a software shutdown or by a failure of some sort at the data center. While these failures are infrequent, the possibility of data loss on EC2 made it impractical to host websites on the service. More common applications included large-scale image processing, searches of massive DNA sequence databases, and other computationally intensive tasks that only needed to be fed initial data and to produce a result of some kind.

Solution: EC2 provides us persistant stroage through the Elastic Block Store or EBS.  With EBS you can create a block level storage and attach it to any EC2 instance. The EBS persists independent of the life of an EC2 instance. What's more you can create a Volume Snapshot of an EBS block for a point in time backup which is carried out to S3. So it does not matter what happens to your instance, EBS will ensure that data on your instance is always persisted.

Incorrect Notion #2 : It’s at least as expensive as the dedicated server

Solution: AWS provides reserved instances which if taken for time-period of 1 year can result in upto 33% cost savings. If you can predict the need for 3 years then you can save upto 50% on your opex.

Incorrect Notion #3 : The server gets a new IP address every time it reboots

Solution: Firstly, rebooting an instance does not terminate it (ec2-reboot-instances is the call for geeks).

So the question can be re-phrased as "If an instance does get terminated, it will get a new IP address and open a pandora's box of remapping in the DNS, DNS propogation et. al."
Yes, for terminated instances AWS provides Elastic IP Addressing, applicable for EC2. Using this, you can allocate a static IP for your account and map that IP to any new instance which you create. So incase of a termination of an instance, all you need to do it start a new instance and map an elastic IP to that instance. That's it. Since the IP would have been DNS mapped already you do not loose any time for propogation.

Incorrect Notion #4: For any sort of automatic dynamic scaling, you need Scalr or RightScale.

Solution:
EC2 instances, using a combination of Amazon CloudWatch, Auto Scaling, Elastic Load Balancing can be setup for dynamic scaling, with a little bit of progamming effort.
Amazon would be working on making these console configurable.

Incorrect Notion #5: If an instance goes "Poof" on us and is gone, re-building it should be fairly quick.

Solution: Using images(AMI) of your instances and the EBS volumes for data persistance, Elastic IP,  you should be able to get back your lost instance in virtually no time. It will be a bummer if that happens, but it can be re-built before your blood pressure shoots up any further.

Let me know if you have any more questions or think of scenarios where AWS seems like it doesn't fit the bill. I am pretty sure the tools provide ways to handle it. Email me at manish AT tekritisoftware.com.




`