¿Cómo configurar un script de estado del servidor en un VPS o servidor Dedicado?

Generalidades

Si tienes un servidor VPS Dedicado, es posible que te interese conocer el estado de ese servidor sin tener que esperar en una ventana de terminal. En su lugar, puedes ejecutar un script que te envíe por correo electrónico esta información sobre el estado de tu servidor.

Funciona generando contenido HTML contiene información en tu servidor, incluyendo:

  • Promedio de carga.
  • Uso de memoria.
  • Conexiones de red abiertas.
  • 10 procesos de memoria principales.
  • 10 procesos de CPU principales.
  • Resultados netstat.
  • Snapshot superior de todos los procesos en ejecución.

Esto solo se aplica a tu servidor web. El acceso de shell a VPS MySQL no está disponible.

Instalarun script de servidor

Esto solo se aplica a tu servidor web. El acceso de shell a VPS MySQL no está disponible:

  • Visita la URL del script. Luego puedes descargarlo en tu navegador:
    Si descargas el archivo visitando la URL, aún debes cargar el archivo a través de FTP.
  • Si puedes acceder por SSH en tu VPS, simplemente puedes correr:
    [server]$ curl -s -o status.rb https://cdn.rawgit.com/watsonian/server-status-report/master/status.rb

    El script se llama status.rb, y el propio script está escrito en Ruby para aprovechar el sistema de plantillas ERB para producir el contenido HTM.

Confirmar si mailx está instalado

Una vez que hayas descargado el script correctamente, debes asegurarte de que el paquete mailx esté instalado en tu PS.

Para averiguarlo, corre este comando:

[server]$ dpkg -l | grep mailx

Si ves un resultado como este:

ii  bsd-mailx        8.1.2-0.20100314cvs-1        simple mail user agent

Significa que está instalado.

Si en cambio ves un resultado como este:

rc  mailx        8.1.2-0.20050715cvs-1        A simple mail user agent

Entonces eso significa que necesitas instalarlo.

Solo puedes instalar mailx en un servidor dedicado con un usuario administrador. Esto se debe a que requiere sudo. Una vez que hayas iniciado sesión, corre el siguiente comando:

[server]$ sudo apt-get install mailx

Crear un cron job

Mira el artículo Crontab para ver detalles sobre como crear un cron job bajo tu usuario shell. Ingresa el siguiente comando en el panel al crear el cron job:

[server]$ /usr/bin/ruby /path/to/script/status.rb | /usr/bin/mail -a "Content-type: text/html;" -s "Status Report: $HOSTNAME" "some@example.com"

Si el comando anterior no funciona, intenta modificar '/usr/bin/ruby' con '/usr/bin/ruby1.8'.

  • Puedes cambiar el tema a lo que quieras.
  • También puedes cambiar el correo a cualquier dirección a la que desees que se envíe el cron del correo.
  • Si deseas enviar el correo a más direcciones de correo, puedes usar la marca -c y pasarle una lista de direcciones de correo separadas por comas.
  • Ejecutarlo una vez por hora probablemente no sea una mala idea, pero puedes correrlo con la frecuencia que desees.

Conclusión

Si configuras todo correctamente, deberías comenzar a recibir correos que se parezcan más o menos a este:

Server status script preview.png

Ver también

 

¿Este artículo ha respondido sus preguntas?

Última actualización el PST.

¿Aún no encuentra lo que busca?