Here I am, preparing our environment for the first (of hopefully many) tester for our upcoming VTL project. So I ended up installing the ISC and Administration Center for Tivoli Storage Manager on a 64bit guest (that is SLES10 for AMD64), just because I forgot to include support for later versions with our current running one. Guess what, na- na na na na. Exactly, didn’t work, the same errors I got while trying it before in a virtual environment. “Portlet is not available.”

So I ended up redoing the whole thing on a 32bit guest and guess what … bada-bing. works … 🤷 I don’t know whether or not that’s a surprising thing .. but what surprises me, is that I do have a working 64bit Integrated Solutions Console and Administration Center running, only difference is that one is running on real hardware.

Anyway, after looking on how the Integrated Solutions Console (that is the Websphere environment - yes yuck) did it’s own start up after boot (you know, I’d like to restart an application if it’s hanging without the need to reboot the whole box), I found this particular line of code:

1
isc6:23:boot:/opt/tivoli/isc/PortalServer/bin/startISC.sh ISC_Portal

And since I was lazy (and it was already Friday afternoon), I ended up writing a small init script which rids you of the need of such a ugly way to start a service.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
#!/bin/sh
#
# /etc/init.d/isc
#
### BEGIN INIT INFO
# Provides:       isc
# Required-Start: network
# Should-Start:
# Required-Stop:  network
# Default-Start:  2 3 5
# Default-Stop:
# Description:    Start the Tivoli Integrated Solutions console
### END INIT INFO

. /etc/sysconfig/isc

BINDIR=/sbin

. /etc/rc.status
rc_reset

case "$1" in
  start)
    echo -n "Starting Tivoli Integrated Solutions Console server"
    startproc -p /var/run/tivoli-isc.pid
      $ISC_INSTALL/PortalServer/bin/startISC.sh
      ISC_Portal 2>&1 >/var/log/tivoli-isc.log
    # I know, this is *real* ugly
    PID=$( tail -n 1 /var/log/tivoli-isc.log | cut -d  -f10 )
    echo $PID >/var/run/tivoli-isc.pid
    rc_status -v
    ;;
  stop)
    echo -n "Stopping Tivoli Integrated Solutions Console server"
    $ISC_INSTALL/PortalServer/bin/stopISC.sh
      ISC_Portal $ISC_ADMIN $ISC_PASSWORD
      2>&1 >/var/log/tivoli-isc.log
    rc_status -v
    ;;
  restart)
    $0 stop
  	$0 start
  	rc_status
  	;;
  status)
    echo -n "Tivoli Integrated Solutions Console server:"
    checkproc -p /var/run/tivoli-isc.pid
      $ISC_INSTALL/AppServer/java/bin/java
    rc_status -v
    ;;
  *)
  	echo "Usage: $0 {start|stop|status|restart}"
    exit 1
  ;;
esac
rc_exit

And the corresponding sysconfig file:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
## Type:     string
## Default:  iscadmin
## Config:   ""
## ServiceRestart:  isc
#
# Adminstration user for the Portal
ISC_ADMIN="iscadmin"

## Type:     string
## Default:  iscadmin
## Config:   ""
## ServiceRestart:  isc
#
# Adminstration user password for the Portal
ISC_PASSWORD="iscadmin"

## Type:     string
## Default:  /opt/ISC/601
## Config:   ""
## ServiceRestart:  isc
#
# Full path to the ISC Portal installation root directory
ISC_INSTALL="/opt/tivoli/isc"

Et voilá, it’s done. Now just a ` chkconfig -a isc’ and it’s gonna startup nice and easy (when it really should) via the normal service startup and not get spawned from the inittab.