Thank you very much for your excellent suggestions and tips but I could not some of them since I am bound by the specifications laid down by the development team looking into this project. I have made substantial progress in this project and a large number of issues have been resolved. Since it had to be an Active-Active configuration with both the nodes accessing the shared storage at the same time, we have gone for GFS as the file system using the latest release as suggested by you. The documentation for current release of RHCS does not talk about any quorum partitions but as suggested by you, I have left some space partitioned which could be used for the purpose if need arises. The multipathing is also working fine using the md driver and we have been able to build logical volumes over the multipath devices.
I am now dealing with the issue of configuring the network interfaces. As of now I have configured ethernet bonding on each of the hosts to achieve network interface redundancy also. However this leads to a lot of network traffic since the same interfaces are being used for heartbeat / monitoring also. Therefore, I am thinking of using the two ethernet interfaces individually, one interface for monitoring and the other one for the LAN through which the clients will be able to access the hosts. They would be connected to separate switches and the fence devices would also be on the monitoring / control network. So I assume that the arrangement would be something like:
eth0 - 192.168.100.1
eth1 - 172.16.1.101
fence device - 192.168.100.11
eth1 - 172.16.1.102
fence device - 192.168.100.12
The interfaces eth0 and fence devices would be connected through a switch, while the other interfaces (eth1) would be on the LAN where clients would be accessing them. In addition there would be two more floating / shared IP addresses
for the database server and 172.16.1.202
for the application server which would be defined in the Resources section of Cluster Configuration Tool and would not be mentioned in /etc/hosts (read somewhere in the documentation).
Please let me know if these assumptions are correct. I am just wondering how does the cluster manager figure out which interfaces to use for heartbeat and monitoring. I haven't seen any such configuration option in the system-config-cluster program.
The issue which then needs to be resolved is of assigning hostname aliases to the shared IP addresses since as per the developers, the application manager and the database need to use a hostname and not an IP address.
Looking forward to your comments,
Thanks a lot.