kevin kempter kevin at kevinkempterllc.com
Fri May 9 13:12:04 PDT 2008
Hi List;

I have a scenario we would like to implement (see below) , although I  
don't know if its an 'out of the box' scenario supported by SLONY. Any  
advice, links to relevant info, etc would be greatly appreciated.

Thanks in advance for your help..


==================================
we plan to have 2 environments
1) a Production "stack" with a SLONY Master and one slave
2) a Staging "stack" that mimic's production.

Here's what I'd like to pull off :

1) for initial deployment setup a single SLONY cluster with 3 slaves
    The master will be a node in the Staging environment

2) once we like what we have we'll do the following:
   - do a switch so one of the slaves in the Production environment  
becomes the master
   - remove the 2 nodes - which are now both slaves in the Staging  
environment from the cluster

3) re-shape the 2 nodes now removed from the cluster into their own 2- 
node cluster making one of them the master and retaining the data set  
currently in the database on that server.
*********
   - This is my first issue - How can I do this ?
**********

4) We'll then develop against the staging cluster which now has it's  
own 2-node SLONY cluster and we'll create exec scripts as needed for  
DDL changes

5) when we're ready to release a new version we want to do this:
   - drop the cluster attached to the Staging environment and add them  
back into the Production environment and let them sync
**************
   - My thought is that we'll simply drop the databases, and go  
through the standard SLONY setup to set these nodes up as slaves to  
the Production Master
*************

   - once the sync is done turn off user access to the app (on the  
Production environment)
   - with no changes coming into the db on either side do this:
        -  break the nodes back into 2 separate clusters (like in step  
3)
        - apply (re-apply) the DDL and code changes to the Staging  
environment that took place during our development cycle
        - Point customers to the Staging environment which now becomes  
the Production environment and the former Production environment  
becomes Staging

6) rinse and repeat as needed

So my only real question is how to do #3

Anyone have any Ideas ?





More information about the Slony1-general mailing list