10.6 TecORB for IBM Tivoli Enterprise Console

TecORB is an optional Operations Center software component integration with IBM Tivoli Enterprise Console (T/EC). When TecORB is available on a T/EC event server, it permits the following additional capabilities:

TecORB is implemented in Java, so it can install and run on any operating system supported by T/EC. It provides standard OMG CORBA 2.0 integration with many of T/EC’s commands and functions without using the Tivoli framework.

For instructions on creating and configuring IBM Tivoli Enterprise Console adapters after the TecORB is installed, see Section 2.15, IBM Tivoli Enterprise Console (T/EC).

10.6.1 System Requirements

Table 10-12 outlines the system requirements for installing the TecORB:

Table 10-12 System Requirements

OS

Description

AIX

  • IBM Tivoli Enterprise Console (T/EC) version 3.9 for IBM AIX

  • IBM AIX 5.2 or 5.3

  • Approximately 30MB available disk space on the /opt file system

HP‑UX (PA-RISC Only)

  • IBM Tivoli Enterprise Console (T/EC) version 3.9 for HP‑UX

  • HP‑UX 11i (11.1x)

  • Approximately 30MB available disk space on the /opt file system

Linux

  • RedHat Linux Application Server 2.1 (AS2.1)

Solaris

  • IBM Tivoli Enterprise Console (T/EC) version 3.9 for Solaris

  • Solaris 2.9

    Additional required patches for Solaris.

  • Approximately 30MB available disk space on the /opt file system

10.6.2 T/EC Rule Base Customization Considerations

This section provides an example rule that forwards and synchronizes all T/EC events with a server. It is a modification of the basic set of rules recommended by IBM Tivoli for synchronizing two T/EC servers.

Multiple TecORBs reporting to a Operations Center TEC adapter need separate event listening ports defined for each adapter. Also, each port must have a matching forwarding port in each tec_forward.conf in a given rule base.

Note that the location for inserting this rule in an existing rule base is subject to the rule processing logic contained in the existing rule base. Based on this logic, insert the rule after the rules that perform event processing, such as event de-duplication. But also remember to insert the rule before the rules that alter event contents or drop an event altogether.

This process might not be the optimal configuration for every implementation. For example, circumstances might exist that do not allow users to act on events at all, or allow them to act only on specific classes of events.

IMPORTANT:Manipulating and modifying an active T/EC rule base can have desired and undesired effects. The person making these changes should be a trained T/EC support person who understands the Operations Center software integration objectives for an implementation and the active rule base being modified.

10.6.3 Customizing T/EC for Integration with Operations Center software

This section provides instructions for preparing an environment to synchronize events between Operations Center software and T/EC consoles after installing the TecORB.

NOTE:The name rb_Formula is an example name used in these sections to illustrate the procedures.

Creating the rb_Formula Rule Base in Tivoli

To create the rb_Formula Rule Base in Tivoli:

  1. Verify with the Tivoli administrator that the environment has a current backup.

  2. Right-click the Event Server icon, then click Start-up.

    If necessary, start the Event Server by right-clicking the Event Server icon, then clicking Start-up.

  3. In the TME Desktop dialog box, right-click the Event Server for the T/EC slave, then click Rules Bases to open the Event Server Rule Bases dialog box.

  4. Click the Create drop-down list, then click Rule Base.

  5. Enter rb_Formula in the Name field.

  6. Specify the correct host and path,

    or

    click Directory and select the path.

  7. Click Create & Close.

  8. To copy the contents of the latest running rule base, in the Event Server Rule Bases dialog box, right-click the latest running rule base icon, then click Copy to open the Copy Rule Base dialog box.

  9. Select rb_Formula as the Destination rule base.

  10. Select Copy rules, Copy classes, and Overwrite files in that destination.

  11. Click Copy & Close.

  12. Continue to Compiling the Rules to compile and load the copied rules.

Compiling the Rules

To compile the rules in Tivoli:

  1. In the Event Server Rule Bases dialog box, right-click the rb_Formula icon, then click Compile to open the Compile Rule Base dialog box.

  2. Select Trace Rules.

  3. Click Compile to compile the rules.

  4. Ensure that no errors occur while the newly copied rules compile.

    If there are errors, notify the Tivoli administrator, as there might be a problem with the original rules.

  5. Click Close.

  6. Continue to Loading the Compiled Rules to load the compiled rules.

