How To: Install Netcool Omnibus Using The Multitiered Architecture On Redhat 6.2 (Part 1)

*** JARED’S NETCOOL README ****

NOTES

– ldd and strace are your friends when tracking down libs, conf files, and mother trucking logs

– NETCOOL only runs on i686/i386 libs, you were warned (UPDATE: Jacob Steinberger on the netcoolusers.org list serv wanted me to point out that netcool runs on SunOs)

*** NETCOOL ***

[1] create netcool user as root

[2] login as netcool (do not su -, don’t ask me why, ibm’s docs say so)

[3] create dir `~/core`, transfer renamed tar to `core` and unpack (from ibm’s site CI3JDML, i renamed it for context)

tar xvf ~/core/CI3JDML_tivoli_netcool_omnibus_v731_core.tar
[4] vi /etc/hosts (*hack for now)

192.168.1.101 nchost01
192.168.1.102 nchost02
[5] uncompress java from the .tar file, it is found in the

unzip /home/netcool/core/COI/PackageSteps/jre160IBMr7/FILES/jre160IBMr7-Linux32-1.6.700.0.zip
[6] move jre to ~ and cleanup

mv  /home/netcool/core/COI/PackageSteps/jre160IBMr7/FILES/platform/linux2x86/jre_1.6.7 ~/
rm -Rf /home/netcool/core/COI/PackageSteps/jre160IBMr7/FILES/platform
[7] environment variables (add to .bashrc)

export NCHOME=/home/netcool/IBM/tivoli/netcool
export OMNIHOME=$NCHOME/omnibus
export PATH=$PATH:$NCHOME/omnibus/bin:$NCHOME/omnibus/probes:/home/netcool/jre_1.6.7/jre/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/netcool/IBM/tivoli/netcool/platform/linux2x86/lib
export JAVADIR=/home/netcool/jre_1.6.7/
[8] install the needed packages

yum install libXp-1.0.0-8 openmotif22-2.2.3-18 pam-1.1.1-4 pam.i686 libstdc++-4.4.4-13 libXft libXtst libgcc-4.4.4-13 libstdc++-4.4.6-3.el6.i686 libXpm-3.5.8 compat-libstdc++-296-2.96-144 compat-libstdc++-33-3.2.3-69 compat-libstdc++-33-3.2.3-47.3 compat-libstdc++-33.i686 libXmu.i686 openmotif.i686 openmotif22.i686
[9] potentially remove libXm 64bit

[netcool@nchost01 ~]$ yum remove libXmu.x86_64

*BEGIN PROTIP

If your install goes wrong remove these four hidden files (file / sym link) and run install.bin -i console again
OR
If you want to blow away the ~/IBM/tivoli/netcool dir and start over from step 10, delete these files

 
drwxrwxr-x. 20 netcool netcool 4.0K Feb 15 10:21 .acsi_nchost01
lrwxrwxrwx.  1 netcool netcool   28 Feb 13 06:33 .acsi_netcool -> /home/netcool/.acsi_nchost01
drwxrwxr-x. 3 netcool netcool  20K Feb 13 06:37 .coi
-rwxrwxrwx. 1 netcool netcool 2.5K Feb 13 06:37 .com.zerog.registry.xml

*END PROTIP

[10] install core, use standard options, BUT install to custom dir /home/netcool/IBM/tivoli/netcool

 
/home/netcool/core/install.bin -i console
 
===============================================================================
Select Installation Directory
-----------------------------
 
Create an installation directory :
  /opt/IBM/tivoli/netcool
 
ENTER AN ABSOLUTE PATH, OR PRESS <ENTER> TO ACCEPT THE DEFAULT DIRECTORY
 
(DEFAULT: /opt/IBM/tivoli/netcool): /home/netcool/IBM/tivoli/netcool
[11] test to see if core and db installed/created succesfully

 
[netcool@nchost01 ~]$  /home/netcool/IBM/tivoli/netcool/omnibus/bin/nco_objserv -version
 
Netcool/OMNIbus Object Server - Version 7.3.1
 
(C) Copyright IBM Corp. 1994, 2007
 
Code Revision: 5.21.27
 
