Monitorización de JMX remoto

El Agente de monitorización de JMX remoto se conecta a un servidor de JMX configurado.La monitorización de JMX remoto informa sobre las métricas de JMX e incluye estas capacidades adicionales:
  • Monitoriza varios servidores de JMX remotos.
  • Proporciona una conexión de JMX segura.
  • Proporciona valores y nombres configurables para las métricas de JMX para beans gestionados específicos (MBeans).
Este artículo incluye los temas siguientes:
2
Descarga y extracción del Agente de la infraestructura
Después de obtener acceso a
DX APM
, descargue y extraiga la monitorización de JMX remoto.
Siga estos pasos
:
  1. Inicie sesión en
    DX SaaS
    .
  2. Seleccione
    Abrir
    en el cuadro
    Application Performance Management
    . Aparecerá la página principal de Application Performance Management.
  3. Descargue el paquete del Agente de la infraestructura que contiene la monitorización de JMX remoto.
    1. En el centro superior de la página de Application Performance Management, seleccione
      Descargar agente
      .
    2. En la página
      Selección del agente
      , seleccione la ficha correspondiente al sistema operativo.
    3. Seleccione
      Infraestructura
      para el entorno.
    4. Seleccione
      Monitorización de JMX remoto
      como el agente.
    5. (Opcional) Configure ahora la propiedad pertinente. También puede configurar la propiedad más tarde en el archivo
      bundle.properties
      del Agente de la infraestructura.
      introscope.agent.remotejmx.system.s1.hostport
      Valores host:puerto del sistema de JMX remoto para que el Agente de JMX remoto pueda monitorizar los servidores de JMX disponibles.Separe los diferentes valores con comas.
      introscope.agent.remotejmx.server.s1.name
      Nombre del sistema del servidor de JMX remoto que el Agente de JMX remoto monitoriza. Separe los diferentes valores con comas.
    6. (Opcional) Seleccione
      Monitorización del host
      para correlacionar la monitorización de JMX remoto con la monitorización del host en la
      Lista de componentes del agente
      . La monitorización del host está incluida en la descarga del paquete de la monitorización de JMX remoto.
  4. Seleccione
    Descargar e instalar
    .
    DX APM
    descarga el paquete en el equipo.
  5. Compruebe que el archivo de descarga del Agente de la infraestructura contiene el archivo de monitorización de JMX remoto.
    UNIX
    :
    <remote_JMX-apmia-set_of_numbers
    _version>.tar
    .
    Por ejemplo,
    Remote_JMX-apmia-20190708_v1.tar
    .
    Windows
    :
    <remote_JMX-apmia-set_of_numbers>.zip
    Por ejemplo,
    Remote_JMX-apmia-20190708_v1.zip
    .
    Si no puede encontrar el archivo, repita los pasos 4 y 5.
  6. Extraiga el archivo descargado del agente de la infraestructura.
    UNIX
    : Ejecute este comando:
    tar -xf <remote_JMX-apmia-set_of_numbers_version>.tar
    .
    Por ejemplo,
    tar -xf Remote_JMX-apmia-20190708_v1.tar
    .
    Windows
    : Descomprima el archivo.
Instalación y ejecución del Agente de la infraestructura
Instale el Agente de la infraestructura antes de instalar la monitorización de JMX remoto.
Siga estos pasos
:
  1. Vaya al directorio
    apmia/bin
    .
  2. Ejecute el comando adecuado para instalar el Agente de la infraestructura:
    UNIX
    :
    ./APMIACtrl.sh install
    Windows
    :
    APMIACtrl.bat install
Archivos de registro
Puede revisar los registros del Agente de la infraestructura y de la monitorización de JMX remoto en el
<Infrastructure_Agent_Home>/logs
.
Estos archivos de registro se encuentran en el directorio de registros:
  • IntroscopeAgent.log
  • APMIAgentConsole.log
Configuración de las claves del sistema y del nombre del sistema de la monitorización de JMX remoto
Configure las claves del sistema y el nombre del sistema de JMX remoto en el archivo
bundle.properties
.
  1. Vaya al directorio
    apmia/extensions/RemoteJmxMonitorExtension
    .
  2. Abra el archivo
    bundle.properties
    en un editor de texto.
  3. Configure las claves del sistema de JMX remoto mediante la configuración de una lista separada por comas en la propiedad
    introscope.agent.remotejmx.system.keys
    .
    1. Configure una clave por tipo de sistema de JMX. Por ejemplo, si desea monitorizar dos instancias de Tomcat y otras dos instancias de JBoss, establezca dos claves. Una clave para las instancias de Tomcat y otra para las de JBoss. Configure la propiedad tal y como se muestra en este ejemplo:
      introscope.agent.remotejmx.system.keys=s1,s2
    2. Agregue los detalles de la conexión para cada sistema mediante
      una
      de estas dos opciones.
      • Establezca el host y el puerto de JMX para cada sistema remoto. En este ejemplo, los puertos para host1 y host2 son para los servidores de Tomcat. Los puertos para host3 y host4 son para los servidores de JBoss.
        introscope.agent.remotejmx.system.s1.hostport=host1:1099,host2:1099 introscope.agent.remotejmx.system.s2.hostport=host3:9999,host4:9999
      • Establezca la dirección URL de JMX para el servidor de JMX que está registrado en un servidor RMI de Java con un nombre de servicio personalizado. El valor predeterminado del nombre de servicio del servidor de JMX es
        jmxrmi
        . Por ejemplo:
        introscope.agent.remotejmx.system.s1.jmxurl=service:jmx:rmi:///jndi/rmi://host1:1099/foo
  4. Configure el nombre del sistema de JMX remoto. Establezca el nombre del servidor de JMX remoto, que se muestra en el Árbol de métrica y en la Vista de mapa.El valor predeterminado es
    JMX System
    , tal y como se muestra en este ejemplo:
    introscope.agent.remotejmx.system.<s1>.name=JMX System
  5. Guarde y cierre el archivo.
  6. Reinicie el Agente de la infraestructura utilizando el comando adecuado:
    UNIX:
    ./APMIACtrl.sh restart
    Windows:
    APMIACtrl.bat restart
  7. (Opcional) Utilice los atributos
    jmx port
    y
    jmx system name
    de la monitorización remota para crear perspectivas de la monitorización remota.
Configuración de la seguridad de la monitorización de JMX remoto
Se puede configurar la monitorización de JMX remoto para transferir las credenciales cifradas para conectarse con el servidor de JMX remoto.
Siga estos pasos
:
  1. Vaya al directorio
    apmia/extensions/RemoteJmxMonitorExtension
    .
  2. Abra el archivo
    bundle.properties
    en un editor de texto.
  3. Establezca las propiedades relacionadas con la seguridad en función de los requisitos de la organización o del entorno.
    • introscope.agent.remotejmx.ssl.keyStore
      El nombre del archivo del almacén de claves. El archivo del almacén de claves es necesario cuando se activa SSL y el servidor de JMX tiene la autenticación de cliente activada. Asegúrese de que el archivo se encuentra en el directorio
      <ext-home>/config/security
      .
      Valor predeterminado
      : keystore
    • introscope.agent.remotejmx.ssl.keyStorePassword
      La contraseña para abrir el archivo del almacén de claves.
      Valor predeterminado
      : ninguno
    • introscope.agent.remotejmx.ssl.trustStore
      El nombre del archivo trustStore. El archivo trustStore es necesario cuando se activa SSL. Asegúrese de que el archivo se encuentra en el directorio
      <ext-home>/config/security
      .
      Valor predeterminado
      : trustStore
    • introscope.agent.remotejmx.ssl.trustStorePassword
      La contraseña para abrir el archivo trustStore.
      Valor predeterminado
      : ninguno
    • introscope.agent.remotejmx.system.s1.authentication.password
      Contraseña para la autenticación de JMX basada en archivos.
      Valor predeterminado
      : ninguno
    • introscope.agent.remotejmx.system.s1.authentication.username
      Nombre de usuario para la autenticación de JMX basada en archivos.
      Valor predeterminado
      : ninguno
    • introscope.agent.remotejmx.system.s1.ssl
      Establezca esta propiedad en
      true
      cuando se activa la seguridad de SSL en el servidor de JMX remoto.
      Valor predeterminado
      : falso
  4. Guarde y cierre el archivo.
  5. Reinicie el Agente de la infraestructura utilizando el comando adecuado:
    UNIX
    : ./APMIACtrl.sh restart
    Windows
    : APMIACtrl.bat restart
Sugerencia
: Si desea transferir las credenciales cifradas para la conexión al servidor de JMX remoto, ejecute este comando:
java -cp lib/Agent.jar com.wily.util.properties.PropertiesUtils encrypt <clave en texto no cifrado>
Configuración de la generación de informes de métricas de la monitorización de JMX remoto
El Agente de la monitorización de JMX remoto muestra las métricas de tres maneras:
  • Generación de informes predeterminada: El agente informa a todos los MBeans de JMX de forma predeterminada.Utilice la generación de informes predeterminada cuando no tenga conocimientos sobre los MBeans de JMX en los servidores remotos.
  • El agente informa a MBeans de JMX seleccionados que tienen valores y nombres de métricas predeterminados. Para esta opción, se colocan en una lista negra y en una lista blanca determinados MBeans de JMX mediante la configuración de las propiedades.
  • El agente informa de los valores y los nombres de las métricas personalizadas. Para esta opción, se crea un módulo de configuración que contiene nombres de métricas personalizadas con valores para que el Agente de monitorización de JMX remoto cree informes.
Determine uno o más métodos de generación de informes que sean más útiles para su entorno.
Generación de informes predeterminada y métricas generales de la monitorización de JMX remoto
Utilice la generación de informes predeterminada de la monitorización de JMX remoto cuando no tenga conocimientos sobre los MBeans de JMX en los servidores remotos. Tenga en cuenta estos factores al evaluar la utilización de la generación de informes predeterminada:
  • Los nombres de las métricas pueden no ser intuitivos.
  • No se pueden manipular los valores que ha recopilado el agente de los MBeans de JMX remoto.
  • El Agente de la monitorización de JMX remoto solo muestra los datos del tipo numérico y del tipo de cadena. El agente ignora los datos en los que los valores de atributos de MBeans de JMX son de un tipo personalizado.
La monitorización de JMX remoto está activada de forma predeterminada. Se proporciona el directorio
jvm
de forma predeterminada. Este directorio contiene el archivo
jmx.yml
responsable de la monitorización de los Bean de JMX.
Aquí se encuentra la ruta de la métrica para todos los Bean gestionados:
<infra-agent>|<metricRootNode>|<domain>|<key-value-pair>:<attribute>
Ejemplo
Imagine que el Agente de la infraestructura se está ejecutando en apmia-host. Tiene una aplicación Java que se ejecuta en host1 que está configurado con el puerto JMX 1999, tal y como se muestra en este ejemplo:
introscope.agent.remotejmx.system.s1.hostport=host1:1099
El nombre del objeto MBean de la aplicación Java es
com.example.domain:type=Foo,name=Bar
. El atributo de MBean es
size
.
La monitorización de JMX remoto informa sobre esta ruta y la métrica de MBean:
apmia-host|Infrastructure|Agent|JMX|JMX System on host1_1999|com.example.domain|name=bar|type=foo:size
Siga estos pasos
:
  1. Vaya al directorio
    apmia/extensions/RemoteJmxMonitorExtension
    .
  2. Abra el archivo
    bundle.properties
    en un editor de texto.
  3. (Opcional) Establezca la frecuencia con la que la monitorización de JMX remoto busca nuevos servidores de JMX. Configure la propiedad
    introscope.agent.remotejmx.server.discovery.interval
    .
    • introscope.agent.remotejmx.server.discovery.interval
      La frecuencia, en milisegundos, que la monitorización de JMX remoto busca nuevos servidores de JMX.
      Valor predeterminado
      : jvm (activado)
      Nota
      : Debe reiniciar el Agente de la infraestructura antes de que se apliquen los cambios a esta propiedad.
      Ejemplo:
      introscope.agent.remotejmx.server.discovery.interval=60000
  4. Guarde y cierre el archivo.
  5. Reinicie el Agente de la infraestructura utilizando el comando adecuado:
    UNIX:
    ./APMIACtrl.sh restart
    Windows:
    APMIACtrl.bat restart
  6. (Opcional) Utilice los atributos
    jmx port
    y
    jmx system name
    de la monitorización remota para crear perspectivas de la monitorización remota.
Generación de informes selectiva de MBean de JMX de la monitorización de JMX remoto
La monitorización de JMX remoto puede generar informes de métricas evaluando los MBeans de JMX utilizando los valores de las propiedades de la lista blanca y negra. El Agente de la monitorización de JMX remoto consulta a los MBeans de JMX que cumplen los valores de propiedades de la lista blanca y que no se excluyen por los valores de propiedades de la lista negra.
Aquí se encuentra la ruta de la métrica para todos los Bean gestionados:
<infra-agent>|<metricRootNode>|<domain>|<key-value-pair>:<attribute>
Se pueden incluir los MBeans de JMX en las listas negras y en las listas blancas sobre los que el Agente de la monitorización de JMX remoto informa.
Siga estos pasos
:
  1. Vaya al directorio
    apmia/extensions/RemoteJmxMonitorExtension
    .
  2. Abra el archivo
    bundle.properties
    en un editor de texto.
  3. (Opcional) Incluya en la lista negra la generación de informes de los objetos MBean de JMX como métricas de JMX.
    1. Consulte JMX MBean specifications para definir los nombres de objeto. No utilice puntos y comas en los nombres de objeto.
    2. Configure la propiedad
      introscope.agent.remotejmx.system.<system-key>.mbeanPatternsBlackList
      .
      • introscope.agent.remotejmx.system.<system-key>.mbeanPatternsBlackList
        Lista separada por puntos y comas de los nombres de objeto de MBean de JMX. La monitorización de JMX remoto ignora todos los MBean coincidentes y no notifica los MBean como métricas de JMX.
        Valor predeterminado
        : ninguno
        Nota
        : Debe reiniciar el Agente de la infraestructura antes de que se apliquen los cambios a esta propiedad.
        Ejemplo:
        introscope.agent.remotejmx.system.s1.mbeanPatternsBlackList=com.example.domain:type=Legacy;com.example.domain:name=Unknown
  4. (Opcional) Incluya en la lista blanca la generación de informes de los objetos MBean de JMX como métricas de JMX.
    1. Consulte JMX MBean specifications para definir los nombres de objeto. No utilice puntos y comas en los nombres de objeto.
    2. Configure la propiedad
      introscope.agent.remotejmx.system.<system-key>.mbeanPatternsWhiteList
      .
      • introscope.agent.remotejmx.system.<system-key>.mbeanPatternsWhiteList
        Lista separada por puntos y comas de los nombres de objeto de MBean. El Agente de la monitorización de JMX remoto notifica automáticamente las métricas de JMX para los MBean coincidentes.
        Valor predeterminado
        : *:*
        Nota
        : Debe reiniciar el Agente de la infraestructura antes de que se apliquen los cambios a esta propiedad.
        Ejemplo:
        introscope.agent.remotejmx.system.s1.mbeanPatternsWhiteList=Users:type=Role,*;Catalina:type=Manager,*
  5. Guarde y cierre el archivo.
  6. Reinicie el Agente de la infraestructura utilizando el comando adecuado:
    UNIX:
    ./APMIACtrl.sh restart
    Windows:
    APMIACtrl.bat restart
