RamDisk Cluster

I wanted to demonstrate some performance capabilities of Linux and the use of inotify and Gluster Clustered filesystems.

Let's say we have a need for an application to have exceptionally fast write capability on a given directory, but we needed

that data to be automatically replicated to a cluster of nodes.

Let's say that we use a ramdisk to implement the fast write directory. Let's also use the features of glusterfs to perform

replication of filesystem data to locally clustered nodes. We must now figure out how to connect the ramdisk to glusterfs.

I will mount the ramdisk at /usr/local/ram (/dev/ram0)

I use a kernel service called inotify. This service can monitor for filesystem events.

I use the companion tool, incron, to monitor /usr/local/ram for a condition of IN_CLOSE_WRITE, and upon that condition,

we copy the new file to the glusterfs directory of /usr/global/ram. The glusterfsd & glusterfs clients will ensure that the

content written to the local /usr/global/ram directory will get replicated to all the nodes in the cluster, target directory

of /usr/global/ram.

So, applications can write to /usr/local/ram, very fast. Reads would be performed from /usr/global/ram.

See my sections on inotify, gluster & software appliance for further information:

Here's a diagram: