Server Fault is a question and answer site for system and network administrators. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I'm obviously using the wrong search terms, the answer must be somewhere out there, so please throw some URLs at me.

I'm about to create a cluster with 2 virtual servers in the cloud, namely at Rackspace.

One for the frontend (Apache+PHP), one for the backend (presumably PostgreSQL).

Apart from pointing the database host to the another IP instead of localhost, and opening up the , is there anything else I'm supposed to learn or prepare to fully utilize this architecture?

share|improve this question
Slight nitpick - this isn't really a 'cluster' by most people's understanding of the terminology, it's a two-tier website. Part of it would be a cluster if you had an additional Postgresql server for failover. Or if you had multiple Apache servers, but then it's usually called a webfarm. – mfinni Feb 24 '10 at 21:49
Thanks for the clarification! – pestaa Feb 25 '10 at 0:04
up vote 1 down vote accepted

Some cloud providers will give you a separate "internal" network/interface to use for server-to-server communications. I don't know if Rackspace proper does this, but their Slicehost subsidiary will set it up upon request. Amazon accomplishes the same thing by allocating internal IPs to each node and then mapping a routable IP to it as well.

If this sort of configuration is offered, it is usually advantageous to use the internal IPs for node-to-node traffic (such as your front ends talking to the database server) so that it doesn't count as billable traffic.

Other than that, it should be not much different than deploying two hosts anywhere else.

share|improve this answer
For the curious:… Internal interface is 'eth1'. Hope this helps the next novice after me. :) – pestaa Feb 25 '10 at 0:22

Not particularly - except to make sure your website points to the database server's IP address instead of localhost.

You might also want to firewall off the database server so only your Apache server can talk to it.

It is a bit of a vague question, feel free to follow up if you need anything more specific.

share|improve this answer
Beginners mostly ask vague questions. If I knew how to ask precisely, Google would have answered me long time ago! Thank you for your response. It always turns out this is not rocket science. – pestaa Feb 25 '10 at 0:20
No worries - it wasn't a criticism. – Andy Shellam Feb 25 '10 at 6:48

As ktower said, you should probably get a private ip on each server so that you have an internal-only network to talk between them. I know that both mosso and slicehost provide this service, and they are both owned by rackspace, so you should be able to do it. Both mosso and slicehost do not charge for bandwidth between local links, so this would be the way to go for just database traffic.

The only other thing, for postgresql, is to enable connections from remote hosts, which this page shows you how to do:

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.