Skip to main content

Configuración en PandoraFMS

Instalar el plugin en el servidor de PandoraFMS

El procedimiento operativo que se describe a continuación está basado en el uso de PandoraFMS enterprise.

Las operaciones que se indican a continuación deben realizarse cuando se instala Control For i por primera vez en una solución de PandoraFMS ya operativa.

Busque el nombre del directorio que contiene los plugins

En PandoraFMS por defecto la ruta para los plugins del servidor es /usr/share/pandora_server/util/plugin pero se puede utilizar una ruta personalizada, en esta guía vamos a utilizar la que viene por defecto y crearemos un directorio llamado pandora_ibm por ejemplo para poner allí todos los ficheros necesarios.

 

mkdir /usr/share/pandora_server/util/plugin/pandora_ibm

Transferir el plugin al servidor de PandoraFMS

La instalación del producto Control For i ha creado el directorio "/Ctl4i" que contiene el plugin y el fichero de configuración para instalar en el servidor de PandoraFMS.

Transfiera el plugin y el fichero de configuración desde el directorio "/Ctl4i" de la partición IBM i al directorio que contiene los plugins en PandoraFMS. En nuestro ejemplo: "/usr/share/pandora_server/util/plugin/pandora_ibm".

Si descargamos el paquete de la librería de PandoraFMS, se proporcionará una versión actualizada del cliente de Control4i en el mismo paquete, por lo que podremos evitar la transferencia de datos desde la partición de IBM i al servidor de PandoraFMS.

Para descargar el plugin pandora_ibmi, el cliente de Control4i y los ficheros confs vaya a la librería de PandoraFMS: (url: https://pandorafms.com/library/pandorafms-ibm-i-enterprise-plugin/) y haga clic en el enlace del paquete para descargar un fichero zip que incluye los ficheros necesarios.

Luego transfiera estos ficheros al directorio definido en el servidor de PandoraFMS

Cambiar el puerto a utilizar (si se requiere)

Si el puerto 7357 ya está siendo utilizado, se puede cambiar el puerto a utilizar para la comunicación entre el plugin de PandoraFMS y el agente en la partición IBM i.

El puerto por defecto se define en el fichero check_Control4i_Config situado en el mismo directorio que el plugin que se acaba de transferir. 

Edite el contenido de este archivo y cambie el número de puerto. 

También se puede utilizar un puerto específico definiendo en la definición del plugin pandora_ibmi, que llama al plugin check_Control4i pasándole el parámetro -p seguido del número de puerto a utilizar.

 

Compruebe que el cliente check_Control4i funciona correctamente

En la partición IBM i, compruebe que el subsistema CONTROL4I está activo. Si no lo está, inícielo con el comando CTSTRSBS.

En el terminal del servidor de PandoraFMS se puede ejecutar: 

# cd /usr/share/pandora_server/util/plugin/pandora_ibm
# ./check_Control4i -H <IBM i partition ip> -c "ctchksbs control4i"
CTL1015 - The CONTROL4I subsystem is in *RUN state 

 

Asegúrese de que los binarios check_Control4i y pandora_ibmi tienen derechos de ejecución, en caso de no ser así, simplemente ejecútelos:

 

chmod +x check_Control4i
chmod +x pandora_ibmi

 

Si el mensaje devuelto es:

CTL1015 - El subsistema CONTROL4I está en estado *RUN

Se valida la operación del plugin. 

Durante el primer uso, es posible que no reciba respuesta de la partición IBM I. Ejecute el mismo comando 3 veces antes para buscar otra causa. La razón es que cuando el agente se inicia (trabajo CTAGENT) las 3 primeras demandas son rechazadas, por una razón técnica. 

Configurar el archivo conf de pandora_ibmi

 

Para obtener métricas utilizando el plugin pandora_ibmi deberemos modificar el fichero de definición pandora_ibmi.conf, con los comandos que queramos ejecutar en la partición IBM i, para obtener una lista completa de comandos disponibles podríamos dirigirnos al documento IBM i check commands.

 

Para ejecutar un chequeo básico a nuestra partición IBM i definiremos un par de comandos en el archivo de configuración, que se incluye por defecto:

 

Execute pandora_ibmi manually

 

To execute pandora_ibmi manually simply download de zip file, uncompress it on the desired path and move it to it, in our case /usr/share/pandora_server/util/plugin/pandora_ibm then execute the pandora_ibmi with the host ip from our IBM i partition and the definition conf file as parameters.

 

./pandora_ibmi -H 10.10.10.1 --conf pandora_ibmi.conf

 

Remember, there are a couple of optional parameters we can use, like the agent alias, a custom port, module prefix, etc. But the mandatory ones are host ip and command definition conf file

 

This is a server plugin so if we didn't get any error and a value of 1 is returned, that means every runs correctly and the agent (with default name in this case) was created on our PandoraFMS server retrieving the data of all commands defined on the command definition conf file.

 

 

 

Configuring monitoring on PandoraFMS web Console

 

We have configured our IBM i partition and chek the pandora_ibmi and the check_Control4i are working, so now we should configure the plugin in the web console in order to use to monitor IBM i.

 

Once we log in into the web console as an administrator user, the first step is to access the console. In the Servers section, we access the Plugins tab.

 

In this tab will appear all the server plug-ins that are installed by default with Pandora FMS.

 

Click on Add.

 

 

The following window will be used to configure the plug-in before registering it.

The first section is general options, where we can set the name we want to give to the plug-in, the type of plug-in, standard or Nagios, the maximum execution time of the plug-in and a brief description.

 

In the next section we define the path where the plug-in is located and a series of macros, which are equivalent to the parameters of which the plug-in is composed, we will define the minimum necessary for this example and an adding just an extra optional parameter as agent alias.

 

 

For more information about macros and how they work please visit the online documentation about it:

https://pandorafms.com/manual/es/documentation/08_technical_reference/05_anexo_server_plugins_development?s[]=field1#macros_de_plugin

 

Finally, if we have added execution parameters, this section will be used to define these parameters by means of macros. We can also add default values to these macros, so that they will be used in case we do not provide a parameter.

In this case, since the only mandatory parameter is the token parameter, the other two will be configured with default values.

 

 

Once we have finished, click on Create. Now we hace our plugin defined ready for deployment.

 

Deploy the server plugin into an agent on PandoraFMS.

 

Complete documentation about server plugins deployment could be found on: https://pandorafms.com/manual/en/documentation/03_monitoring/03_remote_monitoring#monitoring_with_server_remote_plugins

 

Here, we will deploy the server plugin configured before on a test agent, in order to show the basic configuration needed to make it work.

 

The first step is to access the web console. In the resources section, we access the manage agent tab.

 

Here we could select the agent to deploy the plugin or create a new one, in our case we are going to create a new one.

 

Click on create agent and fulfil the name, group and needed fields, then click on create.

 

 

Once created, a toolbar is available on the upper right side, go to the modules tab, select the type ‘create a new plugin server module’, then clic on create.

 

 

  Select the pandora_ibmi plugin we defined before

 

 

Then give it a module name and fullfill the fields configured on the macros for this execution, click on create.

 




That's it the plugin is already configured, wait a couple of seconds and then go to the eye on the upper right side to see the execution results.

 

Once is executed, the plugin generates a new agent with all the commands defined on the command definition conf file:

 

 

From now, we can use the same template and definition to point as many IBMi partition as we want, just defining a new module with different IP addresses or even different command definition conf file for different modules.