|MD is a problem. Since it's not cluster aware, you can have a situation where two atomic writes aren't actually atomic.|
Specifically, there are times when a write to disk need to either happen or not happen. Often this write spans more than a few blocks. With clustered locking, you get a guarantee that two writers won't attempt to hit the same data at the same time. However, with Linux MD, it's just not that simple.
Assume that you have blocks A and B that both must be written atomically. If two nodes try to write them simultaneously, it is possible for block A to be a copy from one node but block B to be from a different one due to timing. Things get even hairier when MD is rebuilding a RAID, as both machines will both attempt to remirror the system! Madness ensues.
This is the reason that Redhat has put together the cmirror target. CMirror will do a simple RAID1 style DM target across a cluster. There is also CSnap for doing snapshotting. There isn't anything like CRAID5. Unfortunately, this is all a bit bleeding edge and not so integrated into the stack you want to use (CLVM would need to be in there for one).
On May 22, 2007, at 12:02 AM, Nathaniel Eliot wrote: