La bibliothèque de scripts propose des procédures de script
Jython pour vous aider à automatiser votre environnement. Les scripts de gestion d'application permettent d'installer, de
désinstaller, d'exporter, de démarrer, d'arrêter et de gérer des
applications de niveau métier dans l'environnement.
Pourquoi et quand exécuter cette tâche
La bibliothèque de scripts propose un ensemble de procédures
permettant d'automatiser les fonctions d'administration de serveur
d'applications les plus courantes. Vous pouvez utiliser la bibliothèque de scripts Jython de trois façons.
- Exécutez des scripts de la bibliothèque de scripts Jython en mode interactif avec le noeud wsadmin. Vous pouvez lancer l'outil wsadmin et exécuter des scripts pris séparément inclus dans la bibliothèque de scripts en utilisant la syntaxe suivante :
wsadmin>AdminServerManagement.createApplicationServer("myNode", "myServer", "default")
- Utilisez un éditeur de texte pour combiner plusieurs scripts de la bibliothèque de scripts Jython, comme le montre l'exemple suivant :
#
# My Custom Jython Script - file.py
#
AdminServerManagement.createApplicationServer("myNode", "Server1", "default")
AdminServerManagement.createApplicationServer("myNode", "Server2", "default")
# Use one of them as the first member of a cluster
AdminClusterManagement.createClusterWithFirstMember("myCluster", "APPLICATION_SERVER",
"myNode", "Server1")
# Add a second member to the cluster
AdminClusterManagement.createClusterMember("myCluster", "myNode", "Server3")
# Install an application
AdminApplication.installAppWithClusterOption("DefaultApplication",
"..\installableApps\DefaultApplication.ear", "myCluster")
# Start all servers and applications on the node
AdminServerManagement.startAllServers("myNode")
Enregistrez le script personnalisé et exécutez-le à partir de la ligne de commande, comme le montre la syntaxe suivante :bin>wsadmin -language jython -f path/to/your/jython/file.py
- Utilisez le code de la bibliothèque de scripts Jython comme exemple de syntaxe pour écrire des scripts personnalisés. Chaque exemple de script de la bibliothèque utilise les valeurs recommandées pour l'écriture des scripts wsadmin. Le code de la bibliothèque de scripts se trouve dans le répertoire
racine_serveur_app/scriptLibraries. Dans ce répertoire, les scripts sont organisés en sous-répertoires selon leur fonctionnalité. Par exemple, le sous-répertoire
racine_serveur_app/scriptLibraries/application/V70 contient des procédures de gestion d'application valables
pour la version 7.0 et les versions ultérieures du produit. Le sous-répertoire V70 dans les chemins d'accès aux bibliothèques de scripts ne contient pas forcément des scripts de version 7.0.
Les procédures de niveau métier
de la bibliothèque de scripts se trouvent dans le sous-répertoire
app_server_root/scriptLibraries/application/V70. Le chargement de chaque script de ce répertoire s'effectue automatiquement
lorsque vous lancez l'outil wsadmin.
Pour charger automatiquement vos scripts Jython (*.py)
lors du démarrage de l'outil wsadmin, créez un nouveau sous-répertoire et enregistrez les scripts d'automatisation existants dans le répertoire
app_server_root/scriptLibraries.
Pratiques recommandées: Pour créer des scripts personnalisés à l'aide des procédures de la
bibliothèque de scripts, sauvegardez dans le nouveau sous-répertoire les
scripts modifiés pour éviter d'écraser la bibliothèque. N'éditez pas les procédures de script dans la bibliothèque de scripts.
bprac
Vous pouvez utiliser les scripts AdminBLA.py pour créer de nombreuses combinaisons de fonctions d'administration.
Consultez la documentation des scripts de configuration des applications de niveau métier pour prendre connaissance des descriptions d'arguments et des exemples de syntaxe.
Utilisez les étapes suivantes et la bibliothèque de scripts pour créer une application de niveau métier vide, ajouter des actifs en tant qu'unités de composition et démarrer l'application de niveau métier.
Procédure
- Démarrez l'outil wsadmin.
Cette étape permet de lancer l'outil wsadmin et de se connecter à un
serveur ou d'exécuter l'outil en mode local.
Si vous lancez l'outil
wsadmin, aidez-vous des exemples de mode interactif pour exécuter les scripts.
Lors du lancement de l'outil wsadmin, le système charge tous
les scripts de la bibliothèque de scripts.
- Importez des actifs dans votre configuration.
Les actifs représentent les fichiers binaires d'applications qui contiennent la logique métier exécutée dans l'environnement d'exécution cible et qui traite les demandes des clients. Un actif peut contenir un fichier, une archive de fichiers telle qu'un fichier compressé ZIP ou une archive JAR (Java™ archive) ou encore une archive de fichiers archive, telle qu'un fichier Java EE EAR. Other examples of assets include Enterprise JavaBeans (EJB) JAR files, EAR
files, OSGi bundles, mediation JAR files, shared library JAR files, and non-Java EE contents such as
PHP applications.
Exécutez le script importAsset de la bibliothèque de scripts AdminBLA pour importer des actifs dans le référentiel de configuration du serveur d'applications, tel qu'illustré dans l'exemple suivant :
bin>wsadmin -lang jython -c "AdminBLA.importAsset("asset.zip", "true", "true")"
Vous pouvez aussi utiliser le mode interactif pour exécuter la procédure de script, comme dans l'exemple suivant :
wsadmin>AdminBLA.importAsset("asset.zip", "true", "true")
- Créez une application de niveau métier vide.
Exécutez le script
createEmptyBLA de la bibliothèque de scripts AdminBLA pour créer une nouvelle application de niveau métier, tel qu'illustré dans l'exemple suivant :
bin>wsadmin -lang jython -c "AdminBLA.createEmptyBLA("myBLA", "bla to control transactions")"
Vous pouvez aussi utiliser le mode interactif pour exécuter la procédure de script, comme dans l'exemple suivant :
wsadmin>AdminBLA.createEmptyBLA("myBLA", "bla to control transactions")
- Ajoutez les actifs, en tant qu'unités de composition, à l'application de niveau métier.
Les unités de composition peuvent représenter des actifs déployés, d'autres applications de niveau métier, ou des artefacts externes déployés dans des exécutions autres que WebSphere
Application Server, sans actifs de renfort. Le nombre d'unités de composition contenu dans une application de niveau métier peut varier de zéro à plusieurs. Vous ne pouvez pas ajouter la même unité de composition à plus d'une application de niveau métier, mais vous pouvez utiliser un actif pour créer plusieurs unités de composition.
Exécutez le script addCompUnit
de la bibliothèque de scripts AdminBLA pour ajouter le fichier asset.zip à myBLA en tant qu'unité de composition, tel qu'illustré dans l'exemple suivant :
bin>wsadmin -lang jython -c "AdminBLA.addCompUnit("myBLA", "asset.zip", "default",
"myCompositionUnit", "cu description", "1", "server1", "specname=actplan1")"
Vous pouvez aussi utiliser le mode interactif pour exécuter la procédure de script, comme dans l'exemple suivant :
wsadmin>AdminBLA.addCompUnit("myBLA", "asset.zip", "default", "myCompositionUnit",
"cu description", "1", "server1", "specname=actplan1")
- Sauvegardez les modifications de configuration.
Entrez l'exemple de commande suivante pour sauvegarder les modifications de
configuration :
AdminConfig.save()
- Synchronisez le noeud.
Utilisez le script syncActiveNodes de la bibliothèque de scripts AdminNodeManagement pour synchroniser chaque noeud actif de votre environnement, tel que démontré dans l'exemple suivant :
wsadmin>AdminNodeManagement.syncActiveNodes()
- Démarrez l'application de niveau métier.
Utilisez la commande startBLA de la bibliothèque de scripts AdminBLA
pour démarrer chaque unité de composition de l'application de niveau métier sur les cibles de déploiement, pour lesquelles les unités de composition sont configurées, tel que démontré dans l'exemple suivant :
wsadmin>AdminBLA.startBLA("myBLA")
Résultats
L'application de niveau métier est configurée et démarrée sur la cible de déploiement visée.
Les bibliothèques de scripts wsadmin renvoient la même sortie
que les commandes wsadmin correspondantes. Par exemple, le script AdminServerManagement.listServers()
renvoie une liste de serveurs disponibles. Le script AdminClusterManagement.checkIfClusterExists()
renvoie la valeur true si le cluster existe et false si le cluster n'existe pas. Si la commande ne renvoie pas le résultat attendu, les bibliothèques de scripts renvoient la valeur 1 lorsque l'exécution du script aboutit.
En cas d'échec du script, les bibliothèques de scripts renvoient la valeur -1 et un message d'erreur reprenant l'exception.
Par défaut, l'option failonerror est désactivée dans le système. Pour activer cette option, indiquez
true comme dernier argument de la procédure de script, comme dans l'exemple suivant :
wsadmin>AdminApplication.startApplicationOnCluster("monApplication","myCluster","true")
Que faire ensuite
Utilisez les scripts de configuration des applications de niveau métier pour créer des scripts personnalisés pour automatiser votre environnement. Enregistrez les scripts personnalisés dans un nouveau sous-répertoire du répertoire app_server_root/scriptLibraries.