Componentes de Wizard

Dentro de las capacidades del wizard SNMP y el wizard WMI, se encuentran un tipo de componentes remotos llamados Componentes de wizard.

Estos componentes permiten establecer una configuración base para los módulos que serán generados en los agentes al ejecutar cualquiera de los wizard (SNMP o WMI). Además ofrece la posibilidad de que con un solo componente se puedan generar varios módulos de forma dinámica. Por ejemplo, un componente para escanear las distintas unidades de almacenamiento de un dispositivo o los procesos en ejecución.

Se pueden crear estos componentes desde el menú ConfigurationTemplatesRemote components,

Seleccione la opción Create a new wizard component y pulse el botón Create.

En el cuadro de diálogo de creación existe una opción de vital importancia: el protocolo de Módulo a utilizar. Existen dos protocolos disponibles, SNMP (por defecto) y WMI, y aunque ambos comparten campos comunes también difieren en otros campos.

Los campos comunes son:

  • Enabled: Al activar este token se indica que el componente se intentará escanear al lanzar el wizard.
  • Add by default: Permite elegir si los módulos generados por el componente estarán marcados para agregarse por defecto al lanzar el wizard. Es decir, si se activa el token, los módulos generados por el componente estarán marcados por defecto en una vista que encontraremos más adelante y se añadirán al Agente. Luego en esa vista se pueden hacer modificaciones y desmarcar o marcar a voluntad y cambiar umbrales, descripciones, etc.
  • Module name: Nombre que tendrá el componente, y nombre por defecto para los módulos generados por el mismo. Se podrá hacer uso de algunas macros que se explican en las siguientes secciones.
  • Module protocol: permite elegir entre SNMP y WMI (cambian algunos campos).
  • Module type: En este desplegable se puede escoger el tipo de dato que obtendrán los módulos generados por el componente.
  • Component group: Grupo al que pertenecerá el componente. Permite organizar la forma en que se presentarán los módulos.
  • Module unit: Unidad de los datos obtenidos por los módulos generados por el componente. Es un campo totalmente editable, por lo que puede agregar la medida que necesite.
  • Warning status: En esta sección se puede establecer un umbral por defecto para el estado warning de los módulos generados por el wizard. A pesar de indicar aquí un rango, habrá posibilidad de personalizarlo para cada módulo en la vista final que recoge todos los módulos encontrados.
  • Critical status: En esta sección puede establecer un umbral por defecto para el estado critical de los módulos generados por el wizard. A pesar de indicar aquí un rango, habrá posibilidad de personalizarlo para cada módulo en la vista final que recoge todos los módulos encontrados.
  • Description: Descripción que tendrá el componente y a su vez los módulos generados por el mismo. Se podrá hacer uso de algunas macros.
  • Scan type: Permite elegir entre dos modalidades de exploración que podrán realizar los wizards con este componente. Este campo determina si un componente generará un solo módulo o varios. El valor seleccionado afectará a como se deben rellenar otros campos específicos de cada wizard.
    • Fixed: El componente solo generará un módulo. Por ejemplo, obtener el uptime (tiempo funcionando) del dispositivo por SNMP.
    • Dynamic: El componente podrá generar uno o más módulos. Por ejemplo, obtener el porcentaje de uso de las unidades de disco por WMI.
  • Execution type: Con este campo se indica el tipo de ejecución para los módulos generados por el componente. Sirve para determinar el servidor de Pandora FMS al que pertenecerán los módulos en el momento de su creación dependiendo desde dónde se ejecute el wizard.
    • Network: Los módulos generados por el componente obtendrán sus datos con los mecanismos propios de Pandora FMS para módulos SNMP y WMI. Estos son: los servidores de red, servidor WMI y servidor satélite.
    • Plugin: Los módulos generados por el componente obtendrán sus datos de la ejecución de comandos, plugins o scripts personalizados. De esta manera, serán ejecutados por el servidor de plugins o por el servidor satélite mediante módulos de tipo exec.

SNMP wizard

Los campos específicos para componentes del wizard SNMP son:

  • Name OID
  • Manufacturer ID
  • Cuando Execution type está establecido en Network:
    • Value OID
  • ​​​Cuando Execution type está establecido en Plugin:
    • Macros OID
    • Value operation
    • Satellite execution
    • Server plugin

Name OID

Permite indicar un OID del cual se obtendrá un valor que podrá ser añadido al nombre del módulo mediante una macro. Resulta especialmente útil cuando se obtienen múltiples módulos generados por un componente dinámico. De esta manera se consigue que tengan nombres distintos por defecto. Pero no se limita a los componentes dinámicos, ya que se puede utilizar también para los componentes de escaneo fijo.

