On AIX HA clusters (and probably other clusters also) when a node fails, the other node (in a two node cluster) take over the failed node's hostname, IP, etc.
If you have a cron job, for example, that needs to run on a particular node, regardless of its state, the easiest way that I have found is to do a 'netstat -i' and grep for the node name.
For example, I have a script I want to run every hour on node1. I make a crontab entry on both (or all) nodes in the cluster to run this script every hour. Node2 will start to run the script, encounter the HA check and exit. If node1 fails, node2 will take-over node1's name and IP, therefore the HA check will suceed because it now has node1's name and IP also.
sub HA_Check {
@NETSTAT = split(' ', `netstat -i | grep node1`, 9999);
if ($NETSTAT[3] !~ /node1/) {
die;
}
}