Esta página está destinada a proporcionar un manual para la documentación de un troubleshooting, cuando un cliente reporta alguna incidencia, ya sea con uno de sus servidores o sus dispositivos.
Abarcaremos desde la recepción del mail por parte del cliente con la descripción del problema, pasando por el análisis de servidores y equipos, hasta conclusiones y recomendaciones para que pueda solucionarse la incidencia reportada.
Este documento está basado en las pruebas mencionadas en la página Proceso de resolución de problemas de dispositivos en NMIS.
1. Descripción del problema
Para iniciar con la documentación, debemos tener una descripción muy bien detallada por parte del cliente que nos dé un buen panorama de la situación que está presentando. Para esto, debemos resolver algunas preguntas importantes:
a) Descripción de la incidencia: ¿qué está sucediendo? ¿desde cuándo?
b) ¿En qué servidor o servidores se está presentando la incidencia?
c) Descripción del servidor o servidores en los que se está presentando la incidencia: CPUs, RAM, DD, nodos totales.
d) ¿En que nodo o nodos se está presentando la incidencia?
e) Detalles adicionales, por ejemplo: configuración actual de cron de NMIS por lo menos, configuración actual del archivo /etc/mongod.conf, configuración de parámetros de base de datos en /usr/local/omk/conf/opCommon.nmis, si se modificó algún archivo recientemente, si alguna configuración realizada ya sea en el servidor o en los equipos provocó la incidencia.
2. Análisis de causas
En este apartado se realizará la evaluación de todas los posibles motivos que llevaron a que la incidencia ocurriera según reporta el cliente en cuestión, revisando cada uno de los parámetros de importancia del servidor, desde archivos de configuración importantes, pasando por hardware, software y, de ser necesario, revisión a fondo de los nodos involucrados.
Es importante que el cliente envíe un NMIS Support Tool y/o un OMK Support Tool desde el inicio, esto para tener una copia de los archivos de configuración más importantes en el momento del reporte de la incidencia.
2.1. Análisis de Support Tool
Dependiendo del escenario, comenzaremos revisando los archivos importantes contenidos en el Support Tool, se mencionan algunos de ellos a continuación:
- Carpeta conf: Config.nmis, Nodes.nmis, Users.nmis
- Carpeta logs: error_log, event.log, nmis.log.
- Carpeta models: revisar si hubo algún cambio reciente que pudiera afectar.
- Carpeta system_status: cpuinfo, disk_info, iostat, meminfo, top.
- Carpeta system_status/apache: revisar los archivos de configuración.
- Carpeta system_status/cron: revisar si el crontab contiene algún comando que pueda crear conflicto con otro cron.
- Carpeta system_status/cron.d: revisar si no hay un cron duplicado y que al menos el cron de nmis esté configurado de manera correcta.
2.2. Análisis de cambio de configuraciones
En este análisis nos servirá de mucha ayuda el Support Tool enviado por el cliente, ya que podremos darnos cuenta si algún archivo de configuración fue modificado en los últimos días.
De igual forma, debemos tener acceso al servidor en cuestión, para poder verificar si se hizo algún backup y así poder restablecer el archivo a los parámetros anteriores.
Las principales carpetas a revisar son:
- /usr/local/nmis8/conf
- /usr/local/omk/conf
- /etc/cron.d
2.3. Análisis de hardware y software
Ahora, procederemos a indagar si el hardware y el software del servidor se encuentran en estado óptimo. Para esto, realizaremos una serie de ejecución de comandos que se describen a continuación.
2.3.1. Comando top
Este comando nos dará información de todos los procesos que se están ejecutando en este momento en el servidor y el porcentaje de utilización de CPU y memoria RAM.
Siempre será importante basarnos en el load average y en el %CPU, ya que si estos valores son altos, tendremos seguramente un problema en algún o algunos procesos que se están ejecutando actualmente.
2.3.2. Velocidad de lectura y escritura de discos
Con este análisis, podremos darnos cuenta si existe una falla física en los discos del servidor.
Basta con ejecutar un par de comandos:
- dd if=/dev/zero of=/data/omkTestFile bs=10M count=1 oflag=direct
- dd if=/data/omkTestFile of=/dev/null 2>&1
Y después analizar la salida con los siguientes valores:
- 0.0X s, parámetros correctos.
- 0.X s, hay una advertencia (y podría generar un problema).
- X.0 s, es crítico (y existe un problema).
2.3.3. Comando iostat
En
2.3.4. Revisión de filesystems
En
2.3.5. Revisión de demonios
En
2.4. Análisis de nodos
En
3. Análisis de resultados
En
4. Conclusiones y recomendaciones
En