Loading the Compiled Rules

To load the compiled rules in Tivoli:

  1. In the Event Server Rule Bases dialog box, right click the rb_Formula icon, then click Load.

  2. Click Load & Close to load the rules.

Restarting the T/EC Event Server

To restart the T/EC Event Server in Tivoli:

  1. Shut down and restart the T/EC Event server to ensure that the rule base does not contain errors.

  2. Click Halt Server to open the TME Desktop dialog box.

  3. Right-click the EventServer icon, then click Shut Down to shut down the T/EC Event server.

  4. Right-click again, then click Start-up to restart the T/EC Event server.

Editing the Rule Base

To edit the rule base in Tivoli:

  1. Locate the tec_forward.conf file in the rule base directory.

  2. Copy the tec_forward.conf file to a file named formula.conf.

  3. Make a backup copy of the file.

    WARNING:Do not modify any existing filters.

  4. Edit the ServerLocation, ServerPort, and TestMode properties in the formula.conf file as follows:

    ServerLocation: Operations Center server name or IP.

    ServerPort: Connection port for the server.

    TestMode: Indicates if this is a test.

    The following is an example of this file:

    #ServerLocation=NULL
    #TestMode=yes
    ServerLocation="Operations Center server name or IP"
    ServerPort=12345
    EventMaxSize=4096
    BufEvtPath=/etc/Tivoli/tec/Formula.cache
    #ConnectionMode=connection_oriented
    #Filter:Class=Logfile_Base
    
  5. Compile and load the rules and restart the T/EC Event Server as described above.

  6. Replace the following in the /TEC_RULES/Formula_rules.rls file:

    Replace…

    With…

    $which_postemsg
    

    The path to the location of postemsg.

    $new_rb_directory
    

    The directory path to the new rules base directory.

    The following is an example of this file:

    /*
    The following rule processes TEC_Sync events from Operations Center
    */
    rule:
    tec_sync_from_master_tec:
    (
    description:'Processes TEC_Sync events from Operations Center server',
    event: _event of_class 'TEC_Sync'
    where [
    originating_event_id: _orig_event_id,
    new_status: _new_status
    ],
    reception_action:
    (
    first_instance(
    (
    sprintf(_event_id, '%d%d%ld',[_event_handle,_server_handle,_date_reception]),
    bo_set_slotval(_event,originating_event_id,_event_id),
    re_send_event_conf('Formula',_event),
    re_mark_as_modified(_event,_)
    )
    ).
    /*
    
     The following rule forwards updates to Operations Center 
    */
    change_rule:
    update_status_on_master_tec:
    (
    description:'Forward alarm updates in TEC to Operations Center server',
    event: _event of_class _class
    where [
    originating_event_id: _orig_event_id outside[0]
    ],
    slot:status set_to _new_status outside[_status],
    action:
    (
    /*EventID=(EventHandle)+(ServerHandle)+(DateReception)*/
    exec_program(_event,'$which_postemsg',
    '-f $new_rb_directory/TEC_RULES/Formula.conf -r HARMLESS originating_event_id=%s new_status=%s TEC_Sync TEC',[_orig_event_id,_new_status],'NO')
    )
    ).
    

Modifying Classes

To modify the classes in Tivoli:

  1. Add the synchronization classes to the rb_Formula rule base so that the superclass and class definitions in this and the following steps define the appropriate slot values.

    These slot values create the event uniqueness required to synchronize events between the two domains (Operations Center and T/EC).

  2. Add the following entries to the top of the /rb_Formula/TEC_CLASSES/ tec.baroc file:

    TEC_CLASS:
       TEC_Sync ISA EVENT
       DEFINES {
          new_status: STRING;
       };
       END
    
  3. Modify the root.baroc file to add the string originating_tec_hostname and originating_event_id to the TEC_Class definition.

    Add only the lines shown in bold; do not edit any other part of the file.

    TEC_CLASS:
       EVENT
       DEFINES {
    server_handle:  INTEGER,
      parse=no;
    date_reception:  INT32,
      parse=no;
    event_handle:  INTEGER,
      parse=no;
    source:  STRING; 
    sub_source:  STRING; 
    origin:  STRING; 
    sub_origin:  STRING; 
    hostname:  STRING;
    adapter_host:  STRING; 
    .
    .
    originating_tec_hostname: STRING, default = "$host";
           originating_event_id: STRING;
    
  4. In the root.baroc file, replace $host with the local hostname of the T/EC server, then save the file.

    This allows the TecORB to send TEC_Sync events when the event status changes.

    The default ="$host" statement must have the correct local hostname or IP address for the T/EC server. This is how the TecORB knows to which T/EC slave to send TEC_Sync events when event status changes occur in Operations Center software.

Compile and load the rules and restart the T/EC Event Server as described above.

10.6.4 Verifying that the Default Port is Available

The default port for TecORB is 1576. Prior to installing the TecORB, determine whether port 1576 is already in use on the T/EC server.

To verify port 1576 is available:

  1. Enter one of the following commands at a command prompt:

    Windows:

    netstat ‑an | find "LISTEN" | find "1576"
    

    UNIX:

    netstat ‑an | grep "LISTEN" | grep "1576"
    
  2. If above command results in a line ending with the word LISTEN, select a different port during installation.

    See Installing TecORB on Windows.

10.6.5 Configuring TecORB

To configure TecORB:

  1. If the TCP/IP port number 1576 is already in use on the T/EC server, select a different port.

  2. To set the appropriate environment variables for the user who launches TecORB, perform one of the following steps:

    • For UNIX systems, run the /etc/Tivoli/setup_env.sh or /etc/Tivoli/setup_env.csh shell script.

    • For Windows systems, place wtdumper, wsetemsg, and postemsg in the user’s path environment variables. These variables can be accessed through the system Control Panel.

10.6.6 Restricting Access by IP Address

It is possible to restrict access to some Operations Center components by IP address. By default, any host can connect to the TecORB. However, it is possible to specify the hosts that can connect to the ORB and thereby deny access to all other hosts.

To restrict access to TecORB:

  1. Open the tecorb.properties file located in the TecORB configuration directory.

  2. Locate the following line that normally starts the ORB:

    Command ‑Initial ‑Shared "directory_path_name ‑OAport 1572";
    
  3. Add the following option to the code that initiates the ORB:

    ‑CORBA.Allow IP_Addresses
    

    where IP_addresses are those that are permitted to access the TecORB. Each IP address must be complete (no wildcards). Use commas to separate multiple host IP addresses.

    For example:

    Command ‑Initial ‑Shared "directory_path_name ‑OAport 1572 ‑CORBA.allow 206.55.26.20,206.55.26.21,206.55.26.23
    

10.6.7 Starting and Stopping TecORB

Starting TecORB on UNIX

To start TecORB on Unix:

  1. From the appropriate directory, at a command prompt, enter tecorb.

Specifying the Startup Type for TecORB in Windows

To specify the startup type on Windows:

  1. From the desktop, click Start > Settings > Control Panel to open the Control Panel dialog box.

  2. Double-click Administrative Tools to open the Administrative Tools dialog box.

  3. Double-click Services to open the Services dialog box.

  4. Right-click Novell Operations Center, click TecORB, then click Properties to open the Properties dialog box.

  5. Click the Startup Type drop-down and select one of the following:

    Automatic: Starts TecORB automatically upon system startup.

    Manual: Starts TecORB manually.

  6. Click OK to close the Properties dialog box.

  7. Close the Services window.

  8. Close the Control Panel window.

Manually Starting TecORB in Windows

To start TecORB in Windows:

  1. Click Start > Settings > Control Panel to open the Control Panel dialog box.

  2. Double-click Administrative Tools to open the Administrative Tools dialog box.

  3. Double-click Services to open the Services dialog box.

  4. Right-click Novell Operations Center, click TecORB, then click Start.

    The Status column changes to Started.

Manually Stopping TecORB

To stop TecORB:

  1. Use the mosstop command.