http://linux.softpedia.com/get/System/Filesystems/OpenGFS-1471.shtml
OpenGFS is a clustered filesystem. It's usefulness is thought to be mostly in SAN's, but goes well beyond that. It can be used with iSCSI, HyperSCSI, and even firewire.
OpenGFS is undergoing many changes at the moment, we appreciate any help in testing the current development branch. For those less adventurous souls we have our current stable branch (0.2.1).
Here are some key features of "OpenGFS":
Multiple clients per server
· We don't have to worry about two reads or writes overlapping on the server as the server opens the block file in syncronous mode, and network receives are keep apart with mutexes. Everything else must be handled by higherlevel layers, e.g. the OpenGFS filesystem.
Transparent reconnection.
· The loss of a server does not mean that programs using the device file immediatily get errors. Activity on the device pauses, and remains paused until gnbd gets reconnected to a server, and re-issuse any unfulfilled requests.
Other proccesses Suspending IO.
· Simply, some other process can come and state that the device should stop talking (or trying to talk) to the server. Think `Entering cluster tansition'
Notification of change of server.
· Just change the ip and port of where the device looks for a server.
Resumption of service.
· Connect to the server again, and re-issue any requests that haven't gotten replies yet.
Currently gnbd has a kernel thread and a TCP socket for each opened block device. If either of these fail, the device is still opened. This is to allow modification of some parameters via ioctl.
There is a short and simple userland program to set the ip and port. Done with those ioctls.
Server ip and port can also be specified at module load. This uses the config option durring insmod. More details in the main.c file.
2008年1月15日 星期二
訂閱:
張貼留言 (Atom)
沒有留言:
張貼留言