« How to Get DNS Names of a Web Server | Main | Paper: On Designing and Deploying Internet-Scale Services »
Thursday
Mar272008

Amazon Announces Static IP Addresses and Multiple Datacenter Operation

Amazon is fixing two of their major problems: no static IP addresses and single datacenter operation. By adding these two new features developers can finally build a no apology system on Amazon. Before you always had to throw in an apology or two. No, we don't have low failover times because of the silly DNS games and unexceptionable DNS update and propagation times and no, we don't operate in more than one datacenter. No more. Now Amazon is adding Elastic IP Addresses and Availability Zones.

Elastic IP addresses are far better than normal IP addresses because they are both in tight with Jessica Alba and they are:

Static IP addresses designed for dynamic cloud computing. An Elastic IP address is associated with your account, not a particular instance, and you control that address until you choose to explicitly release it. Unlike traditional static IP addresses, however, Elastic IP addresses allow you to mask instance or availability zone failures by programmatically remapping your public IP addresses to any instance associated with your account. Rather than waiting on a data technician to reconfigure or replace your host, or waiting for DNS to propagate to all of your customers, Amazon EC2 enables you to engineer around problems with your instance or software by programmatically remapping your Elastic IP address to a replacement instance.

About the new feature RightScale says: Amazon did a very nice job in creating something much more powerful than simply adding “static IPs” to their offering. They are giving us dynamically remappable IP addresses that fit well into the overall cloud computing paradigm that we can use to manage servers better than with traditional hosting solutions.

Mostly good news. It's not great news because RightScale also says "Assigning or reassigning an IP to an instance takes a couple of minutes..." So it's not as speedy as one would hope, but at least you don't have to wait for TTL to kick in and everyone up and down the stack to get new IP addresses. Cached static IP addresses will always be valid, which simplifies and speeds things up considerably, especially when using redundant load balancers as the entry point into your system.

The other power feature added was the ability to specify which datacenter your instances run in. Amazon calls this feature Availability Zones:

Availability Zones provide the ability to place instances in multiple locations. Amazon EC2 locations are composed of regions and availability zones. Regions are geographically dispersed and will be in separate geographic areas or countries. Currently, Amazon EC2 exposes only a single region. Availability zones are distinct locations that are engineered to be insulated from failures in other availability zones and provide inexpensive, low latency network connectivity to other availability zones in the same region. Regions consist of one or more availability zones. By launching instances in separate availability zones, you can protect your applications from failure of a single location.

You might also be wondering how fast connections are between datacenters. They are said to be: "inexpensive, low latency network connectivity to other availability zones in the same region." I tend to believe this. I've been surprised before how fast datacenter links can be in that you didn't have code specially for these configurations. How this will impact S3 and SimpleDB latencies is an interesting question. And how system design will need to change once datacenters are in different regions of the world is another interesting question.

Other services still have more datacenters, more geographically dispersed datacenters than Amazon, and better content migration capabilities, but this is a great first step that allows developers to add another layer of reliability to their systems.

Update: I thought this was a good explanation of using static IPs in Some more about EC2: Slashdot hasn't run many stories on EC2 (none that I know of) because until now it's been a niche service. Without a way to guarantee that you can have a static IP, there had been a single point of failure: if your outward-facing VMs all went down, your only recourse was to start up more VMs on new, dynamically-assigned IPs, point your DNS to them, and wait hours for your users' DNS caches to expire. That meant that while it may have been a good service for sites that needed to do massive private computation, it was an unacceptable hosting service.

Now with static IPs, you basically set up your service to have several VMs which provide the outward-facing service (maybe running a webserver, or a reverse proxy for your internal webservers), and you point your public, static IPs at those. If one or more of them goes down, you start up new copies of those VMs and repoint the IPs to them. No DNS changes required.



Related Articles


  • Jesse Robbins links to a good explanation by RightScale of Availability Zones: Setting up a fault-tolerant site using Amazon’s Availability Zones.
  • RightScale also writes DNS, Elastic IPs (EIP) and how things fit together when upgrading a server
  • Reader Comments (9)

    Here's hoping the availability zones evolve into geo-location! That's the big thing keeping me from using S3 for anything other than backup.

    December 31, 1999 | Unregistered CommenterUltimateBrent

    Hopefully that will be their next step. Have you considered Nirvanix? I attended one of their presentations and it looked interesting. A sort of CDN-end user hybrid. Kent Langley (http://www.productionscale.com/home/2008/3/24/cloud-service-pricing-model-thoughts.html) thinks the pricing will end up being too high.

    December 31, 1999 | Unregistered CommenterTodd Hoff

    A few weeks ago it was Elastic IPs and now it's storage volumes in the cloud. Did you see the new announcement Amazon made? The AWS blog has the official stuff and I wrote some more about how it changes the game at http://blog.rightscale.com/2008/04/13/amazon-takes-ec2-to-the-next-level-with-persistent-storage-volumes/
    The Amazon folks are on a roll!

    With the addition of the storage volumes there's no doubt in my mind anymore: the cloud adopters will have much more computing horsepower and flexibility at their fingertips than those who are still racking their own machines. Cloud computing is going to be as significant for deployment as agile is for software development. You either compute in the cloud or you'll be left behind by your competitors because they can deploy faster, better, and cheaper than you can.

    December 31, 1999 | Unregistered CommenterThorsten - CTO RightScale

    So static Ip addressess can help users more effectively than before but this I guess would not bring any more gains to amazon as it is only icreasing their expenses for the sake of users.
    -----
    http://underwaterseaplants.awardspace.com">sea plants
    http://underwaterseaplants.awardspace.com/seagrapes.htm">Seagrapes...http://underwaterseaplants.awardspace.com/plantroots.htm">plant roots

    December 31, 1999 | Unregistered Commenterfarhaj

    Thanks for the heads up on Nirvanix. Here's hoping the price is atleast managable!

    December 31, 1999 | Unregistered Commenteraoc gold

    Amazon seems always improving their services for affiliates to earn us as much as possible, they have a great support also, Excellent post on Amazon EC2 services, just digged your story and stumble up.

    Great Share,

    Andy

    December 31, 1999 | Unregistered CommenterAoC Gold

    Thanks for the heads up on Nirvanix. Here's hoping the price is atleast managable!

    December 31, 1999 | Unregistered Commenterwarhammer gold

    Currently, Amazon EC2 exposes only a single region. Availability zones are distinct locations that are engineered to be insulated from failures in other availability zones and provide inexpensive, low latency network connectivity to other availability zones in the same region.Amazon EC2 locations are composed of regions and availability zones. Regions are geographically dispersed and will be in separate geographic areas or countries.

    December 31, 1999 | Unregistered CommenterTwitter Apps

    So static Ip addressess can help users more effectively than before but this I guess would not bring any more gains to amazon as it is only icreasing their expenses for the sake of users.http://www.roulettesystemwinner.com" title="play roulette">play roulette
    http://www.blackjack21onlinestrategy.com" title="play blackjack">play blackjack http://www.mymovie-downloads.com" title="movie download">movie download

    December 31, 1999 | Unregistered Commenterzombo09

    PostPost a New Comment

    Enter your information below to add a new comment.
    Author Email (optional):
    Author URL (optional):
    Post:
     
    Some HTML allowed: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <code> <em> <i> <strike> <strong>