Library Revisions:
	libnetcool: 5.21.27
	libnoam: 5.21.27
	libnsecurity: 5.21.27
	libnipc: 5.21.27
	libnstk: 5.21.27
	libniduc_server: 5.21.27
	libnregion: 5.21.27
	libnmemstore: 5.21.27
	libncmd: 5.21.27
	libnstore: 5.21.27
	libnproc: 5.21.27
	libnauto: 5.21.27
	libnobjserv: 5.21.27
	network::ipv6: 5.21.27
 
Compilation Date:	Wed Jan 12 19:13:14 GMT 2011
Compilation Machine:	Linux 2.4.21-47.0.1.ELsmp i686
Compilation System:	rhat3es-build1
 
Code Generation: PRODUCTION
 
Registered debug facilities:
	nco_objserv_profiler_timings[ON], signal[ON], thread[ON], cmd[ON], 
	region[ON], objserv[ON], nco_objserv_profiler[ON], ipc_s_rpc[ON], 
	memstore[ON], nco_objserv[ON], clock[ON], timer[ON], sec_author[ON], 
	prop_mgr[ON], cb_mgr[ON], arg_mgr[ON], ipc_s_res[ON], noam[ON], 
	nco_objserv_vvtr[ON], ipc_s_not[ON], store[ON], auto[ON], proc[ON], 
	region_mutation[ON], sec_audit[ON], module[ON], ipc_s_ini[ON], 
	ipc_s_mut[ON], ipc_s_evt[ON]
[netcool@nchost01 ~]$
[12] copy/paste following into

 
vi /home/netcool/IBM/tivoli/netcool/etc/omni.dat
 
#
# omni.dat file as prototype for interfaces file
#
# Ident: $Id: omni.dat 1.5 1999/07/13 09:34:20 chris Development $
#
# Ibm in their wisdom thought it prudent to make
# P = Primary
# B = Backup
# (From their documents) Important: Ensure that you use these naming conventions for your ObjectServers and ObjectServer Gateways. 
# The SQL import files and gateway configuration files, which are supplied for setting up the architecture,
# rely on compliance with these naming conventions. In particular, ensure that the primary ObjectServer names 
# end in _P* and the backup ObjectServer names end in _B*.
 
 
[AGG_P]
{
        Primary: nchost01 4100
}
 
[AGG_B]
{
        Primary: nchost02 4150
}
 
[AGG_GATE]
{
        Primary: nchost02 4105
}
 
[AGG_V]
{
        Primary: nchost01 4100
        Backup: nchost02 4150
}
 
[COL_P_1]
{
        Primary: nchost01 4101
}
 
[COL_B_1]
{
        Primary: nchost02 4151
}
 
[DIS_1]
{
        Primary: nchost01 4102
}
 
[DIS_2]
{
        Primary: nchost02 4152
}
 
[C_TO_A_GATE_P_1]
{
        Primary: nchost01 4103
}
 
[C_TO_A_GATE_B_1]
{
        Primary: nchost02 4153
}
 
[A_TO_D_GATE_1]
{
        Primary: nchost01 4104
}
 
[A_TO_D_GATE_2]
{
        Primary: nchost02 4154
}
[14] Generate the interfaces file for Tivoli Netcool/OMNIbus communications by running the following command: // The interfaces file $NCHOME/etc/interfaces.arch is created, where arch represents the operating system name.

 
$NCHOME/bin/nco_igen
[15] we need to enable load balancing so copy default aggregation file and chmod to write perms

 
cp $NCHOME/omnibus/extensions/multitier/objectserver/aggregation.sql $NCHOME/omnibus/extensions/multitier/objectserver/aggregation_load_balancing.sql
chmod 755  $NCHOME/omnibus/extensions/multitier/objectserver/aggregation_load_balancing.sql
[16] uncomment these lines in the aggregation file and write/quit

 
vi $NCHOME/omnibus/extensions/multitier/objectserver/aggregation_load_balancing.sql

FROM:

 
------------------------------------------------------------------------------
-- INITIALISE LOAD-BALANCING FOR THE DISPLAY OBJECTSERVERS
-- NOT ENABLED BY DEFAULT
DELETE FROM master.servergroups;
go
-- INSERT INTO master.servergroups VALUES('DIS_1',1,1);
-- INSERT INTO master.servergroups VALUES('DIS_2',1,1);
-- go

TO:

 
------------------------------------------------------------------------------
-- INITIALISE LOAD-BALANCING FOR THE DISPLAY OBJECTSERVERS
-- NOT ENABLED BY DEFAULT
DELETE FROM master.servergroups;
go
INSERT INTO master.servergroups VALUES('DIS_1',1,1);
INSERT INTO master.servergroups VALUES('DIS_2',1,1);
go

