Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

I am sorry, but know virtually nothing about SAN.

If we have two or more (heterogeneous Linux) servers connected to a SAN: is it possible to allocate the same storage area (i.e. file system) to all servers and all servers have read/write access to that file system? What will happen if two processes running on two different servers write concurrently into the same file residing on that shared file system (e.g. a log file)? Is data corruption possible or even immanent?

What will be the best practice here? If I mount it only on one server and export it to all the others, I have introduced a single point of failure. Unless I also make use of some clustering solution which I tend to avoid if possible.

share|improve this question
add comment

1 Answer 1

up vote 4 down vote accepted

Short answer: no.

Technical answer: yes.

Long answer: In general a section of the SAN will be allocated for specific hosts. Each host will attach and view those blocks as being owned by only itself. It will format that space and in most ways it will be effectively treated as local storage. There are however filesystems (e.g., GFS) that will allow multiple hosts to use the same set of blocks on a shared SAN without clobbering each other.

You will need to use a filesystem that has been explicitly designed for this purpose (neither ext nor ntfs are). And doing this is somewhat new. The last time I checked (about a year ago) there were significant bugs in GFS that I wasn't willing to deal with in production.

share|improve this answer
    
Thanks a lot for your answer. The short answer was my fear, the technical my hope and the long answer expresses my understanding of how a SAN may work in the first half, but opens options in the second half, which brings me to the question: How does a cluster FS solve the concurrency? Is there some IPC involved, where all clients that share the FS talk to each other? –  struppi Feb 3 '11 at 21:09
    
For a simplistic answer, it locks the blocks before writing them. Other members can't write to the block while a lock is in place. –  bahamat Feb 4 '11 at 5:49
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.