A.4 Monitoring a Log File on a Shared Cluster Disk

This topic provides an example of how AppManager manages cluster resources. The simplest cluster monitoring might involve checking a log file on the shared cluster disk. For this type of monitoring, the Operator Console TreeView should include all of the physical nodes that comprise the cluster, but it should not include any virtual server names.

For this type of monitoring, you should place the physical nodes for a cluster in a unique server group. For example, if you have a cluster of three computers—BAJA, SHARK, and CORTEZ—that form the virtual server SALESWEST, create a server folder called SALESWEST and add these three physical nodes to the group. For information about adding computers and creating server groups, see the Operator Console User Guide for AppManager.

A.4.1 Adding and Discovering the Cluster Nodes

To monitor a cluster of Windows servers:

  1. Install the AppManager agent and appropriate module on each of the computers that make up the Microsoft Cluster Server. At a minimum, install the AppManager for Microsoft Windows module.

  2. In the Operator Console or Control Center, add the computers to the TreeView if they are not already displayed there. Do not add computers using virtual names, such as the name of the cluster.

  3. On the TreeView menu, click Create Server Groups.

    • Type a group name for the cluster.

    • Select the physical nodes to be members of the group, then click Add.

    • Click OK.

  4. In Microsoft Cluster Administrator, fail all resources over to the first node. This process allows you to display all cluster disk objects under the NT resource object.

  5. Run the Discovery_NT Knowledge Script on the computer you selected in step 4.

  6. Repeat steps 4 through 6 for each physical node in the Microsoft Cluster Server. For example, fail the cluster resources over to computer A and run the Discovery_NT Knowledge Script, then repeat the steps for computer B.

A.4.2 Selecting Monitoring Knowledge Scripts

If you are monitoring resources that reside physically on the clustered node, such as network interface cards, CPU, physical memory, power supplies, or voltage, you can run Knowledge Scripts on the physical nodes without any further configuration. However, to monitor shared resources such as shared logical drives, services, or applications, run the AMAdmin_SetResDependency Knowledge Script to identify the resource dependency for each node.

The SetResDependency Knowledge Script enables you to define the resources that a Knowledge Script requires in order to run. The agent verifies whether the resources are there. If the resources are not there, the job is skipped until the next scheduled iteration, which avoids unnecessary or duplicate error messages.

Before you set the resource dependency, review the cluster group to identify shared resources and which resources may failover between cluster nodes. Also verify whether the cluster is an active/passive cluster or an active/active cluster.

A.4.3 Setting Resource Dependency in an Active/Passive Cluster

In an active-passive cluster, an application or resource is only available on one node, the active node, at any given time. Because only one node is active, you need to configure only one custom Knowledge Script category to include your cluster resource jobs and one AMAdmin_SetResDependency job that identifies the cluster resource that is owned by the active node.

The following example uses the General_AsciiLog Knowledge Script, which monitors a log file on a drive you specify. For this example, this script monitors a log on a shared drive that is only owned by an active node in a cluster.

To monitor the shared logical disk in an active/passive cluster:

  1. In the Operator Console or Control Center, right-click the General_AsciiLog Knowledge Script and select Copy Knowledge Script.

  2. Rename the copy to create a new Knowledge Script category. You can use a prefix such as Cluster or the virtual server name, for example, Cluster_AsciiLog or SALESWEST_AsciiLog.

  3. Repeat steps 2 and 3 for each additional monitoring Knowledge Script you want to use. For example, create a Cluster_LogicalDiskBusy Knowledge Script. Use the same prefix you used in renaming the AsciiLog Knowledge Script.

  4. Run the AMAdmin_SetResDependency Knowledge Script on the server group you created for the cluster.

  5. On the Values tab in the Knowledge Script Properties dialog box, set the following parameters:

    Parameter

    How to Set It

    Knowledge Script category

    This setting identifies which jobs should only run when the specified resource is owned by the current node. Otherwise, the job is inactive.

    Specify the Knowledge Script category that you want to be dependent on the resource you specify. For example, type Cluster.

    In this example, if you run this Knowledge Script on the computer BAJA, specify the Cluster job category and the dependency as the M: drive, the jobs you have created for the Cluster category will only run on the computer BAJA when it is the active node that owns the M: drive.

    Required available resources

    Type the name of a shared resource such as a shared logical disk.

    For example, M:

    In specifying a resource dependency, you should identify a single resource, whether it is a physical drive or service name, within the cluster group.