Generación de informes personalizada de métricas de JMX de la monitorización de JMX remoto
Un módulo de configuración amplía la monitorización de JMX remoto. La creación de un módulo de configuración permite proporcionar nombres y valores de métricas personalizados para un componente de JMX remoto determinado.Normalmente, el nombre del módulo de configuración hace referencia al componente que proporciona las métricas de JMX.
Este módulo de configuración de ejemplo muestra cómo recopilar métricas para un sistema de almacenamiento en caché hipotético.
version:
"1.0"
configElements:
- objectName:
"com.foo.server:type=Cache"
attribute:
"RequestsIn"
metricName:
"{rootNode}|{type}:Requests In Per Interval"
metricType:
"counter"
- objectName:
"com.foo.server:type=Cache"
attribute:
"name"
metricName:
"{rootNode}|{type}:{name}"
metricType:
"string"
- objectName:
"com.foo.server:type=Cache,name=MemoryBytes"
attribute:
"size"
metricName:
"{rootNode}|{type}:Cache Size (mb)"
metricType:
"counter"
valueFactor:
0.000001
valueAddition:
0
- objectName:
"com.foo.server:type=Cache,name=MemoryBytes"
attribute:
"size"
metricName:
"{rootNode}|{type}:Cache Size Increase Per Interval"
metricType:
"rate"
Para crear un módulo de configuración, se deben determinar los tipos de métrica, los nombres de métrica y los marcadores de posición. También se debe configurar la propiedad
introscope.agent.remotejmx.system.<system-key>.config.modules
.
Siga estos pasos
:
  1. Vaya al directorio
    apmia/extensions/RemoteJmxMonitorExtension/config/modules
    .
  2. Cree un directorio del módulo y asígnele un nombre para la aplicación o el componente que se debe monitorizar. Por ejemplo,
    cache
    .
    apmia/extensions/RemoteJmxMonitorExtension/config/modules/cache
    Importante
    : Todos los directorios de módulos deben contener un archivo
    jmx.yml
    . El contenido del archivo puede variar en función de la aplicación o el componente que el Agente de JMX remoto esté monitorizando.Le recomendamos que utilice la opción que se explica en el paso 3 para crear el archivo
    jmx.yml
    , ya que nuestro código proporciona algunas métricas con el formato predefinido útiles
    .
  3. (Opcional) Cree un archivo
    jmx.yml
    con el formato predefinido.
    1. Mediante un editor de texto, cree un archivo
      jmx.yml
      .
    2. Copie el bloque de código de ejemplo del módulo del sistema de almacenamiento en caché hipotético que se ha proporcionado antes de este procedimiento.
    3. Agregue, suprima o cambie las métricas en el archivo utilizando las instrucciones incluidas en los pasos 4b y 4c.
    4. Guarde y cierre el archivo.
  4. (Opcional) Cree un archivo
    jmx.yml
    personalizado.
    1. Utilice un editor de texto para crear un archivo
      jmx.yml
      .
    2. Defina uno o más tipos de métrica para el módulo de configuración.
      • Uso de la métrica counter:
        Utilice el tipo de métrica counter para notificar los atributos que tienen una devolución numérica.El valor fluctúa y permanece en el último valor conocido hasta que nuevos datos estén disponibles.
        Valores de tipo primitivo:
        int
        ,
        long
        ,
        float
        ,
        double
        Tipos de objeto:
        Integer
        ,
        Long
        ,
        Float
        ,
        Double
        Ejemplo:
        Imagine que tiene un MBean de la memoria caché con el atributo
        getSize()
        , que devuelve el tamaño actual de la memoria caché. El tipo de valor devuelto es
        long
        .
        Para informar sobre el último valor como una métrica, utilice esta configuración:
        - objectName: "com.foo.server:type=Cache,name=MemoryBytes" attribute: "size" metricName: "{rootNode}|{type}:Cache Size (mb)" metricType: "counter"
        Esta configuración puede generar un valor de métrica de, por ejemplo,
        100 (MB)
        .
      • Uso de la métrica rate:
        Utilice el tipo de métrica rate para informar sobre un atributo que tiene un aumento del último valor conocido al valor actual.El valor fluctúa y permanece en el último valor conocido hasta que nuevos datos estén disponibles.
        Tipo de valor del atributo
        :
        numeric
        Tipo de valor devuelto
        :
        long
        Ejemplo
        : Imagine que tiene un MBean de la memoria caché con el atributo
        getSize()
        , que devuelve el tamaño actual de la memoria caché. En el intervalo 1, el tamaño de la memoria caché es de 100 MB. En el intervalo 2, el tamaño de la memoria caché aumenta a 103 MB. Para informar sobre el aumento del valor como métrica, utilice esta configuración:
        - objectName: "com.foo.server:type=Cache,name=MemoryBytes" attribute: "size" metricName: "{rootNode}|{type}:Cache Size (mb) Increase Per Interval" metricType: "rate"
        Esta configuración informa de un valor de métrica de
        3
        .
      • Uso de la métrica
        string: Utilice el tipo de métrica string para informar de que un atributo tiene un tipo de retorno como
        string
        .
        Ejemplo
        : Imagine que tiene un MBean de la memoria caché con el atributo
        getType()
        , que devuelve el tipo string de la memoria caché. Para informar sobre el último valor, utilice esta configuración:
        - objectName: "com.foo.server:type=Cache,name=MemoryBytes" attribute: "type" metricName: "{rootNode}|{type}:Cache Type" metricType: "string"
        Esta configuración puede generar un valor de métrica de, por ejemplo, LRU (Usados menos recientemente).
    3. Utilice estos marcadores de posición para determinar uno o más nombres de métricas personalizadas en el módulo de configuración.
      • attribute
        Nombre del atributo desde el que el agente está recopilando datos.
      • attributeType
        Tipo de atributo desde el que el agente está recopilando datos.
      • className
        Nombre de clase de objeto remoto.
      • componentName
        Nombre que se asigna al sistema remoto en el archivo
        bundle.properties
        .
      • domain
        Nombre de dominio del objeto MBean.
      • host
        Nombre de host del sistema de JMX remoto.
      • port
        Puerto JMX del sistema de JMX remoto.
      • rootNode
        Nodo raíz de un sistema de JMX remoto determinado. El valor rootNode se utiliza para mostrar la ruta del Árbol de métrica.
        Por ejemplo:
        SuperDomain|<apmia-host>|Infrastructure|Agent|JMX|<jmx-system-name on host_port>
  5. Guarde y cierre el archivo
    jmx.yml
    .
  6. Defina el módulo de configuración en la propiedad
    introscope.agent.remotejmx.system.<system-key>.config.modules
    .
      • introscope.agent.remotejmx.system.<system-key>.config.modules
        Esta propiedad proporciona una lista separada por comas de módulos de configuración de JMX.
        Valor predeterminado
        : JVM. De forma predeterminada, se activa el módulo
        JVM
        .
        Nota
        : Debe reiniciar el Agente de la infraestructura antes de que se apliquen los cambios a esta propiedad.
    1. Vaya al directorio
      apmia/extensions/RemoteJmxMonitorExtension
      .
    2. Abra el archivo
      bundle.properties
      en un editor de texto.
    3. Utilice
      una
      de estas opciones.
      • (Opcional) Agregue el nombre del nuevo directorio a la propiedad
        introscope.agent.remotejmx.system.s1.config.modules
        .
        Por ejemplo, si ha creado un directorio llamado
        cache
        , agregue
        cache
        tal y como se muestra en este código de ejemplo:
        introscope.agent.remotejmx.system.s1.config.modules=jvm,cache
        En este ejemplo, se está consiguiendo que el directorio
        jvm
        predeterminado contenga el archivo
        jmx.yml
        , que monitoriza los Bean de JMX. Se está agregando el nuevo directorio
        cache
        .
      • (Opcional) Agregue la ruta de directorio absoluta a la propiedad
        introscope.agent.remotejmx.system.s1.config.modules
        . Este es un ejemplo:
        introscope.agent.remotejmx.system.s1.config.modules=/opt/jmx/jvm,/opt/jmx/cache
  7. Guarde y cierre el archivo.
  8. Reinicie el Agente de la infraestructura utilizando el comando adecuado:
    UNIX:
    ./APMIACtrl.sh restart
    Windows:
    APMIACtrl.bat restart
