Server Fault is a question and answer site for system and network administrators. Join them; it only takes a minute:

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

What do you think about these backup / svn workflows I want to implement ?

Please see picture:alt text.

Is this architecture good ? Or is there something wrong ? Missing ?


share|improve this question
up vote 1 down vote accepted

If you're open to commercial solutions WANdisco provides a clustering solution that may fit your requirements quite nicely. It will keep all the servers in sync at all times. If you put a load balancer in front of the clients it can also automatically fail them over to the backup node without intervention.

share|improve this answer

The only thing I can think of is the flow back and forward between DEV and PROD. Presumably the from from DEV to PROD is new tested software that is ready for production. For my system which is very similar in essence we also have a flow from PROD to DEV. It should be stated that this flow is entirely different from the DEV to PROD.
DEV to PROD new software upgrades etc
PROD to DEV the database / data produced by the system. In DEV due to testing we end up with a different database from the one in PROD. In order keep them both at least approximately in sync we copy the database from PROD to DEV once a week. Very occasionally we return the DEV system to the same state as production if too many people have changed too many things.
I just thought that you should some how make that clear that the workflows in each direction are different

share|improve this answer
@robthewolf Yeah, if I've understood well, you are underlying the fact that I should only uploading back new code (and new database modules) but not other data to the production server. However the problem is that I cannot merge the database, so I guess, the only option is to download the production server database just before to upload it... – Patrick Jan 6 '11 at 11:09
So, to keep it simple. Should I (1) rsync FROM prod to dev. (2) Make the changes. (3) Then rsync again FROM prod to dev and (4) apply the changes. (5) Then rsync FROM dev to prod ? – Patrick Jan 6 '11 at 11:10
I am a bit confused. Can you be a little more specific about your system. Let me be clear. In my system the actual work flow only moves new or upgrades code / software FROM dev to prod. Is that what you essentially want to do? The list you give in your second comment sounds too complicated and could result in the wrong things being copied from one system to another. – robthewolf Jan 6 '11 at 12:51
@robthewolf Ok. So my issue is that I need to download the latest version of the database from the production server, before to apply new modules. So I actually need a copy FROM prod to dev, just before to upload the latest versions FROM dev to prod. The reason is that otherwise I risk to overwrite users data. – Patrick Jan 6 '11 at 12:56
I need to do this only when I modify the database. If I only change the code, I just need a FROM dev to prod as you described. – Patrick Jan 6 '11 at 12:56

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.