Video Screencast Help

Intelligent Monitoring Framework (IMF) Configuration utility for VCS 5.1SP1

Created: 02 Oct 2011 • Updated: 24 Nov 2011 | 3 comments
AHerr's picture
+2 2 Votes
Login to vote

With VCS 5.1SP1, Symantec introduced the Intelligent Monitoring Framework (IMF) feature.  IMF is an extension to the VCS agent framework. The intelligent monitoring functionality of VCS agents is disabled by default during a fresh installation or an upgrade to VCS 5.1 SP1. You can enable or disable this functionality as needed.

The benefits of intelligent monitoring over poll-based monitoring are as follows:

  • Faster detection of resource state changes.
  • Reduction in VCS system utilization which enables VCS to effectively monitor a larger number of resources.

When an IMF-enabled agent starts up, the agent initializes the IMF notification module. After the resource is in a steady state, the agent registers with the IMF notification module the details of the resource that is required to monitor the resource.

The IMF notification module hooks into system calls and other kernel interfaces of the operating system to get notifications on various events such as when a process starts or dies, or when a block device gets mounted or unmounted from a mount point. VCS process-based and mount-based agents use a kernel driver that provides asynchronous event notifications to the agents that are enabled for intelligent resource monitoring.It was disabled by default to allow customers to choose to implement this feature. 

Since its release customers have shown a great deal of interest in this feature.  With this interest also comes the request to simplify or reduce the number of commands needed to enable or disable IMF on a cluster.

With the attached script, you can manage IMF for a cluster with a single command for VCS 5.1SP1. 

In VCS 6.0, this script will be included with the release and will be located here: /opt/VRTSvcs/bin/haimfconfig.  The attached script is not compatable with VCS 6.0 as changes in the list of IMF agent supported with the new release will invalidate this script for use with version 6.0.  Please do not attempt to use this script with VCS 6.0.  This script is supported on for VCS 5.1SP1, including additional patches.

The attached file is haimfconfig.tar.  Please extract the file, haimfconfig, into the /opt/VRTSvcs/bin directory.


Command Usage:

haimfconfig [–validate]   {–enable|-disable}   [–agent <agent>|-amf]

haimfconfig –enable: This will set AMF_START = 1,  load amf module and enable IMF for all agents

haimfconfig –disable: Disable IMF for all agent.This will unload amf module, set AMF_START = 0

haimfconfig –enable –agent <agents>: Enable IMF for specified set of agent

haimfconfig –disable –agent <agents>: Disable IMF for specified set of agent

haimfconfig –enable –amf: This will set AMF_START = 1 and  load amf module

haimfconfig –disable –amf:  This will unload amf module and set AMF_START = 0


To configure IMF to be used for all available agents within a cluster, run:

haimfconfig –enable


To unconfigure IMF for a cluster, run:

haimfconfig –disable 

Comments 3 CommentsJump to latest comment

Zahid.Haseeb's picture

Thanks AHeer for sharing nice Article/Download

Few Questions:

1.) As you mentioned procedure for enable/disable the IMF feature. What about MS Windows ? How can we enable/disable it or deal with IMF in MS Windows ?

2.) What is the logic to elaborate very late about the usage of IMF(See the initial article below of IMF). As I thought that the IMF is built-in and enable and works by default. I think this should be elaborated as it introduced in the earlier Article below because I implemented VCS twice but did not enable it as I thought its built-in/enable already with the product just like Agent Frame Work.

Any comment will be appreciated. Mark as Solution if your query is resolved
Thanks in Advance
Zahid Haseeb

Login to vote
AHerr's picture

Hi Zahid,


1) MS Windows support for IMF does not come until version 6.0.  This utility is for 5.1SP1, where it was not enabled by default.  With 6.0 UNIX/Linux IMF will be enabled by default.

2) It was introduced disabled by default because customers have asked us previously to allow a release to pass before making some functionality default to alert them of the change and be comfortable with it.  It also is not on every available agent, so there could have been confusion on which agent was supported, so we defered it being enabled by default until 6.0.  This allows us to spread the word of its benefits, include additional agents and make sure cusotmers are happy with the feature before making it enabled by default.  We introduced this utility (haimfconfig) and an IMF whitepaper recently.  The utility is as a result of customer feedback of the multiple steps needed to enable/disable IMF in a cluster.  We took that feedback and created this utility to make things easier.  With on command you can enable IMF on all of the agents that are supported on 5.1SP1.  This utility was updated in 6.0, so as long as you put it in the same location when included on a 5.1SP1 box, it will continue to work the same way just with an updated IMF agent support list.

I hope you like this feature as it is one that we are really proud of.



Login to vote
guy.heirman's picture


I have storage Foundation 5.1SP1Rp2, played with haimfconfig command. Works fine.
I also can get the status with #amfstat, no problem there.
But there is also a manifest called system/amf
It does not properly disable / enable all IMF agents.
Should we use the manifest in this release ?
I noticed that when the manifest is disabled IMF works fine.
detailed info:
root@sdmd206 # svcs -a|grep amf
maintenance    13:45:45 svc:/system/amf:default
root@sdmd206 # amfstat -g
AMF Status Report
Registered Reapers (5):
 0      20992   3       0       VCSApplicationAgent
 1      21109   20      0       VCSMountAgent
 2      21187   1       0       VCSNetlsnrAgent
 3      21215   4       0       VCSOracleAgent
 66     29082   1       0       VCSProcessAgent
kind regards,
Guy Heirman
Login to vote