Monitorización del estado de JMX remoto
Se pueden ver los datos de la instancia de JMX remoto utilizando la
Vista de componente
y otras vistas de Application Performance Management.
  1. Inicie sesión en
    DX SaaS
    .
  2. Seleccione
    Abrir
    en el cuadro
    Application Performance Management
    . Aparecerá la página principal de Application Performance Management.
  3. En el panel de navegación izquierdo, seleccione el icono
    Mapa
    .
  4. Consulte los datos de la capa de la infraestructura de JMX remoto.
    1. Seleccione
      Capa de la infraestructura
      en la lista desplegable ubicada en la esquina superior izquierda.
    2. Seleccione
      Valor predeterminado
      en el cuadro desplegable de la derecha.
    3. Se muestra el nodo
      <jmx-system-name>
      en el mapa. Tenga en cuenta que se agrupan todos los servidores de JMX remotos que se identifican mediante jmx_system_name. Por ejemplo, si el entorno tiene un servidor de JMS de Hola mundo y un servidor de JMS de Tomcat, ambos servidores se mostrarán en el mapa dentro de un cuadro llamado
      JMV-System-Type
      .
    4. Seleccione el nodo
      nombre del sistema de JMX
      para abrir la
      Vista de
      componente
      a la derecha del mapa. Tenga en cuenta que el tipo es
      JMX_System
      .
    5. Seleccione la ficha
      Jmx System
      para ver los atributos y las métricas en la capa de la infraestructura. Cuando se instala el Agente de la infraestructura con la monitorización del host activada, el agente utiliza los atributos de la dirección IP y del nombre de host del sistema de JMX remoto para correlacionarlos con la monitorización del host.
      Una aplicación monitorizada por el Agente de Java puede generar métricas de JMX que se están monitorizando mediante la extensión del Agente de la infraestructura de monitorización de JMX remoto. En este caso, un nodo JMX_SYSTEM de la capa de la infraestructura del mapa se correlaciona con el Agente de Java y la aplicación. Cada nodo JMX_System muestra tres fichas en la Vista de componente:
      Aplicación
      ,
      Agente
      y
      JMX_System
      , que proporcionan correlación entre las capas del mapa.
  5. Navegue por los datos para examinar las métricas de la monitorización de JMX remoto para determinar si alguno de los valores indica un rendimiento bajo.
  6. Examine las métricas del Agente de la monitorización de JMX remoto aquí en el Explorador de métrica:
    SuperDomain|<apmia-host>|Infrastructure|Agent|JMX|<jmx-system-name on host_port>
    Nota
    : Es posible que la monitorización de JMX remoto no informe de todas las métricas que se ven con JConsole. Esta situación se produce porque algunas de las métricas son métricas complejas que no son compatibles con
    DX APM
    .
