Configuration connexion VisualVm
L'utilisation de VisualVm nécessite la mise en place de connexion sur les process à auditer. Cet article présente la mise en place de ces configurations.
Votre avis
Nobody voted on this yet
|
|
Local
Dans cet exemple, la JVM auditée est celle montée par l'application en elle même. Par défaut, l'application est disponible dans la partie Local de l'arbre de navigation. Il suffit de double cliquer sur l'icône pour ouvrir l'audit de l'instance:

Remote
Le premier mode d'audit à distance étudie, utilise la fonctionnalité de jmxremote sur une JDK. Pour cela, il faut l'activer ce mode sur l'instance à auditer. Dans cet exemple, l'instance auditée correspond à un serveur Tomcat hébergé sur une serveur Ubuntu.
Configuration JmxRemote
Il faut modifier le script de démarrage de Tomcat ouvrir le port d'écoute. Par défaut, les arguments suivants de la machine virtuelle suffisent:
-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=7091 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false
Avec ces arguments, un port d'écoute est ouvert sur le numéro 7091 et ne nécessitant pas de compte d'authentification.
Cependant, cela n'a pas été suffisant sur le serveur Ubuntu. Un article sur le support JAVA indique que l'ajout suivant est nécessaire:
-Djava.rmi.server.hostname=192.168.XXX.XXX
Pour la mise en place de ces arguments sous Tomcat, le fichier setenv.sh
est modifié,, comme décrit ici, permettant ainsi de ne pas impacter les scripts standards.
export CATALINA_OPTS="-Dappserver.home=$CATALINA_HOME -Dappserver.base=$CATALINA_BASE -Xms1024m -Xmx1024m
-Dorg.apache.jasper.runtime.BodyContentImpl.LIMIT_BUFFER=true -XX:MaxPermSize=256m -Dcom.sun.management.jmxremote
-Dcom.sun.management.jmxremote.port=7091 -Dcom.sun.management.jmxremote.authenticate=false
-Dcom.sun.management.jmxremote.ssl=false -Djava.rmi.server.hostname=192.168.XXX.XXX"
Connexion JmxRemote
Pour ajouter une connexion, il est nécessaire de déclarer une nouvelle machine distante. Pour cela, il faut cliquer sur l'élément Remote
dans l'arbre de navigation et cliquer sur le sous menu Add Remote Host...

Une nouvelle fenêtre apparaît dans laquelle on peut indiquer le nom de la machine ou son adresse IP, ainsi qu'un nom pour l'affichage:

Une fois la machine déclarée, il faut ajouter la connexion JMX.

La configuration nécessite le nom ou l'IP de la machine, ainsi que le numéro de port ouvert. Celui ci correspond à la configuration com.sun.management.jmxremote.port
en variable d'environnement de JVM.

Une fois déclarée, il suffit de double cliquer sur l'icône de la connexion:
