Dear all ,

I am facing the problem of read only filesystem with Heart beat configuration.

Here are my setup details :--
=========================

I have installed the 2 physical server RHEL 5.2 64 bit with Xen virtualization 
and IBM BS 8300 SAN. The XEN  kernel verison is 2.6.18-92.el5xen. The File 
system is EXT3.

I am using this below setup for a heavy mail server where the POP3 and IMAP 
traffic is very high ( 1.2 lack emails per day) , I am using cyrus and postfix 
and ldap 

Each physical server conatin XEN vitual OS. Outof this one is master and other 
slave for me.

The physical server1  IP :-- 192.168.1.1
The physical server2  IP :-- 192.168.1.2

The Xen VM machine IP under physical server1  :-- 192.168.1.10 ( Master )
The Xen VM machine IP under physical server2  :-- 192.168.1.20 ( Salve )

The HA folting IP between 2 VM is 192.168.1.30

Both the VM and physical machine communicate to each other via switch and not 
by cross cable.

Inside the both Xen VM I am using the 4 SAN partition ( for email boxs), which 
is accessable and can be mount from 192.168.1.10 & 192.168.1.20.

I am managing the mounting and unmounting of the SAN partition and stoping and 
starting the services vai script , which is mention in /etc/ha.d/haresources

My problem :--
============

1) When 192.168.1.10 is  master with flowting IP 192.168.1.30 , at that time 
every thing work proper.
But some time  due to n/w problem  the flowting IP 192.168.1.30 get switch to 
slave server i.e 192.168.1.20. At that time while mouting the SAN partiton , 
the san parititon goes in readonly mode , and for correction this require to do 
fsck -y <device deriver>

i.e failover causing the filesystem to go in read only mode.

I observer that this read only problem not come everytime , but it happen it 
messup evrything.

2) When both the server get lost there n/w connection , both assume that there 
respective slave/master  is down and they both server act as master-master  
server and also mount the SAN partition on each VM server.

So ,
1) How to avoid the redaonly file system problem ?
2) How to avoiod  master-master problem , in case of n/w failuer.
3) What kindof precuosion I should take while doing  mounting and umounting SAN 
prartition. ?

I tried Ipfail and ping in ha.cf but no luck.

I am using Heartbeat version 2.1

heartbeat-2.1.4-9.el5.x86_64.rpm
heartbeat-pils-2.1.4-9.el5.x86_64.rpm
heartbeat-stonith-2.1.4-9.el5.x86_64.rpm


Here is my ha.cf  (same on both active passive server ):--
===========================================
cat /etc/ha.d/ha.cf
debugfile /var/halogs/ha-debug
logfile /var/halogs/ha-log
logfacility     local0
keepalive 2
deadtime 15
warntime 10
initdead 30
udpport 694
bcast   eth0
auto_failback off
node activeimap1
node passiveimap1
#ping 192.168.2.8
#respawn hacluster /usr/lib/heartbeat/ipfail
debug 0

Here is my haresource (same on both active passive server )  :--
================================================
cat /etc/ha.d/haresources

activeimap1 IPaddr::192.168.1.30  ms4-services

Here is my ms4service (same on both active passive server ) :--
==================================================

cat /etc/ha.d/resource.d/ms4-services

#!/bin/bash
set -x
mylist="syslog
crond
ldap
postfix
saslauthd
cyrus-imapd
httpd
"



stop() {

for i in $mylist; do
    /etc/init.d/$i stop
    /etc/init.d/$i stop
    /etc/init.d/$i stop
  done

/sbin/ifdown eth0:2
/sbin/ifdown eth0:3
/sbin/ifdown eth0:4
/sbin/ifdown eth0:5

if
         cd /tmp/
         /bin/mount | grep -e " on /usr/local " >/dev/null
        then
                # Kill all processes open on filesystem
                /sbin/fuser -muk /usr/local
                /sbin/fuser -muk /imap
                /sbin/fuser -muk /imap1
                 /sbin/fuser -muk /imap2

               sleep 3
               /bin/umount /dev/xvdb
                sleep 3
                /bin/umount /dev/xvdd
               sleep 3
                /bin/umount /dev/xvdc
               sleep 3
                /bin/umount /dev/xvdf

fi



}

start() {

sleep 150

/bin/mount /dev/xvdf /usr/local
sleep 3
mount /dev/xvdc /imap1
sleep 3
mount /dev/xvdd /imap
sleep 3
mount /dev/xvdb /imap2
sleep 3


/sbin/ifup eth0:2
/sbin/ifup eth0:3
/sbin/ifup eth0:4
/sbin/ifup eth0:5

  for i in $mylist; do
      /etc/init.d/$i start
  done
}

case $1 in
start)
start
;;
stop)
stop
;;
*)
echo "You passed wrong option {start|stop}"
exit 1
;;
esac


Please guide 

Thanks and Regards
Jayesh Shinde




      
_______________________________________________
Linux-HA mailing list
[email protected]
http://lists.linux-ha.org/mailman/listinfo/linux-ha
See also: http://linux-ha.org/ReportingProblems

Reply via email to