El valor de este OID es almacenado en la macro _nameOID_, que puede ser usada en el campo Module name.

Si se utiliza en componentes dinámicos, el OID indicado en este campo debe ser una rama de SNMP y no un OID final. Por ejemplo, si se indica el OID .1.3.6.1.4.1.2021.10.1.2, los valores que tendrá la macro en cada módulo se obtendrán de los OID .1.3.6.1.4.1.2021.10.1.2.x , donde x representa cada una de las terminaciones que puede tener la rama.

Si se utiliza en componentes fijos, el OID indicado en este campo debe ser un OID final. Por ejemplo, si se indica el OID .1.3.6.1.2.1.1.5.0, el valor que tendrá la macro en el módulo se obtendrá directamente de ese OID.

Manufacturer ID

Permite indicar el ID de un fabricante específico para el cual el componente del wizard SNMP tendrá efecto. De esta manera, para todos los dispositivos contra los que se lance el wizard, y cuyo Private Enterprise Number (PEN) esté registrado en Pandora FMS para el ID del fabricante asignado al componente, se intentarán obtener los módulos generados por el mismo. Por ejemplo, un componente asignado a general_snmp, se escaneará para todos los dispositivos con los PEN 2021 y 8072.

Si se indica como fabricante All, el componente se escaneará para cualquier PEN registrado en Pandora FMS.

Debe estar registrado el Private Enterprise Number (PEN) en la consola de Pandora FMS para el uso de Manufacturer ID

SNMP Ejecución tipo Network

Cuando el tipo de ejecución sea Network:

Value OID:

Permite indicar el OID a partir del cual se obtendrán los datos de los módulos generados por el componente. Si se utiliza en componentes dinámicos, el OID indicado en este campo debe ser una rama de SNMP y no un OID final. Por ejemplo, si se indica el OID .1.3.6.1.4.1.2021.10.1.3, los valores que tendrán los módulos se obtendrán de los OIDs .1.3.6.1.4.1.2021.10.1.3.x . Además, el nodo x de cada OID debe tener el mismo valor para el nodo X del campo Name OID. en el caso de utilizarse.

Si se utiliza en componentes fijos, el OID indicado en este campo debe ser un OID final. Por ejemplo, si se indica el OID .1.3.6.1.4.1.2021.11.9.0, el valor que tendrá el módulo se obtendrá directamente de ese OID.

SNMP ejecución tipo Plugin

Cuando el tipo de ejecución sea Plugin:

Macros OID_oid_N_

El propósito principal de utilizar componentes de tipo plugin es poder realizar operaciones con los valores de uno o más OID en el mismo dispositivo, como por ejemplo obtener el porcentaje de memoria usada a partir de los bytes de memoria usada y los bytes totales de memoria disponibles.

Es por ello que en estos componentes se pueden indicar tantos OID como se necesiten para utilizarlos en otros campos.

Además, estos OID, o sus valores, se podrán utilizar a partir de las macros _oid_N_. Dependiendo de en cuál de los campos siguientes se utilice la macro, se usará el valor del OID o el OID en sí mismo.

Si se utilizan en componentes dinámicos, los OID indicados en estos campos deben ser una rama de SNMP y no un OID final. Por ejemplo, si se indica el OID .1.3.6.1.4.1.3375.2.1.7.4.2.1.3, los valores que tendrán los módulos se obtendrán de los OIDs .1.3.6.1.4.1.3375.2.1.7.4.2.1.3.x . Además el nodo X de cada OID debe tener el mismo valor para el nodo X del resto de OID usados y del campo Name OID,en el caso de utilizarse.

Si se utiliza en componentes fijos, los OID indicados en estos campos deben ser un OID final. Por ejemplo, si se indica el OID .1.3.6.1.4.1.2021.4.6.0, el valor que tendrá el módulo se obtendrá directamente de ese OID.

Value operation

Permite indicar una operación aritmética con la cual se obtendrá el valor actual de cada módulo generado por el componente en la vista previa de los módulos del wizard. En ningún caso afecta para la ejecución definitiva de los módulos generados.

Acepta los caracteres + - * / ( ) . , números y las macros _oid_N_ de las cuales se obtendrán los valores para la operación. Por ejemplo:

(_oid_1_ * 100) / _oid_2_

Satellite execution

