I mentioned this on a previous thread, but I think it's worth restating - in EC2, the public DNS hostnames follow a well-known naming convention and the internal DNS servers automatically convert the public hostnames to the internal ip addresses. So I believe that if you assign elastic ip addresses to the machines in your cluster you can use the public DNS hostnames in your config files and the DNS service will use the internal ips, avoiding the data transfer fee. If a machine fails, you'll be able to replace it by re-assigning the elastic ip to that instance once it's up and hijacking the ailing machine's config files. Granted if you're just using EC2 as a dev cluster then this may not make sense since you'll be charged for the idle elastic ip's while your cluster is not running, but for a longer running or semi-permanent setup this may make sense. Of course, the EC2 network is a bit flaky so you may want to make sure you have something in place which provides a bit of dns fault tolerance (ie. dnscache).

ie. in the us-east-1d region, ec2-www-xxx-yyy-zzz.compute-1.amazonaws.com is the public hostname for the ip address www.xxx.yyy.zzz.

Off course you will have to reconfigure your cluster with the new DNS names,

but besides that you don't need to do anything.

Reply via email to