1753787 Members
7869 Online
108799 Solutions
New Discussion

Emulex 1105e HP

 
Xavier Almenar
New Member

Emulex 1105e HP

We have installed 2007-lpfc drivers in ours two RHEL5.3 server's. Our 4100 EVA, has presented 1 LUN 10GB, in tow server's.

The server's can view perfectly this LUN, but when we try to writte fron one sever, you can writte, but the other server can't view the same data.
If you restart the server that can't view the LUN data, you can view the same information, but only read access.

How we can change this situation? We've tried the last drivers 2009-lpfc, and didn't work, compilation error.

Thanks.
1 REPLY 1
Matti_Kurkela
Honored Contributor

Re: Emulex 1105e HP

What's the filesystem type you're using? Regular ext3 or a cluster filesystem like GFS or OCFS?

A regular filesystem like ext3 has a built-in assumption that the filesystem will be mounted by one server at a time only. This allows extensive caching to improve filesystem performance.

When server B changes data on the disk, the server A may have an old version of the same data in its cache. Because a regular filesystem does not expect the data to change on the disk, server A will happily give the old version of the data from the cache to any application that asks for it. Sooner or later an application on server A will want something was not cached, so the server A will load more data from the disk. As a result, server A will have a corrupt mixture of old and updated data in its cache. The situation is symmetrical: the same may happen on server B too.

If only one server is allowed to write to the disk, the problem is still there: the server with the read-only access still cannot know when the data it recently read from the disk is being modified by the other server. The server with the read-only access will again get corrupted data, unless all disk caching is prevented on that filesystem (which would hurt performance very much).

So, you cannot simply present a regular filesystem to 2 or more servers simultaneously and have it work. You need a cluster filesystem: it will communicate between the servers, so that all the servers are aware what blocks each server is writing and can throw away old data in their read caches as necessary. A cluster filesystem will also implement some sort of cluster-wide file and/or block locking, to prevent any attempts to read any disk block that is being written to at the same time.

RHEL 5 includes GFS cluster filesystem, but setting it up requires that you first configure the basic elements of a RedHat Cluster, to implement the cluster-wide locking infrastructure that is required by GFS.

Note: to use RedHat Cluster and GFS, you will need the Advanced Platform version of the RHEL 5 license.

MK
MK