-2

I am a beginner to server administration and network design. Following is the requirement:

I have three dedicated servers. These three servers need to accomplish following:

  • There is a master DB
  • There is a slave DB
  • There is a production web server
  • There is a way to include development ladder: Development=>Testing=>Production
  • Version control is through SVN (git can be used)

I will use RHEL with apache, mysql, php.

Given three dedicated servers how do I implement this?

EDIT:

Should I have more servers. What are the pre-requisites I should cover before making a decision.

2 Answers2

4

You sound like you are out of your depth - THis is a very broad question with an answer that is heavily dependent on your environment.
If you love your company & data, please seek professional assistance beyond ServerFault before moving forward.


If you elect not to heed my warning above, here are some VERY basic pointers (not a complete solution -- giving you a complete solution is like asking for a kilo of pure sysadmin knowledge to be crammed into your head). Bear in mind that load and usage will dictate what you can get away with based on what I have outlined below:

The architecture you describe can't really be accomplished on three physical boxes unless you're virtualizing some of them -- there's no way to properly separate Dev/Stage/Production environments. You have two basic options:

  • Virtualize all 3 machines (One is the dev stack, one is the stage/test stack, one is the production stack
  • Virtaulize a two machines (DB is dedicated, One box is Production (Slave DB, Web) & one box is a virtualized dev stack.

Your version control server should ideally be separate from everything else (and backed up obsessively). It can be a VM if you go the virtual route.
You may want to include a plan for a machine to do backups (running bacula) or a plan to rsync off-site.

For now you may want to start with a flat network topology (everything on one network/VLAN). Eventually you will probably need something more complex (e.g. putting the DB servers & version control into separate, access-restricted subnets). This will require some firewall magic.

voretaq7
  • 79,879
  • 17
  • 130
  • 214
0

Your "development ladder" should be nowhere near the production web, master nor slave. And SVN should be far, far away as well -- it is to some extent disaster recovery, especially if you are using it for deployments.

Wyatt Barnett
  • 725
  • 5
  • 14