Frank Hellmann wrote:
Sorry to be a bit Off-Topic, but unfortunatly I can't test this out by
I am checking out a way to speed up data-transfers between a server and
a couple of clients. A fullblown SAN (CXFS etc) approach is currently
not in our budget, but we already have a couple of directly attached
fibre-channel diskarrays here. I will buy a FC-switch to get the arrays
easily switched over to the clients to speed up things (instead of
copying over network).
Now, my question: What will happen if I configure the FC-switch to route
a single diskarray to all machines, mount that device read-write on the
server and read-only on the clients? Will XFS allow me to do that? How
propable is non-integrity data on the clients (considering that the
server won't write to that device at that time anymore)? What will
happen if all clients strom out to get data at the same time?
The software will not stop you from doing this, but DON'T!
There is a good chance what will happen here is your read-only nodes
will crash at some point, or at least decide the fs is corrupted and
needs to be shutdown. The read only nodes will have a lot of
metadata in cache, and will not know that it is stale and should be
refreshed from disk. Once they get a mix of inconsistent metadata
all bets are off. You will tend to see stale data as well, and
things which the read/write node has put into the filesystem may
not show up for a while.
Sharing a SAN filesystem between machines involves a lot more than
just cabling up the storage ;-).
Shared read only on all nodes should be fine, if you want to
update content, you have to unmount all but one, make it rw,
update content, make it ro again then allow the other nodes
to remount. That mode of operation does not fly for many applications.
Finally, if two nodes both need to read the same data at the same time,
they issue scsi commands to the device, and one gets to wait for the
other to complete - but at least the second one gets to use cache on