Ofrece la posibilidad de indicar la ejecución que deba realizar un Servidor Satélite para los módulos generados cuando el wizard se lance desde un Servidor Satélite mediante el uso del exec server. Se trata del comando, plugin o script que se deba usar en un module_exec de servidor satélite.

Acepta el uso de las macros para el wizard SNMP (se detallarán más adelante) y de las macros _oid_N_ para obtener los OID usados en cada módulo.

El Servidor Satélite distribuye una serie de plugins recomendados para estos componentes:

- /etc/pandora/satellite_plugins/wizard_snmp_module
- /etc/pandora/satellite_plugins/wizard_snmp_process

Server plugin

Mediante este desplegable se podrá indicar un plugin registrado previamente en la Consola de Pandora FMS, el cual será utilizado por el servidor de plugins con cada módulo generado por el componente. La elección de un plugin muestra a su vez en el formulario los campos específicos para la utilización del mismo.

Los campos propios del plugin aceptan el uso de las macros para el wizard SNMP y de las macros _oid_N_ para obtener los OIDs usados en cada módulo.

La consola de Pandora FMS cuenta con una serie de plugins ya registrados recomendados para estos componentes:

          - Wizard SNMP module.
          - Wizard SNMP process.

Por ejemplo, al seleccionar Wizard SNMP module obtendrá los siguientes campos a rellenar:

Las macros específicas para los componentes del wizard SNMP que se pueden usar en los campos de ejecuciones de tipo plugin son:

  • _address_ : Dirección IP usada en el wizard SNMP. No se sustituirá esta macro cuando el wizard se lance en una política.
  • _port_ : Puerto usado en el wizard SNMP.
  • _version_ : Versión de SNMP usada en el wizard SNMP. Puede tener los valores 1, 2c o 3.
  • _community_ : Comunidad SNMP usada en el wizard SNMP.
  • _sec_level_ : Nivel de seguridad de SNMPv3 usado en el wizard SNMP. Puede tener los valores noAuthNoPriv, authNoPriv o authPriv
  • _auth_user_ : Usuario de SNMPv3 usado en el wizard SNMP.
  • _auth_method_ : Método de autenticación de SNMPv3 usado en el wizard SNMP. Puede tener los valores MD5 o SHA.
  • _auth_pass_ : Contraseña de autenticación de SNMPv3 usada en el wizard SNMP.
  • _priv_method_ : Método de privacidad de SNMPv3 usado en el wizard SNMP. Puede tener los valores DES o AES.
  • _priv_pass_ : Contraseña de privacidad de SNMPv3 usada en el wizard SNMP.

WMI wizard

WMI ejecución tipo Network

Cuando el tipo de ejecución sea Network:

WMI class

Permite especificar la clase WMI a consultar. Las clases WMI son predefinidas que se incluyen en cada espacio de nombres del núcleo de Windows Management Instrumentation® (WMI).

Query key field ( _field_wmi_0_ )

Query extra fields ( _field_wmi_1_ )

Query filters → Execution:

Este espacio permite indicar las condiciones para la consulta WMI lanzada por cada módulo generado por el componente. Acepta el uso de las macros con los nombres de los campos de la consulta (_FIELDNAME_) para obtener el valor de cada registro en ese campo. Por ejemplo:

 DriveType = 3 AND DeviceID = '_DeviceID_'.

La consulta de ejecución final de un módulo generado por el componente para obtener el espacio libre de la unidad de disco C: es:

SELECT DeviceID, FreeSpace FROM Win32_LogicalDisk WHERE DriveType = 3 AND DeviceID = 'C:'

Field value

Indicaremos el número del campo de la consulta WMI del cual se quiera obtener el valor del módulo, siendo el campo 0 el campo clave de la clase y los campos 1, y superiores, los adicionales de la clase.

Key string

Permite convertir el valor del módulo en booleano (1 o 0) dependiendo de si el valor del campo indicado en Field value coincide con la cadena de texto indicada en este campo.

La opción Key string no se tendrá en cuenta cuando el wizard se lance desde un Servidor Satélite mediante exec server

WMI ejecución tipo Plugin

Cuando el tipo de ejecución sea Plugin:

Comparte campos comunes con la ejecución Network hasta el campo Scan (Query filters).

Value operation

El propósito principal de utilizar componentes de tipo plugin es poder realizar operaciones con los valores de distintos campos de la consulta, como por ejemplo obtener el porcentaje de disco usado a partir de los bytes de disco libre y los bytes totales de disco disponibles.

Este campo permite indicar una operación aritmética con la cual se obtendrá el valor actual de cada módulo generado por el componente en la vista previa de los módulos del wizard. En ningún caso afecta para la ejecución definitiva de los módulos generados.

