mercredi 8 septembre 2010


Créer des domaines Weblogic et customiser les scriptes de démarrage des instances du domaine est fastidieux si c’est une tâche récurrente, d’autant plus que la version 11G ne gère pas par défaut le fichier boot.properties pour masquer les login/password.

Une solution est de créer deux scriptes de démarrage génériques (un pour l’administration l’autre pour les managées) et un fichier boot.properties à copier dans le répertoire du domaine crée. Ces scriptes génériques doivent surcharger ou ajouter des paramétrages spécifiques aux scriptes du domaine via les variables suivantes :

  • EXT_PRE_CLASSPATH
  • EXT_POST_CLASSPATH
  • EXT_PRE_PATH
  • EXT_POST_PATH
  • USER_MEM_ARGS

La convention prise dans cet exemple est de nommer les scriptes avec en préfix start/stop, puis le nom de l’instance. Pour ne pas avoir à modifier leur contenu, on ajoutera dans le nom du fichier les éléments nécessaires pour se connecter à l’instance d’administration (dans le cas des managées)

[start/stop].admin.cmd
[start/stop]....cmd

Dans le scripte générique sera placée la variable weblogic.system.BootIdentityFile qui permet de prendre en charge le fichier boot.properties.


    SCRIPTES



    Les scriptes sont les suivants


     Instance d’administration 




     (Le nom de l’instance d’administration n’ayant pas d’importance)
     (à compléter avec le stop)

     [start/stop].admin.cmd



@ECHO OFF

@REM WARNING: This file is created by the Configuration Wizard.
@REM Any changes to this script may be lost when adding extensions to this configuration.

SETLOCAL

@rem set DOMAIN_HOME=D:\PROJETS\RECURANT\dev_domain
@set PWD=%~dp0
@set DOMAIN_HOME=%PWD%
@set USER_MEM_ARGS=%USER_MEM_ARGS% -Dweblogic.system.BootIdentityFile=%DOMAIN_HOME%boot.properties

@set EXT_PRE_CLASSPATH=
@set EXT_POST_CLASSPATH=
@set EXT_PRE_PATH=
@set EXT_POST_PATH=

@rem mode  : @set USER_MEM_ARGS=%USER_MEM_ARGS% -Xms256m -Xmx512m -Xdebug -Xrunjdwp:transport=dt_socket,address=8100,server=y,suspend=n
@rem mode  : @set USER_MEM_ARGS=%USER_MEM_ARGS% -Xms128m -Xmx256m
@rem mode  : @set USER_MEM_ARGS=%USER_MEM_ARGS% -XXsetGC:genconcon -Xms128m -Xmx256m

@set USER_MEM_ARGS=%USER_MEM_ARGS% -Xms256m -Xmx512m

call "startWebLogic.cmd" %*

ENDLOCAL



Instance managée 



(à compléter avec le stop)


[start/stop]....cmd


@echo OFF

@rem version nom long : DIRNAME
@rem set PWD="%~dp0"
@rem version nom long avec repertoire : DIRNAME
for %%i in (%0) do set PWD=%%~di%%~pi

@set DOMAIN_HOME=%PWD%
@set USER_MEM_ARGS=%USER_MEM_ARGS% -Dweblogic.system.BootIdentityFile=%DOMAIN_HOME%boot.properties

@recherche du lecteur
set LECTEUR=%DOMAIN_HOME:~0,2%

@rem extraction du numero d'instance avec la convention start..cmd correspondant au démarrage de l'instance
@rem version local :
@rem set CMD_NAME=%0
@rem version nom long
for %%i in (%0) do set CMD_NAME=%%~ni%%~xi

@rem  name : managed.num.cmd
for /f "tokens=1,2,3,4 delims=/. " %%a in ("%CMD_NAME%") do set action=%%a&set instance=%%b&set admin=%%c&set port=%%d

@set EXT_PRE_CLASSPATH=
@set EXT_POST_CLASSPATH=
@set EXT_PRE_PATH=
@set EXT_POST_PATH=
@rem mode debug : @set USER_MEM_ARGS=%USER_MEM_ARGS% -Xms512m -Xmx512m -Xdebug -Xrunjdwp:transport=dt_socket,address=8100,server=y,suspend=n
@rem mode soft : @set USER_MEM_ARGS=%USER_MEM_ARGS% -Xms256m -Xmx256m
@set USER_MEM_ARGS=%USER_MEM_ARGS% -XXsetGC:genconcon -Xms128m -Xmx256m

%LECTEUR%
cd %DOMAIN_HOME%/bin

dir

if "%action%"=="start" (
startManagedWebLogic.cmd %instance% t3://%admin%:%port%
)

if "%action%"=="stop" (
@echo "ON STOP"
)



Boot.properties



boot.properties



username=weblogic
password=weblogic1



   Exemple 





    Créer un domaine (login=weblogic / password=weblogic1) cluster avec une instance d’administration et deux instances managées




Sous le répertoire du domaine, copier les fichiers présentés ci-dessous en donnant les noms suivants :

  • start.admin.cmd
  • start.managed1.localhost.7001.cmd
  • start.managed2.localhost.7001.cmd
  • boot.properties

Ouvrir une ligne de commande DOS pour lancer les scriptes en se positionnant sous le répertoire du domaine (on pourra utiliser l’utilitaire Console2 qui permet d’ajouter des onglets aux lignes de commande DOS).







AUTEUR

Ma photo
Carrières Sur Sein, Yvelines, France
Consultant Oracle (Ancien consultant BEA depuis 2001), je m’occupe des expertises sur les produits Oracle : SOCLE (Weblogic, Coherence, JRockit) SOA (Service Bus, SOA Suite, BPM)
MON CV

LABEL 3D

Blogumulus by Roy Tanck and Amanda Fazani

LABEL CLOUD

MAP

Locations of visitors to this page

AUTRES BLOG

LIVRES

MEMBRES