All probes released after OMNIBus 7.3 GA are in 7.3 format. Those probes can be installed onto 7.3 via $NCHOME/omnibus/install/nco_install_integration tool. if you want to use the same package to install the probe on 7.2 you need to do:

1. unzip the package.2.find the full path that contains the patch3. install the patch,using $NCHOME/omnibus/install/nco_patch

OMNIBus users are divided into two groups, external and internal authenticated. internal authenticated user have their user name and password stored in security.users table. passwords are encrypted for obvious reason.

those passwords can be encrypted using different algorithm. you have choice between DES and AES mode. DES is the default.

Which encryption algorithm to use is totally up to security compliment requirement. for example I use plan taxt password in all my Netcool vmware images. However, in a production environment, one should always use AES(or AES_FIPS) instead of DES, this is because that WEBTOP (WEBGUI) doesn't support DES encryption algorithm. if you ever want to encrypt the password stored in Webtop datasource definition file, then you have to run objectserver with PasswordEncryption property set to "AES".

Things might change with new releases, above is only true to current version. OMNIBus 7.3.0 and WEBGui 7.3

ITNM has so many component and sometimes it is hard to know which ports do they listen on. following one liner will help you find out which port do they use, please be notified that this is only tested on Redhat Linux:

ITNM writes a list of files after startup, if you've started you ITNM as root user by accident you will not be able to start it using normal user again as the owner of those files has been changed to root.

you can not simply change owner of all the files in $ITNMHOME to normal user because some special binaries should be run as root, eg ncp_poller.

following one line script will create a list of command you should run as root to restore the original owner:

I recently find a bug related to Network Polling Interface filter. if you are building a filter that uses more than one field in interface filter section, the polling policy won't work. you will find following message from your ncp_poller debug log:----------------------------------------------------------------------------------05/14/2010 02:42:27 PM: Warning: [1879833504t] CPolicyMonitorMap.cc(327) A database 'execute' operation has failed : CNcpODBCSth.cc line 654 : (no error message)( statement: 'SELECT DISTINCT chassis.ENTITYID AS MAINNODEENTITYID,chassis.ACCESSIPADDRESS AS MAINNODEADDRESS,chassis_entity.ENTITYNAME AS MAINNODEENTITYNAME,chassis.CLASSNAME AS ENTITYCLASS,lingerTime.lingerTime AS lingerTime,msc.STATUS AS CHASSISMANAGED,interface.ENTITYID AS ENTITYID,interface_entity.ENTITYNAME AS ENTITYNAME,interface_entity.ENTITYTYPE AS ENTITYTYPE,interface.ACCESSIPADDRESS AS ACCESSIPADDRESS,interface.IFINDEX AS IFINDEX,interface.IFTYPESTRING AS IFTYPESTRING,interface.IFNAME AS IFNAME,interface.IFDESCR AS IFDESCR,interface.IFALIAS AS IFALIAS,interface.IFINDEX AS INSTANCESTR,msi.STATUS AS ENTITYMANAGED FROM chassis INNER JOIN entity chassis_entity ON chassis_entity.ENTITYID=chassis.ENTITYID AND chassis_entity.DOMAINMGRID=? INNER JOIN lingerTime ON lingerTime.ENTITYID= chassis_entity.ENTITYID INNER JOIN classMembers ON classMembers.ENTITYID= chassis_entity.ENTITYID INNER JOIN ncmonitor.policyClass pc ON pc.CLASSID=classMembers.CLASSID AND pc.POLICYID=? AND pc.INCLUDE<>0 LEFT JOIN managedStatus msc ON msc.ENTITYID= chassis_entity.ENTITYID INNER JOIN entity interface_entity ON interface_entity.MAINNODEENTITYID= chassis_entity.ENTITYID AND interface_entity.DOMAINMGRID=? INNER JOIN interface ON interface.ENTITYID=interface_entity.ENTITYID LEFT JOIN managedStatus msi ON msi.ENTITYID=interface_entity.ENTITYID INNER JOIN interfaces ifilt1 ON ifilt1.entityId = interface.entityId AND ( ifilt1.ifAdminStatus = 'up' AND ifilt1.ifName like 'Fa%' or ifName like 'Gi%' or ifName like 'Te%' ) WHERE ( chassis_entity.CHANGETIME >= ? ) AND chassis.accessIPAddress IS NOT NULL AND ( interface_entity.CHANGETIME >= ? ) ORDER BY lingerTime.lingerTime ASC' varbinds: 1,35,1,1970-01-01 10:00:00,1970-01-01 10:00:00 )------------------------------------------------------------------------------------