Acepta los caracteres + - * / ( ) . , números y las macros con los nombres de los campos de la clase ( _FIELDNAME_ ), de las cuales se obtendrán los valores para la operación. Por ejemplo:

((_Size_ - _FreeSpace_) * 100) / _Size_

Satellite execution

Permite indicar la ejecución que deba realizar un Servidor Satélite para los módulos generados cuando el wizard se lance desde un Servidor Satélite mediante el uso del exec server. Se trata del comando, plugin o script que se deba usar en un module_exec de Servidor Satélite.

Acepta el uso de las macros para el wizard WMI y de las macros _class_wmi_ para obtener el nombre de la clase WMI y _field_wmi_N_ para obtener los nombres de los campos de la clase usados en cada módulo.

El Servidor Satélite distribuye un plugin recomendado para estos componentes:

/etc/pandora/satellite_plugins/wizard_wmi_module

Server plugin

Permite indicar un plugin registrado en la consola de Pandora que será utilizado por el servidor de plugins con cada módulo generado por el componente. La elección de un plugin muestra a su vez en el formulario los campos específicos para la utilización del mismo.

Los campos propios del plugin aceptan el uso de las macros para el wizard WMI y de las macros _class_wmi_ para obtener el nombre de la clase WMI y _field_wmi_N_ para obtener los nombres de los campos de la clase usados en cada módulo.

La Consola de Pandora FMS cuenta con un plugin ya registrado recomendado para estos componentes: Wizard WMI module.

Las macros específicas para los componentes del wizard WMI que se pueden usar en los campos de ejecuciones de tipo plugin son:

  • _address_ : Dirección IP usada en el wizard WMI. No se sustituirá esta macro cuando el wizard se lance en una política.
  • _namespace_wmi_ : Namespace usado en el wizard WMI.
  • _user_wmi_ : Usuario utilizado en el wizard WMI.
  • _pass_wmi_ : Contraseña utilizada en el wizard WMI.

Los campos específicos para componentes del wizard WMI son:

* **WMI class**: Hace referencia a la clase WMI que se utilizará en las consultas de los módulos generados por el componente. Por ejemplo, //Win32_LogicalDisk//.

Se puede utilizar en otros campos de este mismo formulario mediante la macro _class_wmi_.

Query key field ( _field_wmi_0_ )

Es el nombre del campo clave que se obtendrá en la consulta WMI usada en los módulos generados. Por lo general las clases WMI tienen un campo clave que siempre devuelven en cualquier consulta tanto si se indica como si no. Ese sería el campo que se debería indicar aquí. Por ejemplo, el campo clave de la clase Win32_Processor sería DeviceID.

El nombre de este campo se puede obtener en otros campos del formulario mediante la macro _field_wmi_0_, y el valor que tenga el campo para cada registro de la consulta WMI se puede obtener mediante una macro con el mismo nombre del campo ( _FIELDNAME_ ). Estas macros _FIELDNAME_ se pueden utilizar, entre otros, en los campos Module name y Description del componente, para generar nombres y descripciones de forma dinámica. Por ejemplo, para el campo DeviceID la macro con el valor sería _DeviceID_.

Query extra fields_field_wmi_N_:

En estos campos indicaremos los nombres de los campos adicionales que se deban utilizar en la consulta WMI usada en los módulos generados.

Los nombres de estos campos se pueden obtener en otros campos del formulario mediante las macros _field_wmi_N_, y los valores que tengan los campos para cada registro de la consulta WMI se pueden obtener mediante macros con los mismos nombres de los campos ( _FIELDNAME_ ). Estas macros _FIELDNAME_ se pueden utilizar, entre otros, en los campos Module name y Description del componente, para generar nombres y descripciones de forma dinámica. Por ejemplo, para el campo FreeSpace la macro con el valor sería _FreeSpace_.

Query filters → Scan

En este espacio se indican las condiciones para la consulta WMI lanzada en el escaneo, la cual permitirá obtener uno o más registros. Por ejemplo: DriveType = 3.

En los componentes del wizard WMI, se generará un módulo distinto por cada registro devuelto por la consulta de escaneo WMI. Basándonos en los ejemplos aportados hasta ahora, la consulta de escaneo que se realizaría obtendría el espacio libre de las unidades de disco del equipo Windows:

SELECT DeviceID, FreeSpace FROM Win32_LogicalDisk WHERE DriveType = 3

Volver al índice de documentación de Pandora FMS