En este nuevo post trataremos los plugins de SERVER DENSITY.

Tanto los plugins nativos de Server Density como los plugins personalizados (SD Custom Plugins).

 
plugins server desity

   

 

 

INSTALACIÓN DE PLUGINS PARA SERVER DENSITY

Antes de empezar, he de reseñar dos enlaces interesantes que nos ayudarán en la instalación de plugins de Server Density:

 

La instalación de plugins para monitorización en Server Density por ahora es solo posible en Linux.

 
 

 

Comenzando a instalar SD plugins

Lo primero que debemos hacer es instalar un paquete extra para usar un plugin.

–> Para Ubuntu o Debian, lo instalaremos así:

apt-cache search sd-agent

 
–> Para CENTOS y Red Hat, lo instalaremos de esta forma:

yum search sd-agent

 

 

Vamos a realizar una práctica de instalación de plugin SD para monitorización de Apache, con Linux Ubuntu.

Info de ayuda sobre Server Apache en Ubuntu
 
En este caso instalaremos el plugin para monitorizar Apache, y lo haremos de esta forma:

sudo apt-get install sd-agent-apache

 

Después nos aseguraremos de que el módulo mod_status está instalado.

Lo podemos habilitar de esta forma:

sudo a2enmod status

enable module status

 

Los módulos habilitados los podemos encontrar en /etc/apache2/mods-enabled/

 

mods-enabled-apache

 

Y si comprobamos el archivo status.load, podremos ver que el módulo está habilitado:

status_module habilitado
 
Si no estuviera habilitado, deberíamos instalar primero el módulo, y después habilitarlo añadiendo :

LoadModule status_module modules/mod_status.so

 
El paso siguiente es añadir la siguiente linea en nuestro httpd.conf (si no tenemos dicho archivo, probablemente debemos añadirlo en apache2.conf):

ExtendedStatus On

Con esta línea hemos habilitado la salida de mod_status
 

 
Reiniciamos Apache y comprobamos que no aparecen errores después de añadir dicha linea. Si no aparece ningún error, mod_status está instalado correctamente.

Los errores de Apache los podemos comprobar con:

tail -n 25 /var/log/apache2/error.log

 

Directorio de logs de error en Apache:

comprobar errores apache
 
A continuación configuramos la ubicación desde la que la salida de estado se podrá ser analizada por el agente, añadiendo lo siguiente en el archivo /etc/apache2/conf.d/status.conf (mejor que modificar el archivo httpd.conf o apache2.conf):

<Location /server-status>
SetHandler server-status
Order Deny,Allow
Deny from all
Allow from 127.0.0.1 </Location>

 

Ahora, la salida del estado será accesible desde la url: http://localhost/server-status

localhost solo será accesible desde el propio server. Para hacer la prueba desde fuera de la red, reemplazaremos localhost con la IP del server.
 
Si estamos utilizando un server sin modo grafico, podemos comprobarlo con :

curl http://127.0.0.1/server-status?auto

 
En el caso de esta práctica, el server está funcionando en el puerto 82, así que ejecutaremos

curl http://127.0.0.1:82/server-status?auto

 
Y obtendremos lo siguiente:

comprobar salida de estado

 

Entonces reiniciamos Apache para que los cambios hagan efecto.

/etc/init.d/apache2 restart

 

 

Configuración del plugin Apache de Server Density

Tras haber instalado el plugin, lo configuraremos. Recordemos que el archivo de configuración con extensión .yaml ha de estar situado en :

{agentdir}/conf.d/apache.yaml

en nuestro caso será

/etc/sd-agent/conf.d/apache.yaml

 
En este punto es interesante sugerir que copiemos el archivo yaml.example como apache.yaml, y trabajar desde el nuevo archivo apache.yaml
Y lo configuraremos añadiendo lo siguiente en dicho archivo (esta será la configuración por defecto):

init_config: instances:
- apache_status_url: http://localhost/server-status?auto

 

También podemos utilizar el archivo de ejemplo de configuración del plugin que ya existe en el subdirectorio conf.d (lo encontraremos en /etc/sd-agent/conf.d/), y lo haremos de esta forma:

cd /etc/sd-agent/conf.d
mv apache.yaml.example apache.yaml

 
Reiniciamos el agente:

sudo /etc/init.d/sd-agent restart

reiniciar agente serverdensity
 
Verificamos la configuración para comprobar que el plugin ha sido correctamente instalado:

sudo /etc/init.d/sd-agent info

 
Y si el plugin ha sido configurado correctamente obtendremos un resultado parecido a este:

