8.177. resource-agents

Updated resource-agents packages that fix several bugs and add various enhancements are now available for Red Hat Enterprise Linux 6.
The resource-agents packages contain a set of scripts to interface with several services to operate in a High Availability environment for both Pacemaker and rgmanager service managers.

Bug Fixes

Previously, when the exportfs utility was used to relocate an exported share, the size of the /var/llib/nfs/rmtab file was doubled. This bug has been fixed and the /var/lib/nfs/rmtab file size is no longer doubled in the aforementioned scenario.
Prior to this update, the fs-lib.sh agent did not recognize the trailing slash ("/") character when searching for devices in the /proc/mounts file. Consequently, NFSv4 mounts were not monitored. With this update, fs-lib.sh has been modified to track the slash characters. As a result, NFSv4 mounts are managed and monitored as expected.
Due to a bug in the oracledb.sh script, when there were multiple ORACLE instances running in the same home directory, the script produced unnecessary delays. The bug has been fixed, and oracledb.sh now works without delays when multiple ORACLE instances are present in the home directory.
To shutdown cleanly, the postgres agent needs to receive the SIGINT signal. Previously, this signal was not sent and postgres performed a hard shutdown instead of a graceful exit. This behavior has been modified, and SIGINT is now sent to postgres on shutdown to attempt a graceful exit, and after a period of time, the SIGQUIT signal is sent if the agent is still active. As a result, postgres performs graceful shutdown during the stop action.
Previously, if a device failed in a non-reduntant (that is not mirror or RAID) logical volume (LV) that was controlled by the HA-LVM utility, the entire LV could be automatically deleted from the volume group. This bug has been fixes and now, if a non-redundant logical volume suffers a device failure, HA-LVM fails to start the service rather than forcing the removal of failed LVs from the volume group.
Prior to this update, the ip.sh agent did not configure IPv6 addresses that contained upper-case letters. Consequently, a resource with such an address failed. With this update, ip.sh has been modified to be case insensitive for IPv6 addresses. As a result, IPv6 addresses with upper case letters are now configured properly by ip.sh.
Previously, agents based on the fs-lib.sh script, such as ip.sh, ignored the self_fence option when the force_unmount option was enabled. Consequently, the configured self_fence option was not enabled. This bug has been fixed and self_fence is accepted regardless of force_unmount.
With this update, the priority level of log messages produced by the mount utility has been changed from previous error to more appropriate debug level.
Due to an incorrect SELinux context of the /var/lib/nfs/statd/sm/ directory, the rpc.statd daemon was unable to start. This problem only appeared if the cluster included NFS mounts. This update modifies how files are copied to the /var/lib/nfs/statd/sm/ directory, so that the SELinux context is inherited from the target directory. As a result, rpc.statd can now be started without complications.
When autofs maps are used for network storage, agents for cluster file systems ("fs") such as netfs.sh, fs.sh, or clusterfs.sh require the use_findmnt option set to 'false'. Previously, when use_findmnt was set incorrectly, and autofs maps became unavailable, the rgmanager services with "fs" resources consequently became unresponsive until the network was restored. The underlying source code has been modified and rgmanager services no longer hang in the aforementioned scenario.
Prior to this update, the lvm.sh agent was unable to accurately detect a tag represented by a cluster node. Consequently, the active logical volume on a cluster node failed when another node rejoined the cluster. With this update, lvm.sh properly detects whether tags represent a cluster node. As a result, when nodes rejoin the cluster, the volume group no longer fails on other nodes.
When multiple instances of the tomcat-6 service were used as cluster resources, the TOMCAT_USER setting in custom /conf/tomcat6.conf configuration files was ignored. Consequently, each instance always started with TOMCAT_USER set to root. This bug has been fixed, and TOMCAT_USER is now applied properly in the described case.
Under certain circumstances, when the tomcat.conf configuration file for a tomcat-6 resource was stored on a shared storage resource that became unavailable, the subsequent stop operation on tomcat-6 failed. This bug has been fixed, and tomcat-6 can now be successfully stopped when tomcat.conf is not readable.
File system based resources, such as fs.sh or clusterfs.sh, required usage of the /tmp directory during status monitoring. If this directory became full after mounting the file system, the monitor action failed even though the file system was correctly mounted. The /tmp directory is no longer used during file system monitors, thus fixing this bug.
If rgmanager was started simultaneously on two nodes, these nodes could both execute the lvchange --deltag command at the same time and corrupt the LVM headers. With this update, LVM headers do not become corrupt even when rgmanager stars on two nodes at the same time.
Previously, when the NFS server was unresponsive, the fuser utility could block the unmounting of an NFS file system. With this update, fuser has been replaced with custom logic that searches for processes with open file descriptors to an NFS mount, thus fixing this bug.


With this update, support for Oracle Database 11g has been added to the oracledb, orainstance, and oralistener resource agents.
This update adds the new update-source option to the named.sa agent. With this option enabled, it is possible to set the notify-source, transfer-source, and query-source to the service cluster IP.
With this update, the lock file for the /usr/share/cluster/orainstance.sh script has been moved from the /tmp/ directory to /var/tmp/.
With this update, the TNS_ADMIN variable has been added to the oracledb.sh cluster script. This variable is a standard Oracle feature to set a specific path to the listener configuration file.
This update improves performance of start, stop, and monitor actions for file system resources. The file system resources use of the findmnt utility to speed up migrations on clusters with a large amount of file system resources.
This update adds official support for the ocf heartbeat resource agents required for use with the Pacemaker cluster manager. Only officially supported agents are present for this initial release. This means heartbeat agents lacking official support are not shipped in this update.
Users of resource-agents are advised to upgrade to these updated packages, which fix these bugs and add these enhancements.
Updated resource-agents packages that fix two bugs are now available for Red Hat Enterprise Linux 6.
The resource-agents packages contain a set of scripts to interface with several services to operate in a High Availability environment for both Pacemaker and rgmanager service managers.

Bug Fixes

Prior to this update, the netfs agent could hang during a stop operation, even with the self_fence option enabled. With this update, self fence operation is executed sooner in the process, which ensures that NFS client detects server leaving if umount can not succeed, and self fencing occurs.
Previously, the IPaddr2 agent did not send out unsolicited neighbor advertisements to announce a link-layer address change. Consequently, floating IPv6 addresses, which require this functionality, could not work correctly. To fix this bug, the send_ua internal binary required for IPaddr2 agent to drive IPv6 addresses has been added. As a result, the floating IPv6 addresses now work correctly, and IPv4 addresses are left unaffected by this change.
Users of resource-agents are advised to upgrade to these updated packages, which fix these bugs.