A few times now I’ve run into a situation where I want a site hosted in AWS (amazon web services) and I also want the site to be HA (highly available). The best way to achieve this is to have multiple web servers behind an ELB (elastic load balancer). I’m sure you’ve done the same thing many times too.

Now this can lead to a problem. What if I want my website to be accessible via the address http://mysite.tld ?

Normally this is easy to solve and you would just point the DNS for the @/root record of mysite.tld to an IP address. However ELB’s when scale have a habit of changing IP address when they scale, and you can’t currently attach an Elastic IP to them. Amazon tell you to get round this problem you should use a CNAME in your DNS.

Here lies the problem!

If you are using a subdomain such as http://www.mysite.tld you are fine using a CNAME, but the @/root record call it what you will does not allow you to use a CNAME for it. This by design and is in the RFC for DNS, you can only use an IP address.

So you either take the risk that your ELB wont scale or you end up stuck not being able to access your site via http://mysite.tld.

However! You can now point your @/root domain to a service hosted here on SquareCows that simply rewrites your @/root domain mysite.tld and issues a SEO friendly 301 redirect and sends the user to http://www.mysite.tld. This means you can CNAME your www record to the ELB address but still allow traffic to hit the root domain of your site.

You can use this service hosted by SquareCows by pointing your @/root DNS record to: 194.246.109.141

We’ve tested this service to a very high level and the current version that’s running on our servers can manage 1 million requests a min over the HA servers, but we have a new version to deploy that should be better by a factor of 4!

Alternatively if you have a static IP and wish to run this service yourself head over to git hub and fork the project. Its also open source and licensed under the AGPL v3:

https://github.com/richarvey/node-wwwfier

Its written in nodeJS and uses the cluster functions to take advantage of multiple cores. Feel free to commit pull requests!

, , , , , ,

Just a quick post to tell you how to get hybridfox 1.7 (for connecting to AWS or eucalyptus/UEC clouds) working with the Firefox 5.0. Firstly download the 1.7 version of the plugin and save it to disk. This will give you an XPI file.

http://code.google.com/p/hybridfox/

Now rename the file you’ve downloaded from .xpi to .zip and then extract the .zip file. The file you need to edit is called install.rdf just open this file in you favourite text editor. You’re looking for a line that says:

<em:maxVersion>4.2</em:maxVersion>

and you need to change it to:

<em:maxVersion>5.*</em:maxVersion>

Now zip those files backup, and once done rename the .zip to .xpi. You should now be able to install hybridfox 1.7 in firefox by using the install from file method of adding a plugin.

Update!

Now Firefox 6 is due to land anytime soon I thought I’d update this post and let you know the same tweak can be done to make hybridfox work in Firefox 6. Just change the maxVersion to 6 of course!

<em:maxVersion>6.*</em:maxVersion>

Just for reference I’m using the hybridfox-1.7.000089.xpi version of the plugin.

 

, , , , , ,

Due to a recent change on the Amazon AWS page I’ve updated the getAWSdocs.sh script. You can download it from:

http://media.squarecows.com/code/getAWSdocs.sh

For instructions on use please see:

http://dev.squarecows.com/projects/downloadAWS/

, ,
You are protected by wp-dephorm: