Forum Discussion

solom's avatar
solom
Level 4
12 years ago

Faulted on node2

Hi   Faulted on node2 This message comes when i turn off the node1  to see the failover work or not  my services group and the resource not failover to node 2  (Service Groups state is online a...
  • mikebounds's avatar
    12 years ago

    I have looked at logs and main.cf more closely now and I can see your issue.  You have nested mounts:

     

            MountPoint = "/trakpri/meam/live/tc"
            MountPoint = "/trakpri/meam/live/tc/jrn/alt"
            MountPoint = "/trakpri/meam/live/tc/jrn/pri"
            MountPoint = "/trakpri/meam/live/tc/wij"
     
    But you have not defined the right dependencies in VCS - you should have dependencies
     
      live-tc-jrn-alt requires trakpri-meam-live-tc
      live-tc-jrn-pri requires trakpri-meam-live-tc
      trakpri-meam-live-tc-wij requires trakpri-meam-live-tc
     
     
     
    i.e VCS needs to mount "/trakpri/meam/live/tc" first and then the others and when VCS is offlining it needs to umount all subdirectory mounts of "/trakpri/meam/live/tc" (I call these submounts) first and then umount "/trakpri/meam/live/tc".  As you have not defined these dependencies VCS will try to online and offline all at the same time and this will cause problems most of the time.
     
    If the directories are created correctly then directory "/trakpri/meam/live/tc" should be empty (as you shouldn't have files or directories in a mount point) and the filesystem that is mounted at "/trakpri/meam/live/tc" should have directories:
    /wij
    /jrn/alt
    /jrn/pri
     
    so that the sub-mounts can mount.  This will mean the Firedrill may fail for the mounts as it won't see the mount points for sub-mounts and this is fine as if it is failing, the firedrill is just written badly as it should check for nested mounts and not expect to find mount points for the sub-mounts.
     
    Also I don't know why you are making dependencies like "ip requires trakpri-meam-live-tc".  An IP doesn't need a mount, they are independent.  I have seen this done the otherway round ("trakpri-meam-live-tc requires ip") and this is a good idea as this means if the IP fails as the service group is already online on the other system (but VCS can't see this as VCS is not running on other system or heartbeats are down), then the mounts won't online because they depend on ip which can prevent mounts onlining on both nodes at the same time which can cause corruption.  If when you add you app to the service group and this needs ip, then just make app dependent on mounts and ip and remove dependencies of ip needing mounts.
     
    Mike