Recent Posts

February 2012

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



– 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 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) nchost01 nchost02
[5] uncompress java from the .tar file, it is found in the

unzip /home/netcool/core/COI/PackageSteps/jre160IBMr7/FILES/
[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


If your install goes wrong remove these four hidden files (file / sym link) and run install.bin -i console again
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


[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 :
(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*.
        Primary: nchost01 4100
        Primary: nchost02 4150
        Primary: nchost02 4105
        Primary: nchost01 4100
        Backup: nchost02 4150
        Primary: nchost01 4101
        Primary: nchost02 4151
        Primary: nchost01 4102
        Primary: nchost02 4152
        Primary: nchost01 4103
        Primary: nchost02 4153
        Primary: nchost01 4104
        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.

[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


DELETE FROM master.servergroups;
-- INSERT INTO master.servergroups VALUES('DIS_1',1,1);
-- INSERT INTO master.servergroups VALUES('DIS_2',1,1);
-- go


DELETE FROM master.servergroups;
INSERT INTO master.servergroups VALUES('DIS_1',1,1);
INSERT INTO master.servergroups VALUES('DIS_2',1,1);

* * * NCHOST1 * * *

[1] setup the different servers

cp $NCHOME/omnibus/extensions/multitier/gateway/ $NCHOME/omnibus/etc/.
cp $NCHOME/omnibus/extensions/multitier/gateway/C_TO_A_GATE_P_1.* $NCHOME/omnibus/etc/.
cp $NCHOME/omnibus/extensions/multitier/gateway/ $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/ $NCHOME/omnibus/etc/.
cp $NCHOME/omnibus/extensions/multitier/gateway/C_TO_A_GATE_B_1.* $NCHOME/omnibus/etc/.
cp $NCHOME/omnibus/extensions/multitier/gateway/ $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 &

You’re smart, you’re special, and you’re beautiful

About six months ago we moved my daughter into a “big girl” bed. And about then, when it would get late and time for “nigh nigh”, I started a ritual with her.

She would lay down in her bed, we would say some prayers, and then I would say.

“Just remember, you’re smart, you’re special, and you’re beautiful.”

And then I would list everyone in her close family that loves her.

“Your Daddy loves you
Your Mommy loves you
Your Jude brother loves you
Papa and Grandma Folkins love you
Papa and Grandma Bogen love you
Uncle Sean loves you
Auntie Anna loves you
And cousin Elena loves you”

I never really had a plan, I just remember thinking that my daughter needs to know that she is amazing. And she needs to remember all the people who will come running if she calls.

So today I went home for lunch. And it was right around her nap time. Without thinking, I volunteered to put her to bed.

She laid down, and then I said

“Now just remember, you’re-”

But before I could finish, and still with a binky partially in her mouth, she said

“-yur smarr, yur spesh-al, and yur beu-i-ful”

Then she gave me a big hug and smiled.

I melted.

You could wreck my car, steal my laptop, or even lay me off, but you would not be able to ruin my day today. My daughter knows she is valuable.