For more information about the AMAdmin_SetResDependency Knowledge Script, see the Help for the Knowledge Script.

A.4.4 Monitoring Clustered Resources

After you run the AMAdmin_SetResDependency Knowledge Script on each node in the Microsoft Cluster Server, you can run identical jobs on all of the nodes or on the server group you created for the cluster. For example, you can run the Cluster_AsciiLog Knowledge Script, and any other Knowledge Scripts that require the same logical drive, on the server group SALESWEST.

Only the active node sends events and collects data. In the Jobs list, the jobs running on the active node display a status of Running/Active, and the jobs on the passive node display a status of Running/Inactive. In the TreeView pane of the Operator Console, a small clock icon is displayed next to the “inactive” node.

If the cluster group or resource fails over, AppManager automatically begins monitoring the other node.

A.4.5 Using SetResDependency in an Active/Active Cluster

In an active/active cluster, monitoring shared logical drives can be somewhat more complex because each node can own one or more physical drives simultaneously. For example, you have two physical nodes, BOSTON and ATLANTA, that make up the cluster EAST. The computer BOSTON owns drives E: and F: and ATLANTA owns drive G:. A failover event on the BOSTON node can affect one or both drives, so ATLANTA may take ownership of just one additional drive or of all three drives.

If the drives are configured as independent group resources that can be owned by either node at any given time, you need to set up the dependency with this scenario in mind. In this case, because you have three different resources that can be owned by either node, you need to create three Knowledge Script categories to handle monitoring.

Using the General_AsciiLog Knowledge Script as an example, the following steps explain what you need to do.

To monitor the shared logical disk in an active/active cluster:

  1. In the Operator Console or Control Center, right-click the General_AsciiLog Knowledge Script and select Copy Knowledge Script.

  2. Rename the copy to create a new Knowledge Script category, for example, ClusterE_AsciiLog.

  3. Repeat steps 2 and 3 to create two additional copies of the Knowledge Script, for example, ClusterF_AsciiLog and ClusterG_AsciiLog. You now have three copies of the AsciiLog Knowledge Script, one for each resource that may fail over:

    ClusterE_AsciiLog
    ClusterF_AsciiLog
    ClusterG_AsciiLog
  4. Run the AMAdmin_SetResDependency Knowledge Script on the server group you created for the cluster. In the Properties dialog box:

    • Set Knowledge Script category to ClusterE.

    • Set Required available resources to be E:

  5. Run the SetResDependency Knowledge Script on the server group a second time. In the Properties dialog box:

    • Set Knowledge Script category to ClusterF.

    • Set Required available resources to be F:

  6. Run the SetResDependency Knowledge Script on the server group a third time. In the Properties dialog box:

    • Set Knowledge Script category to ClusterG.

    • Set Required available resources to be G:

  7. Run all three AMAdmin_SetResDependency jobs on both cluster nodes.

  8. After you configure the resource dependency, run all three cluster AsciiLog Knowledge Scripts on both cluster nodes. Before you start each of the cluster AsciiLog jobs, open the Knowledge Script Properties dialog box, click the Objects tab, and adjust the selected objects as follows:

    Knowledge Script

    Object

    ClusterE_AsciiLog

    Drive E:

    ClusterF_AsciiLog

    Drive F:

    ClusterG_AsciiLog

    Drive G:

As a general rule, change the selected objects by disabling the objects to which the Knowledge Script does not apply.