after trying this sql statement in my database's command line interface(replacing question mark with corresponding 'varbind'), I find that the interface filter bit have some error:

INNER JOIN interfaces ifilt1 ON ifilt1.entityId = interface.entityId AND
( ifilt1.ifAdminStatus = 'up' AND ifilt1.ifName like 'Fa%' or ifName
like 'Gi%' or ifName like 'Te%' )

I use ifName field in my filter few times, the first ifName is prefixed with 'iflit1', the later two are not.

after changing the filter text from " ifName like 'Fa%' or ifName
like 'Gi%' or ifName like 'Te%' " to "ifName like 'Fa%' or ifilt1.ifName
like 'Gi%' or ifilter1.ifName like 'Te%' ", the policy works.

I recently encountered a very strange problem installing ITNM on 64bits linux.

The installation script fails with following message:--------------------------------------------------------------===============================================================================Problem installing COI/DE Components------------------------------------

The installation of the COI/DE components failed with the following message:

Component:Message:

For more information, please review /opt/IBM/tivoli/netcool/log/install/Configuration.log and the logs found in /opt/IBM/tivoli/tip/logs, and correct any problems described therein before continuing.-------------------------------------------------------------

the logfile mentioned does not contain much valuable information, one strange thing is that it contains lots of components I did not choose.

I decide to go through the installation guide before raising PMR . the installation guide says that compat-libstdc++33 and compat-libstdc++-296 must be installed. I then run 'rpmquery -a|grep compat-libstdc++' and find the packages I've installed are 64 bits.

2. create auto startup script by
running
$ITNMHOME/install/create_itnm_control_scripts.sh:---------------------------------------------------------------------------------[root@testncp
scripts]# export PRECISION_DOMAIN=TEST_DOMAIN[root@testncp
scripts]# ./create_itnm_control_scripts.sh ncpITNMHOME is not set
in the environment.Guessing
ITNMHOME=/opt/IBM/tivoli/netcool/precision.Rerun if not
satisfactory.

If you installed IBM Tivoli Network Manager IP
Edition as a non-root user,you can use this script to alter
permissions so that you can run itwhilst logged on as the
non-root user who installed the product, oranother user in the
same group. The processes that need to run as rootwill have
their setuid permission changed so that they execute as rooteven
when invoked by a non-root user.

IMPORTANT: Due to the
way this script has to make certain shared librariestrusted, only
ONE INSTALLATION PER MACHINE can be set up to be run by anon-root
user. If you have multiple installations of IBM Tivoli
NetworkManager IP Edition on the same machine, you will have to
run all but one ofthem as root.

In order for this
script to work correctly, you must be logged on as rootwhen you
run it.

Press return to continue, or <CTRL> + C to
abort

$NCHOME was not set in the environment.
Guessing $NCHOME=/opt/IBM/tivoli/netcool.If this is wrong, set
$NCHOME yourself and re-run this script.

Increasing
trustworthiness of shared libraries...

Before adding
trusted directories for this installation, trusted directories
are:

include
ld.so.conf.d/*.conf/opt/IBM/tivoli/netcool/precision/platform/linux2s390/lib/opt/IBM/tivoli/netcool/platform/linux2s390/lib/opt/IBM/tivoli/netcool/platform/linux2s390/oracleInstantClient10.2/opt/IBM/tivoli/netcool/platform/linux2s390/oracleInstantClient11.1/opt/IBM/tivoli/netcool/platform/linux2s390/informix_odbc_3.50/lib/esql/opt/IBM/tivoli/netcool/platform/linux2s390/informix_odbc_3.50/lib/cli

/sbin/ldconfig:
/opt/IBM/tivoli/netcool/platform/linux2s390/lib/libicui18n.so.38 is
not a symbolic link

/sbin/ldconfig:
/opt/IBM/tivoli/netcool/platform/linux2s390/lib/libicui18n.so.40 is
not a symbolic link

/sbin/ldconfig:
/opt/IBM/tivoli/netcool/platform/linux2s390/lib/libicuuc.so.38 is not
a symbolic link

/sbin/ldconfig:
/opt/IBM/tivoli/netcool/platform/linux2s390/lib/libicuuc.so.40 is not
a symbolic link

/sbin/ldconfig:
/opt/IBM/tivoli/netcool/platform/linux2s390/lib/libicudata.so.38 is
not a symbolic link

/sbin/ldconfig:
/opt/IBM/tivoli/netcool/platform/linux2s390/lib/libicudata.so.40 is
not a symbolic link

/sbin/ldconfig:
/opt/IBM/tivoli/netcool/platform/linux2s390/lib/libtre.so.4 is not a
symbolic link

After adding trusted directories for this
installation, trusted directories are:

include
ld.so.conf.d/*.conf/opt/IBM/tivoli/netcool/precision/platform/linux2s390/lib/opt/IBM/tivoli/netcool/platform/linux2s390/lib/opt/IBM/tivoli/netcool/platform/linux2s390/oracleInstantClient10.2/opt/IBM/tivoli/netcool/platform/linux2s390/oracleInstantClient11.1/opt/IBM/tivoli/netcool/platform/linux2s390/informix_odbc_3.50/lib/esql/opt/IBM/tivoli/netcool/platform/linux2s390/informix_odbc_3.50/lib/cli

If
this looks wrong, please edit the file /etc/ld.so.conf to remove
incorrectentries, and run this script again

Changing
permissions on binaries that need to run as root...

Changing
ownership of ncp_df_ping to rootEnabling setuid on execution
permission on ncp_df_ping

Changing ownership of
ncp_df_sniffer to rootEnabling setuid on execution permission on
ncp_df_sniffer

Changing ownership of ncp_df_trap to
rootEnabling setuid on execution permission on
ncp_df_trap

Changing ownership of ncp_dh_arp to
rootEnabling setuid on execution permission on
ncp_dh_arp

Changing ownership of ncp_dh_ping to
rootEnabling setuid on execution permission on
ncp_dh_ping

Changing ownership of ncp_trapmux to
rootEnabling setuid on execution permission on
ncp_trapmux

Changing ownership of ncp_poller to
rootEnabling setuid on execution permission on
ncp_poller

Changing ownership of fping to rootEnabling
setuid on execution permission on fping

the next generation jre is called libnpjp2.so, you can use following command to find out how many you already have:---------------------------------------yulei@yulei-laptop:~$ find /usr -name libnpjp2.so/usr/lib/j2re1.6-ibm/jre/lib/i386/libnpjp2.so/usr/lib/j2sdk1.6-ibm/jre/lib/i386/libnpjp2.so/usr/lib/jvm/java-6-sun-1.6.0.20/jre/lib/i386/libnpjp2.so------------------------------------------if above command doesn't return anything, it means you don't have any valid JRE installed. please install sun jre using how to install sun jre on ubuntu lucid or install openjdk jre using 'sudo apt-get install openjdk-6-jre'

5.now you can change JRE on the fly with update-alternatives.---------------------------------------------------------yulei@yulei-laptop:~$ sudo update-alternatives --config mozilla-javaplugin.soThere are 2 choices for the alternative mozilla-javaplugin.so (providing /usr/lib/mozilla/plugins/libjavaplugin.so).

Press enter to keep the current choice[*], or type selection number: 2update-alternatives: using /usr/lib/jvm/java-6-sun/jre/lib/i386/libnpjp2.so to provide /usr/lib/mozilla/plugins/libjavaplugin.so (mozilla-javaplugin.so) in manual mode.-------------------------------------------------------------6.restart your java and use following link to check if your java is working:----------------------------------------------test if my jre is working----------------------------------------------

After Part 1 and Part 2, I am finally ready to configure the gateway. after configuring the gateway as I do on Linux, I start the gateway and get error : The evaluation period for this DB2 ODBC driver has expired.

remember that in Part 2 , we find that path to those drivers are wrong, could this be related? I go back to Part 2 and check the path in original registry and find a license file, %OMNIHOME%\platform\win32\IVBM.LIC, after copying this file to %OMNIHOME%\ODBC32v53\Drivers directory, the errors are gone and ODBC gateway is working.

nco_objserv is 32bits application and it doesn't work with samba winbind library on 64 bits Linux. bellow is how I troubleshoot and fix the issue:

I am trying to do PAM authentication for Objectserver on my 64bit Redhat. winbind was configured properly, I can ssh into the box with my AD account, however, after following the Installation Guide and Admin Guide , PAM still doesn't work for me. I guess it is time to give strace a try.

first, run 'strace -f -o /tmp/pam.log <PID>' as root, with the PID of the objectserver.

then try login into the objectserver using nco_sql, fail, then check /tmp/pam.log:

that was stupid as objectserver is a 32 bit application and it won't work with 64 bits libraries, I get following from /var/log/secure:---------------------------------------------------------------May 4 16:48:59 dlvomn01 nco_objserv: PAM [error: /lib/security/pam_winbind.so: wrong ELF class: ELFCLASS64]---------------------------------------------------------------

After adding the drivers into the system registry, it is now time to add a System Datasource entry. I open 'Data Srouce (ODBC)' in Control Panel as a sysadmin, select the System DSN table, click add , select the new DataDirect 5.3 DB2 Wire Protocal driver , click finish and I get a error message "The setup routines for the DataDirect 5.3 DB2 Wire Protocal ODBC driver could not be loaded due to system error code 126" then "could not load the setup or traslator library".

I hate system errors, especially on windows. googling around this time does not give my any hints, what should I do?

I know for a fact that System Data Source are stored in registry, maybe regedit can give me some idea. So I started regedit and search for "DataDirect 5.3", it find something for me like following:

Wait, those directories doesn't look right, I do remember that my ODBC drivers are installed in %OMNIHOME%\ODBC32v53, maybe I should change those PATH and see how it goes.

The problem get resolved after changing the PATH to following, I can finally add a DB2 datasource entry to the System DSN:

I can even do a test and it returned successfully.

Ok, the ODBC thing is now over, I can finally move to next step, configuring the gateway.

This seems to be a product bug in %OMNIHOME%\ODBC32v53\nco_install_drivers.exe.

After installing EIF probe, I can't wait to start it and I get following error:

----------------------------------------------------------------------exec: No such file or directory----------------------------------------------------------------------

After making sure that all required environment variables are set, I start looking into nco_jprobe and find that the error is from the last line:----------------------------------------------------------------------exec $OMNIHOME/probes/$ARCH/nco_p_nonnative java $NCO_JPROBE_JAVA_FLAGS -cp $CLASSPATH $NCO_JPROBE_JAVA_XFLAGS -DOMNIHOME="$OMNIHOME" $PROGRAM "$@"----------------------------------------------------------------------

Best practice for configuring probe/gateway Failback has been changed in OMNIBus 7.3.

Failback is an OMNIBus client component feature that allows client to connect back to Primary objectserver after it recovers.

In pre-7.3 versions, the best practice are to configure Server , ServerBackup and PollServer in probe properties file as following:-------------------------------------------Server:"PRIMARY"ServerBackup:"BACKUP"PollServer:60NetworkTimeout:30-------------------------------------------

The reason for above configuration is explained very well in those emails (I am attaching those because some of those emails were deleted from INUG archives) :

In 7.3 this has been changed due to the introduction of Controlled Failback, you are supposed to use following in probe properties file:

--------------------------------------------Server:"VIRTUAL"ServerBackup:""PollServer:0---------------------------------------------Please be advised that above settings rely on detect_agg_gate_resync_complete,disconnect_all_clients and resync_complete triggers. detailed information can be found here:Configuring Controlled Failback of Clients

Press enter to keep the current choice[*], or type selection number: 1update-alternatives: using /usr/lib/j2re1.5-ibm/jre/bin/libjavaplugin_oji.so to provide /usr/lib/mozilla/plugins/libjavaplugin.so (mozilla-javaplugin.so) in manual mode.

----------------------------------------

3. if you have a JRE that's not listed on the output from step 2, you can use following to find out:

----------------------------------------yulei@yulei-laptop:~$ find /usr -name libjavaplugin_oji.so/usr/lib/j2re1.6-ibm/jre/plugin/i386/ns7/libjavaplugin_oji.so/usr/lib/j2re1.5-ibm/jre/bin/libjavaplugin_oji.so/usr/lib/j2sdk1.6-ibm/jre/plugin/i386/ns7/libjavaplugin_oji.so/usr/lib/jvm/java-6-sun-1.6.0.20/jre/plugin/i386/ns7/libjavaplugin_oji.so/usr/lib/jvm/java-6-sun-1.6.0.20/jre/plugin/i386/ns7-gcc29/libjavaplugin_oji.so-----------------------------------------we see from above that a Sun java is also installed on this server.

After all those hard work, your ITNM is finally installed and configured, you can't wait to start the first disco, but wait, you need to run ncp_mib first before you start ncp.

ncp_mib exists on the TIP server, and it will read all existing MIB, convert and populate the MIB infomation to database, so other SNMP related process can use them, eg ncp_dh_snmp and ncp_poller.

if you don't run ncp_mib before you run your first discovery, all ncp_dh_snmp will not work and you will not have snmp access to any device even if you have the right community string. you will find following errors:

tip: the ncp_mib binary is only installed on the TIP server, you can find it in $ITNMHOME/bin directory, make sure you source $NCHOME/env.sh before you run it, make sure db2 client is installed and configured.

Logging message level set to: warnncp_mib is running with m_DbId = MIBThere are new modules on disk to add to databaseRelational database requires updating. This may take a few minutes. Processing...Committedncp_mib: Terminating normally------------------------------------

ITNM 3.8 FP3 is recently released , it come with a bunch of exciting enhancements, however, the applying process is a bit complicated and sometimes buggy.

There are six post-installation steps and I get stuck on step one, Updating NCIM (Mandatory).

The instruction provided by the FP3 README file is simple, I am supposed to run the updatePrecisionGUIDb.sh against my db2 database. After I run the command I get some errors.

After reading the script, I understand that it uses $NCHOME/precision/scripts/sql/db2/updatePrecisionGUIDb.sql to update the db2 database, but all db2 database command in this file are wrong in syntax :1. db2 command does not end with ';'2. db2 does not like carriage returns or line feeds.Make your commands be on one long line or use "\" for multiple lines.

ok, so causes found, we just need to remove all ending '';' from all db2 commands, and append "\" at the end of each statement of those those multi-line db2 commands,or simply make them one big line.

After this the updatePrecisionGUIDb.sh script runs happily.

To make your life easier, I've attached the modified $NCHOME/precision/scripts/sql/db2/updatePrecisionGUIDb.sql below.