* * * NCHOST1 * * *

[1] setup the different servers

cp $NCHOME/omnibus/extensions/multitier/gateway/C_TO_A_GATE.map $NCHOME/omnibus/etc/.
cp $NCHOME/omnibus/extensions/multitier/gateway/C_TO_A_GATE_P_1.* $NCHOME/omnibus/etc/.
cp $NCHOME/omnibus/extensions/multitier/gateway/A_TO_D_GATE.map $NCHOME/omnibus/etc/.
cp $NCHOME/omnibus/extensions/multitier/gateway/A_TO_D_GATE.tblrep.def $NCHOME/omnibus/etc/.
cp $NCHOME/omnibus/extensions/multitier/gateway/A_TO_D_GATE_1.props $NCHOME/omnibus/etc/.
$NCHOME/omnibus/bin/nco_dbinit -server AGG_P -customconfigfile $NCHOME/omnibus/extensions/multitier/objectserver/aggregation_load_balancing.sql
$NCHOME/omnibus/bin/nco_dbinit -server COL_P_1 -customconfigfile $NCHOME/omnibus/extensions/multitier/objectserver/collection.sql
$NCHOME/omnibus/bin/nco_dbinit -server DIS_1 -desktopserver -dsddualwrite -dsdprimary AGG_V -customconfigfile $NCHOME/omnibus/extensions/multitier/objectserver/display.sql
[2] start the recently setup servers

$NCHOME/omnibus/bin/nco_objserv -name AGG_P &
$NCHOME/omnibus/bin/nco_objserv -name COL_P_1 &
$NCHOME/omnibus/bin/nco_objserv -name DIS_1 &
$NCHOME/omnibus/bin/nco_g_objserv_uni -propsfile $NCHOME/omnibus/etc/C_TO_A_GATE_P_1.props &
$NCHOME/omnibus/bin/nco_g_objserv_uni -propsfile $NCHOME/omnibus/etc/A_TO_D_GATE_1.props &

* * * NCHOST2 * * *

[1] setup the different servers

cp $NCHOME/omnibus/extensions/multitier/gateway/AGG_GATE.* $NCHOME/omnibus/etc/.
cp $NCHOME/omnibus/extensions/multitier/gateway/C_TO_A_GATE.map $NCHOME/omnibus/etc/.
cp $NCHOME/omnibus/extensions/multitier/gateway/C_TO_A_GATE_B_1.* $NCHOME/omnibus/etc/.
cp $NCHOME/omnibus/extensions/multitier/gateway/A_TO_D_GATE.map $NCHOME/omnibus/etc/.
cp $NCHOME/omnibus/extensions/multitier/gateway/A_TO_D_GATE.tblrep.def $NCHOME/omnibus/etc/.
cp $NCHOME/omnibus/extensions/multitier/gateway/A_TO_D_GATE_2.props $NCHOME/omnibus/etc/.
 
$NCHOME/omnibus/bin/nco_dbinit -server AGG_B -customconfigfile $NCHOME/omnibus/extensions/multitier/objectserver/aggregation_load_balancing.sql
$NCHOME/omnibus/bin/nco_dbinit -server COL_B_1 -customconfigfile $NCHOME/omnibus/extensions/multitier/objectserver/collection.sql
$NCHOME/omnibus/bin/nco_dbinit -server DIS_2 -desktopserver -dsddualwrite -dsdprimary AGG_V -customconfigfile $NCHOME/omnibus/extensions/multitier/objectserver/display.sql
[2] start the recently setup servers

$NCHOME/omnibus/bin/nco_objserv -name AGG_B &
$NCHOME/omnibus/bin/nco_objserv -name COL_B_1 &
$NCHOME/omnibus/bin/nco_objserv -name DIS_2 &
$NCHOME/omnibus/bin/nco_g_objserv_bi -propsfile $NCHOME/omnibus/etc/AGG_GATE.props &
$NCHOME/omnibus/bin/nco_g_objserv_uni -propsfile $NCHOME/omnibus/etc/C_TO_A_GATE_B_1.props &
$NCHOME/omnibus/bin/nco_g_objserv_uni -propsfile $NCHOME/omnibus/etc/A_TO_D_GATE_2.props &