Monitorización del clúster de Zookeeper con la monitorización de JMX remoto
El servicio Zookeeper gestiona varios nodos en un clúster. Cuando se activa la monitorización de JMX remoto en todos los nodos, se puede monitorizar y recopilar métricas para el clúster.
Un clúster de Zookeeper normalmente contiene los siguientes tipos de nodos:
  • Leader Node
    : Un nodo que funciona como líder para gestionar la coordinación entre todos los nodos restantes.
  • Follower Node
    : Un nodo que sigue la relación establecida por el nodo líder.
  • Broker Node
    : Un nodo que se conecta al servicio de Zookeeper y transmite información entre el servicio y los nodos de clúster.
Configuración de la monitorización de JMX remoto para la monitorización de Zookeeper
Se puede configurar la monitorización de JMX remoto para la monitorización de Zookeeper en el archivo
bundle.properties
.
Siga estos pasos
:
  1. Vaya al directorio
    apmia/extensions/RemoteJmxMonitorExtension
    .
  2. Abra el archivo
    bundle.properties
    en un editor de texto.
  3. Configure las claves del sistema de JMX remoto mediante la configuración de una lista separada por comas en la propiedad
    introscope.agent.remotejmx.system.keys
    .
    Por ejemplo,
    introscope.agent.remotejmx.system.keys=s1
  4. Configure los detalles de la conexión para cada sistema en la propiedad
    introscope.agent.remotejmx.system.<jmx_system_key>.hostport
    .
    Establezca el host y el puerto de JMX del sistema remoto de Zookeeper. Si se trata del clúster de Zookeeper, agregue todos los hosts de los nodos con el puerto de JMX.
    Por ejemplo,
    introscope.agent.remotejmx.system.s1.hostport=zookeeper-host1:9010, zookeeper-host1:9011, zookeeper-host3:9012
  5. Configure el nombre del sistema de JMX remoto en la propiedad
    introscope.agent.remotejmx.system.<jmx_system_key>.name
    .
    El nombre del servidor de JMX remoto se muestra en la
    Vista de mapa
    y en el
    Árbol de métrica
    .
    Por ejemplo,
    introscope.agent.remotejmx.system.s1.name=JMX Remote System
    De forma predeterminada, el valor es
    JMX System
    .
  6. Guarde y cierre el archivo.
  7. Reinicie el Agente de la infraestructura utilizando el comando adecuado:
    • UNIX:
      ./APMIACtrl.sh restart
    • Windows:
      APMIACtrl.bat restart
Si se protegen los hosts de Zookeeper JMX remoto, siga estos pasos para la Configuración de la seguridad de la monitorización de JMX remoto.
Métricas de Zookeeper
Ruta de las métricas
:
JMX|<Zookeeper_cluster_name>|Default|<Nombre_servicio_Zookeeper>
A continuación se muestra una lista de las métricas que recopila la monitorización de JMX remoto para el clúster de Zookeeper y los nodos:
  • Clúster de Zookeeper
    • Connection Status
    • StartTime
    • TickTime
    • InitLimit
    • QuorumSize
    • SyncLimit
    • Number of Alive Connections
    • Data Directory Size
  • Leader Node
    • RequestThrottleStallTime
    • RequestThrottleLimit
    • DataDirSize
    • NumAliveConnections
    • TickTime
  • Follower Node
    • DataDirSize
    • NumAliveConnections
    • TickTime
  • Zookeeper Connection/JMX Metrics/Broker Node
    • Nodes
    • SourceIP
    • Avg Latency
    • Packets Sent
    • Packets Received