apache ----- - instance #0 [OK] - Collected 8 metrics & 0 events

 

Puede verse en la captura de pantalla que todo marcha bien:

resultado sd-agent info

 

 
Y a continuación, podremos ver los widgets para Apache disponibles en nuestro listado de métricas disponibles en el servidor:

metricas apache server density

 

 
Y podremos comenzar a añadir widgets de todo tipo sobre el estado de nuestro server Apache. En la captura estamos creando un nuevo widget de gráfica para Apache.

widget graficos plugin Apache serverdensity
 

 
En los dashboards de Server Density ya podremos empezar a añadir widgets con las métricas de Apache.
 
En este caso se trata del dispositivo que se encuentra en la IP pública del server (sobre el puerto 82, aunque no es lo normal, lo estamos realizando de esta forma para nuestro servidor de pruebas. No es relevante para este tutorial pero lo aclaro por si os fijáis en el :82 que aparece en algunas capturas y os resulta extraño ):

opciones widget grafico apache

 

 

PLUGINS PERSONALIZADOS SERVER DENSITY (SD Custom Plugins)

Si no existe un plugin nativo para aquello que deseamos monitorizar, podemos crear nuestros propios plugins personalizados, por medio de archivos Python. Esto nos ofrece multitud de posibilidades.

 

Cómo se instalan los plugins personalizados de Server Density

Vamos a crear un directorio en nuestro servidor que contendrá los scripts de los plugins personalizados.

Por ejemplo lo crearemos en el directorio

/usr/local/sd-agent-plugins

y lo haremos con el comando:

sudo mkdir -p /usr/local/sd-agent-plugins

 
Luego hemos de decirle al agente que ese directorio existe:

Abrimos el archivo config.cfg (para configurar el agente), situado en el directorio

/etc/sd-agent/config.cfg

y configuramos el directorio de nuestros plugins, en este caso, en

/usr/local/sd-agent-plugins

(No incluiremos la barra diagonal del final).
 

Así que añadimos lo siguiente en el archivo config.cfg:

plugin_directory: /usr/local/sd-agent-plugins

 
configurar directorio plugins personalizados SD

y descargamos el plugin en dicho directorio.
 
Podemos copiar y pegar directamente el texto del script, si estamos navegando desde un servidor con entorno gráfico, abriremos el explorador y navegamos por la página de Custom plugins de Server Density en Github.

custom plugins server density github
 
El archivo deberá tener extensión .py , por ejemplo con el plugin custom de Ping para Server Density, lo descargaremos desde Github en el directorio /usr/local/sd-agent-plugins

custom plugin Ping sd agent github
 
Y a continuación vemos los plugins ya descargados en el directorio mencionado anteriormente:

directorio custom plugins sd agent
 
Para descargar los plugins de SD disponibles en Github, hemos de descargar la versión RAW, sino Github nos descargará el html.
 
descargar plugin github raw
 
Entramos en el directorio donde descargaremos los plugins:

cd /usr/loca/sd-agent-plugins

 

Y descargamos la versión RAW con wget de esta forma:

wget https://raw.githubusercontent.com/bencer/sd-agent-plugins/ping/Ping/Ping.py

 
descargar plugin ping SD github

 
Por último, tras descargar cualquier custom plugin de Server Density, hemos de reiniciar de nuevo el agente de SD para que se cargue el plugin:

/etc/init.d/sd-agent restart

 

 

Comprobar las nuevas métricas en la pestaña CUSTOM PLUGINS en SD

Vamos a comprobar que los plugins que hemos instalado están arrojando métricas sobre nuestro dispositivo.

En el menú Devices (dispositivos), elegir el server adecuado, y después la opción (pestaña) Custom Plugins:
 
nuevas metricas custom plugins sd

 
Podemos ver que los Custom plugins SD han comenzado a arrojar info en nuestra sección de plugins custom en Server Density.
 

 

¡NO DUDES EN PROBAR SERVER DENSITY AHORA!


 

DATOS DE CONTACTO DE SERVER DENSITY

Podeis encontrar a Server Density en:

Email: hello@serverdensity.com

Twitter: @serverdensity

Facebook: https://www.facebook.com/ServerDensity/

Web: Serverdensity.com


Etiquetas del articulo: ,


Suscríbete para acceder a la zona privada

Suscribiéndote a la lista de correo de El Taller del Bit conseguirás entrar a la zona privada de descargas con materiales exclusivos (ebooks, artículos privados, plugins, descargas de exámenes resueltos ...)

Gracias. Te has suscrito con éxito!