Tivoli Netcool/OMNIbus configuration resources for managing virtualization

When you install Tivoli Netcool/OMNIbus, a number of configuration files are provided for the event management of virtual environments. These resources are available as sample files that are located in the $NCHOME/omnibus/extensions/virtualization directory and its subdirectories.

Details of the configuration files are as follows:
  • $NCHOME/omnibus/extensions/virtualization/common/virtualization_automations.sql file: This file creates the following Objectserver resources:
    • The following table columns, which are added to the alerts.status table:
      Column name Data type Description
      CauseType integer Denotes symptom and root cause events. Possible values are as follows:
      • 0: Unknown
      • 1: Root cause
      • 2: Symptom
      ParentIdentifier varchar(255) Associates symptom events with the root cause event. For a symptom event, the value of this field is the Identifier value of the root cause event.
      ParentServerSerial integer Associates symptom events with the root cause event. For a symptom event, the value of this field is the ServerSerial value of the root cause event.
    • The custom.vmstatus table. This table is used to store the details about the status of the virtual machines in the virtual environment. The status of the virtual machines is kept up to date by the situation events from the VMware VI Agent. Information in this table can be duplicated because different situations can provide the same information. The custom.vmstatus table contains the following columns:
      Column name Data type Description
      VMHostName varchar(64) The host name of the virtual machine. Primary key.
      HyperHostName varchar(64) The host name of the physical server on which the virtual machine is configured.
      VMStatus int The status of the virtual machine. The values are:
      • 0: offline. Indicates that the virtual machine is powered off, in a stuck state, or in a suspended state.
      • 1: active
      StateChange time The last time that the entry was modified.
    • The triggers vms_new_row, vms_deduplication, vms_state_change, vms_remove_old_enties, and vm_correlate. These triggers perform error event correlation and resolution based on the virtual machine host name and hypervisor host name. The triggers are assigned to the vm_triggers trigger group.
  • $NCHOME/omnibus/extensions/virtualization/common/ShowRootCauseToo.jar file. This file creates a menu item and tool that are added to the event list to identify the root-cause events behind symptom events.
  • $NCHOME/omnibus/extensions/virtualization/common/remove_virtualization_automations.sql file: This file removes the virtualization table and automations from the ObjectServer schema, if required.
  • $NCHOME/omnibus/extensions/virtualization/snmp/snmp.rules file and associated files in the $NCHOME/omnibus/extensions/virtualization/snmp directory. This customized rules file and the associated rules files are in the format that is compatible with IBM Tivoli Netcool/OMNIbus Knowledge Library. These files contain the logic to process SNMP traps that originate from VMware vSphere V5.0 virtual machines (VMs).
  • $NCHOME/omnibus/extensions/virtualization/itm/tivoli_eif_virtualization_pt1.rules and $NCHOME/omnibus/extensions/virtualization/itm/tivoli_eif_virtualization_pt1.rules/tivoli_eif_virtualization_pt2.rules files: These customized rules files are provided for the Probe for Tivoli EIF, and can be used by uncommenting the appropriate lines in the standard rules file (tivoli_eif.rules), which is distributed with the probe. The tivoli_eif_virtualization_pt1.rules and tivoli_eif_virtualization_pt2.rules files contain the logic to process the situation events for errors and resolutions that originate from an IBM Tivoli Monitoring hypervisor agent. These files also map the situation data to ObjectServer fields in the alerts.status table, and additionally insert data into the custom.vmstatus table.

Summary of the sample configuration provided

The virtualization_automations.sql file focuses on correlating events between the virtual machines and the hypervisor, and on processing events that are associated with migrated virtual machines. This sample configuration was written for the VMware VI Agent, but can be adapted for other virtualization environments, provided the rules file for the Probe for Tivoli EIF is written correctly.

Hardware faults can be collected by probes running on the virtual machines, or by the VMware VI Agent. After the events are inserted into the alerts.status table, they are correlated by using a temporal trigger that runs every 20 seconds. If a hypervisor situation event is correlated with the same type of situation event from a virtual machine running on it, these two events are modified in the following ways:
  • The hypervisor event is marked as a root cause by setting the value of the CauseType field to 1. The severity is increased to 5 because the root cause event is causing other faults on the virtual machines and needs to be resolved quickly.
  • The virtual machine events are marked as symptoms by setting the value of the CauseType field to 2. The severity is lowered to 2 because the symptom is fixed when the root cause is fixed. The value of the ParentServerSerial field is set to the value of the ServerSerial field of the hypervisor event. Finally, the ParentIdentifier field is set to the value of the Identifier field of the root cause event.

If a virtual machine is migrated, any associated events with an AlertGroup value of Memory Allocation Status, CPU Status, or Network Link Status are reduced in severity to 2 to indicate that they are no longer a significant problem. This is because a virtual machine migration fixes these faults in due course.

Note: Review the contents of the virtualization_automations.sql file to understand how the automations work, and to determine whether the sample configuration meets your requirements, or whether additional configuration is required to accommodate other types of hardware faults. You can copy the sample file provided, remove its default read-only permissions, and then edit your copy of the file as required.