Chapitre 2. Gestion de serveurs d'applications
2.1. Démarrer et stopper JBoss EAP 6
2.1.1. Démarrer JBoss EAP 6
2.1.2. Démarrez JBoss EAP 6 comme un serveur autonome
Cette rubrique couvre toutes les étapes à couvrir pour démarrer JBoss EAP 6 en tant que serveur autonome.
Procédure 2.1. Démarrer le service de plate-forme comme serveur autonome.
Dans Red Hat Enterprise Linux.
Exécuter la commande suivante :EAP_HOME/bin/standalone.sh
Dans Microsoft Windows Server
Exécuter la commande suivante :EAP_HOME\bin\standalone.bat
Option : indiquer les paramètres supplémentaires.
Pour imprimer une liste de paramètres supplémentaires à passer aux scripts de démarrage, utiliser le paramètre-h
.
L'instance de serveur autonome JBoss EAP 6 démarre.
2.1.3. Démarrez JBoss EAP 6 comme domaine géré
Le contrôleur de domaines doit être démarré avant qu'un serveur esclave ne démarre dans des groupes de serveurs du domaine. Utiliser cette procédure sur le contrôleur de domaine pour commencer, puis, sur chaque contrôleur hôte associé et sur chaque hôte associé.
Procédure 2.2. Démarrer le service de plate-forme comme serveur géré
Dans Red Hat Enterprise Linux.
Exécutez la commande :EAP_HOME/bin/domain.sh
Dans Microsoft Windows Server
Exécutez la commande :EAP_HOME\bin\domain.bat
En option : passez des paramètres supplémentaires au script de démarrage.
Pour obtenir une liste de paramètres que vous pourrez passer au script de démarrage, utilisez le paramètre-h
.
L'instance de domaine géré de JBoss EAP 6 démarre.
2.1.4. Configuration d'un nom d'hôte dans un domaine géré
Chaque hôte exécutant dans un domaine géré doit avoir un nom d'hôte unique. Pour faciliter l'administration et permettre l'utilisation de mêmes fichiers de configuration hôte sur plusieurs hôtes, le serveur utilise la priorité suivante pour déterminer le nom d'hôte.
- Si défini, l'attribut de
nom
de l'élémenthôte
qui se trouve dans le fichier de configurationhost.xml
. - La valeur de la propriété système
jboss.host.name
. - La valeur qui suit le caractère (".") dans la propriété système
jboss.qualified.host.name
, ou toute la valeur s'il n'y a pas de point final ("."). - La valeur qui suit le caractère (".") dans la variable d'environnement
HOSTNAME
pour les systèmes d'exploitation basés POSIX, la variable d'environnementCOMPUTERNAME
dans Microsoft Windows, ou toute la valeur s'il n'y a pas de point final (".")
Procédure 2.3. Configuration d'un nom d'hôte avec une propriété système
- Ouvrir le fichier de configuration de l'hôte
host.xml
pour le modifier. - Cherchez l'élément
host
dans le fichier, comme par exemple :<host name="master" xmlns="urn:jboss:domain:1.6">
- S'il est présent, retirez la déclaration d'attribut
. L'élémentname
="HOST_NAME"host
devra ressembler à l'exemple suivant :<host xmlns="urn:jboss:domain:1.6">
- Démarrer le serveur en saisissant
-Djboss.host.name
comme argument de ligne de commande, comme par exemple :-Djboss.host.name=HOST_NAME
Procédure 2.4. Configuration d'un nom d'hôte avec un nom spécifique
- Démarrer l'hôte esclave JBoss EAP à l'aide de la syntaxe suivante :
Par exemple :bin/domain.sh --host-config=HOST_FILE_NAME
bin/domain.sh --host-config=host-slave01.xml
- Lancer l'interface CLI.
- Utiliser la syntaxe suivante pour remplacer le nom d'hôte :
Par exemple :/host=EXISTING_HOST_NAME:write-attribute(name="name",value=UNIQUE_HOST_NAME)
Vous devriez voir apparaître le résultat suivant./host=master:write-attribute(name="name",value="host-slave01")
"outcome" => "success"
Cela modifie l'attributname
de l'hôte dans le fichierhost-slave01.xml
comme suit :<host name="host-slave01" xmlns="urn:jboss:domain:1.6">
- Vous devez charger à nouveau la configuration du serveur avec l'ancien nom d'hôte pour terminer le processus.
Par exemple :reload --host=EXISTING_HOST_NAME
reload --host=master
2.1.5. Créer un domaine géré sur deux machines
Note
- IP1 = adresse IP du contrôleur de domaine (Machine 1)
- IP2 = adresse IP de l'hôte (Machine 2)
Procédure 2.5. Créer un domaine géré sur deux macchines
Sur la machine 1
- Utiliser le script add-user.sh pour ajouter l'utilisateur de management. Par exemple,
slave01
, pour que l'hôte puisse authentifier le contrôleur de domaines. Notez la valeurSECRET_VALUE
de la sortieadd-user
. - Démarrer le domaine par le fichier de configuration
host-master.xml
, qui est préconfiguré pour un contrôleur de domaines exclusif. - Utiliser
-bmanagement=$IP1
pour rendre le contrôleur de domaine visible auprès des autres machines.[$JBOSS_HOME/bin]$ ./domain.sh --host-config=host-master.xml -bmanagement=$IP1
Sur la machine 2
- Mettre à jour le fichier
$JBOSS_HOME/domain/configuration/host-slave.xml
avec les identifiants.<?xml version='1.0' encoding='UTF-8'?> <host xmlns="urn:jboss:domain:1.6" name="slave01"> <!-- add user name here --> <management> <security-realms> <security-realm name="ManagementRealm"> <server-identities> <secret value="$SECRET_VALUE" /> <!-- use secret value from add-user.sh output--> </server-identities> ...
- Démarrer l'hôte.
[$JBOSS_HOME/bin]$ ./domain.sh --host-config=host-slave.xml -Djboss.domain.master.address=$IP1 -b=$IP2
Nous pouvons maintenant gérer le domaine.
via le CLI :[$JBOSS_HOME/bin]$ ./jboss-cli.sh -c --controller=$IP1
via la console web :http://$IP1:9990
Accéder à la page d'index du serveur :http://$IP2:8080/ http://$IP2:8230/
2.1.6. Démarrez JBoss EAP 6 avec une configuration différente
Conditions préalables
- Avant d'utiliser un fichier de configuration alternatif, préparez-le à l'aide de la configuration par défaut comme modèle. Pour un domaine géré, le fichier de configuration doit être placé dans
EAP_HOME/domain/configuration/
. Pour les serveurs autonomes, le fichier de configuration devra être mis dans le répertoireEAP_HOME/standalone/configuration/
.
Note
EAP_HOME/docs/examples/configs/
. Utiliser ces exemples pour activer des fonctionnalités supplémentaires, comme clustering ou l'API XTS de Transactions.
Procédure 2.6. Démarrage de l'instance par une configuration différente
Serveur autonome
Pour un domaine autonome, fournir le nom du fichier de configuration comme option du paramètre--server-config
. Le fichier de configuration doit se trouver dans le répertoireEAP_HOME/standalone/configuration/
, et vous devez indiquer le chemin d'accès du fichier de ce répertoire.Exemple 2.1. Utiliser un fichier de configuration alternatif pour un serveur autonome Red Hat Enterprise Linux.
[user@host bin]$
./standalone.sh --server-config=
standalone-alternate.xml
Cet exemple utilise le fichier de configurationEAP_HOME/standalone/configuration/standalone-alternate.xml
.Exemple 2.2. Utiliser un fichier de configuration alternatif pour un serveur autonome Microsoft Windows.
C:\EAP_HOME\bin>
standalone.bat --server-config=
standalone-alternate.xml
Cet exemple utilise le fichier de configurationEAP_HOME/standalone/configuration/standalone-alternate.xml
.Domaine géré
Pour un domaine géré, fournir le nom du fichier de configuration comme option du paramètre--domain-config
. Le fichier de configuration se trouve dans le répertoireEAP_HOME/domain/configuration/
, et vous devez indiquer le chemin d'accès de ce répertoire.Exemple 2.3. Utilisation d'un fichier de configuration alternatif pour un domaine géré dans Red Hat Enterprise Linux
[user@host bin]$
./domain.sh --domain-config=
domain-alternate.xml
Cet exemple utilise le fichier de configurationEAP_HOME/domain/configuration/domain-alternate.xml
.Exemple 2.4. Utilisation d'un fichier de configuration alternatif pour un domaine géré dans un serveur Microsoft Windows
C:\EAP_HOME\bin>
domain.bat --domain-config=
domain-alternate.xml
Cet exemple utilise le fichier de configurationEAP_HOME\domain\configuration\domain-alternate.xml
.
La plateforme JBoss Enterprise Application Platform est maintenant en cours d'exécution, avec votre fichier de configuration alternatif.
2.1.7. Stopper le serveur JBoss EAP 6
Note
Procédure 2.7. Stopper une instance de JBoss EAP 6
Stopper une instance qui a été démarrée de façon interactive à partir d'une invite de commande.
Appuyez sur Ctrl-C dans le terminal où JBoss EAP 6 exécute.
Procédure 2.8. Stopper une instance qui a démarré en tant que service de système d'exploitation.
Suivant votre système d'exploitation, utiliser une des procédures suivantes :Red Hat Enterprise Linux
Dans Red Hat Enterprise Linux, si vous avez écrit un script de service, utiliser sa fonctionstop
. Cela devra être inscrit dans le script. Ensuite, vous pourrez utiliserservice scriptname stop
, avec scriptname comme nom de script.Microsoft Windows Server
Dans Microsoft Windows, utiliser la commandenet service
, ou bien faites cesser le service à partir de l'applet Services qui se trouve dans le panneau de contrôle.
Procédure 2.9. Stopper une instance qui exécute en arrière-plan (Red Hat Enterprise Linux)
- Chercher l'ID de processus (PID) du processus :
Si une seule instance est en cours d'exécution (mode autonome)
N'importe laquelle des commandes suivantes renverront le PID d'une simple instance de JBoss EAP 6 :pidof java
jps
(La commandejps
retournera un ID des deux processus ; un pourjboss-modules.jar
et un pour jps lui-même. Utiliser l'ID dejboss-modules.jar
pour stopper l'instance EAP)
Si plusieurs instances EAP sont en cours d'exécution (mode de domaine)
Identifier le process qui convient pour y mettre un terme si plus d'une instance d'EAP en cours d'exécution nécessitent l'utilisation de commandes plus élaborées.- La commande
jps
peut être utilisée en mode détaillé (verbose) pour qu'elle puisse fournir davantage d'informations sur les processus java qu'elle trouve.Vous trouverez ci-dessous sous une sortie abrégée d'une commande détailléejps
qui identifie les différents processus d'EAP en cours par PID et rôle :$ jps -v 12155 jboss-modules.jar -D[Server:server-one] -XX:PermSize=256m -XX:MaxPermSize=256m -Xms1303m ... 12196 jboss-modules.jar -D[Server:server-two] -XX:PermSize=256m -XX:MaxPermSize=256m -Xms1303m ... 12096 jboss-modules.jar -D[Host Controller] -Xms64m -Xmx512m -XX:MaxPermSize=256m ... 11872 Main -Xms128m -Xmx750m -XX:MaxPermSize=350m -XX:ReservedCodeCacheSize=96m -XX:+UseCodeCacheFlushing ... 11248 jboss-modules.jar -D[Standalone] -XX:+UseCompressedOops -verbose:gc ... 12892 Jps ... 12080 jboss-modules.jar -D[Process Controller] -Xms64m -Xmx512m -XX:MaxPermSize=256m ...
- La commande
ps aux
peut également être utilisée pour renvoyer des informations sur les instances multiples EAP.Vous trouverez ci-dessous sous une sortie abrégée d'une commande détailléeps aux
qui identifie les différents processus d'EAP en cours par PID et rôle :$ ps aux | grep java username 12080 0.1 0.9 3606588 36772 pts/0 Sl+ 10:09 0:01 /path/to/java -D[Process Controller] -server -Xms128m -Xmx128m -XX:MaxPermSize=256m ... username 12096 1.0 4.1 3741304 158452 pts/0 Sl+ 10:09 0:13 /path/to/java -D[Host Controller] -Xms128m -Xmx128m -XX:MaxPermSize=256m ... username 12155 1.7 8.9 4741800 344224 pts/0 Sl+ 10:09 0:22 /path/to/java -D[Server:server-one] -XX:PermSize=256m -XX:MaxPermSize=256m -Xms1000m -Xmx1000m -server - ... username 12196 1.8 9.4 4739612 364436 pts/0 Sl+ 10:09 0:22 /path/to/java -D[Server:server-two] -XX:PermSize=256m -XX:MaxPermSize=256m -Xms1000m -Xmx1000m -server ...
Dans les exemples ci-dessus, les processus Process Controller sont des processus à stopper pour stopper tout le domaine.L'utilitairegrep
peut être utilisé avec une de ces commandes pour identifier le Process Controller :jps -v | grep "Process Controller"
ps aux | grep "Process Controller"
- Envoyer le signal
TERM
au processus en exécutantkill PID
, quand PID est l'ID de processus identifié par une des commandes ci-dessus.
Chacune de ces solutions ferme la plate-forme JBoss EAP 6 nettement, ce qui fait qu'aucune donnée n'est perdue.
2.1.8. Référence aux variables et arguments à passer à l'exécution du serveur
standalone.xml
, domain.xml
et host.xml
. Cela peut comprendre le démarrage du serveur par un ensemble de liaisons de sockets différent ou une configuration secondaire. Vous pourrez accéder à une liste des paramètres disponibles en passant la variable d'assistance au démarrage.
Exemple 2.5.
-h
ou --help
>. Les résultats de cette variable d'assistance sont expliqués dans le tableau ci-dessous.
[localhost bin]$ standalone.sh -h
[localhost bin]$ domain.sh -h
Argument ou Variable | Mode | Description |
---|---|---|
--admin-only | Autonome | Définir le type d'exécution du serveur à ADMIN_ONLY . Cela le fera ouvrir les interfaces administratives et il pourra ainsi accepter les ordres de gestion, mais il ne pourra pas démarrer d'autres services de runtime ou accepter les demandes de l'utilisateur final. |
--admin-only | Domaine | Définir le type d'exécution du contrôleur hôte à ADMIN_ONLY , ce qui le fera ouvrir les interfaces administratives et il pourra ainsi accepter les ordres de gestion, mais il ne pourra pas démarrer d'autres serveurs ou, si ce contrôleur hôte est le master du domaine, il pourra accepter les demandes des contrôleurs hôte esclaves. |
-b <value> , -b=<value> | Autonome, Serveur | Définir la propriété système jboss.bind.address à la valeur donnée. |
-b<interface>=<value> | Autonome, Serveur | Définir la propriété système jboss.bind.address.<interface> à la valeur donnée. |
--backup | Domaine | Conserver une copie de la configuration de domaine persistante même si cet hôte n'est pas le contrôleur de domaines. |
-c <config> , -c=<config> | Autonome | Nommer le fichier de configuration du serveur à utiliser. La valeur par défaut est standalone.xml . |
-c <config> , -c=<config> | Domaine | Nom du fichier de configuration de serveur à utiliser. La valeur par défaut est domain.xml . |
--cached-dc | Domaine | Si l'hôte n'est pas le contrôleur de domaine et ne peut pas contacter le contrôleur de domaine au démarrage, puisque le processus de démarrage (booting) utilise une copie de la configuration de domaine mise en cache localement. |
--debug [<port>] | Autonome | Active le mode de débogage par un argument en option qui indique le port. Ne fonctionne que si le script de lancement le supporte. |
-D<name>[=<value>] | Autonome, Serveur | Définit une propriété système. |
--domain-config=<config> | Domaine | Nom du fichier de configuration de serveur à utiliser. La valeur par défaut est domain.xml . |
-h , --help | Autonome, Serveur | Affiche le message d'assistance et sortir. |
--host-config=<config> | Domaine | Nom du fichier de configuration hôte à utiliser. La valeur par défaut est host.xml . |
--interprocess-hc-address=<address> | Domaine | Adresse à laquelle le contrôleur hôte doit écouter la communication en provenance du contrôleur de processus. |
--interprocess-hc-port=<port> | Domaine | Port sur lequel le contrôleur hôte doit écouter la communication en provenance du contrôleur de processus. |
--master-address=<address> | Domaine | Définit la propriété système jboss.domain.master.address à la valeur donnée. Dans une configuration de contrôleur hôte esclave par défaut, c'est utilisé pour configurer l'adresse du contrôleur hôte maître. |
--master-port=<port> | Domaine | Définit la propriété système jboss.domain.master.port à la valeur donnée. Dans une configuration de contrôleur hôte esclave par défaut, c'est utilisé pour configurer le port utilisé pour la communication de gestion native du contrôleur hôte maître. |
--read-only-server-config=<config> | Autonome | Nom du fichier de configuration du serveur à utiliser. Cela diffère de --server-config et -c en ce que le fichier d'origine n'est jamais écrasé. |
--read-only-domain-config=<config> | Domaine | Nom du fichier de configuration du domaine à utiliser. Cela diffère de --domain-config et de -c en ce que le fichier de départ n'est jamais écrasé. |
--read-only-host-config=<config> | Domaine | Nom du fichier de configuration de l'hôte à utiliser. Cela diffère de --host-config en ce que le fichier de départ n'est jamais écrasé. |
-P <url> , -P=<url> , --properties=<url> | Autonome, Serveur | Télécharge les propriétés système de l'URL donné. |
--pc-address=<address> | Domaine | Adresse à laquelle le contrôleur de processus doit écouter les communications en provenance des processus qu'il contrôle. |
--pc-port=<port> | Domaine | Port sur lequel le contrôleur de processus doit écouter les communications en provenance des processus qu'il contrôle. |
-S<name>[=<value>] | Autonome | Définit une propriété de sécurité. |
--server-config=<config> | Autonome | Nommer le fichier de configuration du serveur à utiliser. La valeur par défaut est standalone.xml . |
-u <value> , -u=<value> | Autonome, Serveur | Définit la propriété système jboss.default.multicast.address à la valeur donnée. |
-v , -V , --version | Autonome, Serveur | Affiche la version du serveur d'application et sortie. |