On Wed, 16 Dec 2009 14:47:02 -0600 Andrew Deason <[email protected]> wrote:
> > > My question is, if I want to drain a volume of all RW volumes so I > > > can do kernel updates etc. without a user-visible outage, is there > > > any way to effectively swap the RW and RO volumes. > > > Something like: > > > Lock RW > > > Release to bring RO in sync > > > Make RW 'offline' > > > Promote RO to RW in the VLDB > > > Demote old RW to RO in the VLDB > > > Unlock > > You can sorta do part of that with 'vos convertROtoRW', but it's not a > VLDB-only operation; you gotta change disk metadata, too. Can't > convert an RW back to an RO, though. A little explanation, since it was pointed out to me that of course you can go from RW to RO (it's called "release" :). You can't convert an RW to an RO directly in-place, but of course you could clone the RW and then delete the RW. I don't really think this is 'safe' for future releases, since the initial clone comes from one RW, and a future restore would come from a different RW. But nothing described so far is really 'safe', so it warrants mentioning. So, to do the whole process, I think it could look like this: addsite a local clone release offline (or just remove) the rw convertROtoRW on the remote 'backup' server And do the same thing to do it the other way. Problems being that convertROtoRW isn't usually run all that often (so it's more likely to fail that perhaps other options), and that this is slower than something that would just change the VLDB instead of changing the volids on disk. This also doesn't account for preventing writes between the 'release' and 'offline'/'remove' phases above. -- Andrew Deason [email protected] _______________________________________________ OpenAFS-info mailing list [email protected] https://lists.openafs.org/mailman/listinfo/openafs-info
