J'ai réussi à scripter l'ensemble de l'installation ITIM pour que celle-ci s'effectue en 2 à 3 heures sur une plate-forme vierge. Ceci suffit à installer l'ensemble de la stack : DB2, ITDS, WebSphere, IHS, ITDI et l'application ITIM avec ses fix packs. Le tout étant connecté à une base Oracle.
Ce coup ci, j'ai cependant eu quelques soucis.
Hostname avec un underscore
Si votre hostname contient un underscore, WebSphere refuse de s'installer...
J'ai trouvé assez rapidement la réponse à mon souci, mais c'est assez surprenant. Et surtout, cela a eu un effet boule de neige... avec DB2
Hostname et DB2
En effet, l'installation commence par DB2 puis ITDS avant d'attaquer websphere. Ce qui veut dire que le fichier db2nodes.cfg contenait l'ancien hostname. Au premier redémarrage de DB2, la base n'a pas voulu redémarrer :
$ db2start 06/20/2014 17:57:37 0 0 SQL6048N A communication error occurred during START or STOP DATABASE MANAGER processing. SQL1032N No start database manager command was issued. SQLSTATE=57019
En regardant le fichier db2diag.log, on trouve :
2014-06-20-17.54.59.189715+120 E128571E402 LEVEL: Error (OS) PID : 31757 TID : 140599048050464PROC : db2start INSTANCE: idsldap NODE : 000 FUNCTION: DB2 UDB, oper system services, sqloRemoteShell, probe:50 CALLED : OS, -, execvp OSERR: ENOENT (2) MESSAGE : Error invoking remote shell program. DATA #1 : String, 12 bytes /usr/bin/rsh 2014-06-20-17.55.00.251589+120 E128974E604 LEVEL: Error PID : 31691 TID : 140599048050464PROC : db2start INSTANCE: idsldap NODE : 000 FUNCTION: DB2 UDB, oper system services, sqloPdbInitializeRemoteCommand, probe:110 MESSAGE : ZRC=0x810F0012=-2129723374=SQLO_COMM_ERR "Communication error" DATA #1 : String, 204 bytes The remote shell program terminated prematurely. The most likely causes are either that the DB2RSHCMD registry variable is set to an invalid setting, or the remote command program failed to authenticate. DATA #2 : String, 12 bytes /usr/bin/rsh 2014-06-20-17.55.00.273377+120 E129579E500 LEVEL: Error PID : 31691 TID : 140599048050464PROC : db2start INSTANCE: idsldap NODE : 000 FUNCTION: DB2 UDB, oper system services, sqloPdbInitializeRemoteCommand, probe:200 MESSAGE : ZRC=0x810F0012=-2129723374=SQLO_COMM_ERR "Communication error" DATA #1 : String, 12 bytes lnvroiiritim DATA #2 : String, 22 bytes iir_itim.ro.example.com DATA #3 : String, 51 bytes No diagnostics available from remote shell program.
On retrouve bien la trace de notre hostname, avec l'underscore.
Et le fichier db2nodes.cfg contient :
0 iir_itim.ro.example.com 0
Alors que la commande hostname donne maintenant :
# hostname lnvroiiritim
Il faut donc mettre dans le fichier le nom du hostname, tel que donné par la commande :
cat db2nodes.cfg 0 lnvroiiritim 0
Entre temps, j'ai essayé d'installer rsh, ce qui n'a rien donné (timeout sur la commande). Puis j'ai constaté que rsh n'était pas présent sur les autres plates-formes, ce qui m'a conduit vers une autre piste, qui s'est avérée la bonne.