saving fr1 bitmap ?
denis bonnenfant <[email protected]>
| Newsgroups | gmane.linux.enbd.general |
|---|---|
| Message-ID | <[email protected]> |
Hi Peter, just a suggestion : let's say an enbd-fr1 setup, for example a redundant Samba server In normal operation : A is enbd-client, with an fr1 array served by samba B is enbd-server - When B fails, everything is ok, A is using bitmap intelligence to avoid total reconstruction. - When A fails, things are more complicated : If B mounts directly its local disk and serves it, when coming back to normal operation, A disk will be totally resync. There is a way to avoid it : 1 - B has to mount its local disk via a degraded fr1 array, 2 - when A comes back, it starts an enbd server, B starts a client, and add it to its fr1 array, so it can use the bitmap for resync. 3 - after resync, B stops everything, starts its server, A stops its client. 4 - A and B starts normal operation with a clean array. The problem is that these scenarii are quite difficult to implement cleanly via heartbeat scripts ( i did it, it works, but it is not really simple) A simpler way to do that may be to allow bitmap created in step 1 on B to be saved to a temporary file when stopping array on B. This way, A will just have to download the bitmap file (scp, for example) and then start its array with this bitmap, allowing fast sync in any cases. Is there already an user-space access to the bitmap, via /proc ? This may imply some changes to mdadm tools too, to save and load bitmap. Stop and Assemble modes are concerned. For example, an option like that : mdadm -S /dev/md0 --bitmap-file=/temp/md0 mdadm -A /dev/md0 /dev/sda /dev/nda --bitmap-file=/temp/md0 What do you think about it ? Denis