Shared File-Systems
- In order for an active-active cluster to work, it must use a shared
file-system (or an equivalent application-support for working with
raw devices).
- In a shared file-system, the same file-system is mounted on several
nodes at the same time, and applications from all nodes may access
files at the same time (if they use proper locking).
- A shared file-system must provide proper distributed locking support,
to avoid data corruption.
- To reduce lock contention, a shared file-system such as GFS avoids sharing
meta-data about files (e.g. i-nodes) in the same file-system block.
Instead, they store the file data (for very small files) in the same block.
- Further, a shared file-system should have "on-line recovery" (e.g. in
case one node crashes in the middle of a transaction).
- In GFS, this is done by having a separate journal per node - and having
another node re-play the journal in case the first node crashes.
Originally written by
guy keren