HPE Community read-only access December 15, 2018
This is a maintenance upgrade. You will be able to read articles and posts, but not post or reply.
Hours:
Dec 15, 4:00 am to 10:00 am UTC
Dec 14, 10:00 pm CST to Dec 15, 4:00 am CST
Dec 14, 8:00 pm PST to Dec 15, 2:00 am PST
cancel
Showing results for 
Search instead for 
Did you mean: 

Package Auto run Question

 
raiden
Regular Advisor

Package Auto run Question

On our Itanium 2 node cluster setup , I issued a shutdown -ry command on primary node where 2 packages are running.

I was under impression then when u explicitly issue any command the cluster doesnt failovers the package to other node . it halts them . This was my understanding.

But after reboot the cluster failovered one of the package while the other package could not be failovered. I checked the logs and found that one FileSystem was not unmounted properly for that package and the package halt was failed.

Could this be the reason the package did not failover..

and the other question is was my understanding wrong. How can that one package failover when i issued an shutdown.. Which setting made that failover of thth package possible

Note : Auto_run is set to yes on both package config files... and in cmviewcl also the auto_run showed enabled on primary node before shutdown. Please answer..
4 REPLIES
Ganesan R
Honored Contributor

Re: Package Auto run Question

Hi Raiden,

If you have enabled global switching for those packages, then it will failover to it's configured alternate node when the primary node for the particular package is down.

But when you halt the package using cmhaltcl, packages will not failover. This is how service guard works.
Best wishes,

Ganesh.
raiden
Regular Advisor

Re: Package Auto run Question

Where is global switching set
Basheer_2
Trusted Contributor

Re: Package Auto run Question

Hello Raiden,

2 Parameters need to be enabled for a package to switch between nodes.
1) AUTO_RUN (cmviewcl -v, look under network_parameters)

AUTO_RUN: spcifies whether a pkg can switch to other nodes in case of failure

cmmodpkg -e pkgname

2) NODE_SWITCHING (cmviewcl -v, look under Node_switching parameters, SWITCHING)

Which node on a per pkg basis can receive the pkg.

cmmodpkg -e -n nodename pgkname


In your case, if AUTO_RUN is setto YES, then node_switching must be enabled also, so that, the ohter node can receive the pkg.

in cmviewcl -v
Node_switching Parameters
SWITCHING (under this, you need to see enabled)

(Note: If AUTO_RUN is disabled, then it is irrelevant whehter node_switching is enabled/disabled)
Matti_Kurkela
Honored Contributor

Re: Package Auto run Question

> I was under impression then when u explicitly issue any command the cluster doesnt failovers the package to other node . it halts them . This was my understanding.

If you explicitly issue a "cmhaltpkg" command, then it auto-disables failover (the AUTO_RUN setting) at the same time.

If you just run "shutdown -ry" when the node is running in a cluster, the shutdown script (/sbin/init.d/cmcluster stop) will execute "cmhaltnode -vf", which will automatically shutdown any packages running on the node and try to failover them. If the package shutdown is free of errors and package configuration allows failover (AUTO_RUN is enabled and there is another node that can run this package) then the package fails over.

The failed umount certainly prevented the failover of the package in your case.

The primary purpose of Serviceguard is to minimize data loss and corruption. If umount fails, the package disk is still mounted on one node and mounting it on another node could cause disk corruption, so Serviceguard refuses to do it.

This is why it is usually very important that the package shutdown actions are correct.

If the package configuration has NODE_FAIL_FAST_ENABLED set to YES, the rules are a bit different because then Serviceguard intentionally crashes the original node when a package failover is executed, to make sure no mounted disks or other resources remain on the original node.

MK
MK