En producción: consejos sobre fiabilidad – Parte 2/6
Siguiente entrega de la serie sobre entornos en producción y alta disponibilidad. En la primera parte me centré en introducir algunos conceptos sobre los problemas asociados y algunas métricas muy básicas. No se trata de profundizar demasiado, sino de que todos los usuarios comprendan la base de los problemas que causan falta de fiabilidad.
En esta segunda parte me centraré en el mantenimiento. Y es que a nivel técnico, el mantenimiento se puede realizar desde muy diversos puntos de vista y de varias formas…
ÍNDICE:
Mantenimiento aplicado a computadoras
Al igual que ocurre en otros campos, desde el punto de vista de un técnico de sistemas informáticos, existen varias formas de actuar. Es decir, una serie de procedimientos que reúne normas y técnicas para poder hacer que un sistema funcione de forma correcta.
Los procedimientos han ido variando, desde los que se limitaban a reparar una vez el sistema había dejado de funcionar, hasta los que se encargan de prevenir o reducir el impacto de futuras fallas que se pudieran producir. Todo con el objetivo de mejorar la productividad del equipo.
Entre las prácticas habituales del mantenimiento están las revisiones, ajustes, limpieza, sustitución de piezas, etc. Y para realizar estas tareas específicas, la formación del técnico y cumplir una serie de protocolos, es vital, ya que obviar esto podría hacer que una manipulación rutinaria sea peor que el propio problema que se trataba de solucionar.
Todo ello para garantizar:
- Que surgen las menos averías o fallas posibles.
- Garantizar un buen estado de los equipo para que duren más.
Como el mantenimiento no es suficiente, cuando surge la falla se pasa al diagnóstico, donde se determina el origen del problema, y a la reparación.
Plan de mantenimiento
Para todo sistema se ha de contar con un plan de mantenimiento. Es decir, una hoja de ruta, un protocolo de actuación trazado para que se pueda realizar todas las acciones de la forma correcta y en el menor tiempo posible. Por tanto, en tu empresa u organización, deberías contar con un plan para evitar que las fallas lastren la productividad.
Por ejemplo:
- Determinar los objetivos a cumplir: terminar la cantidad de fallos que se pueden tolerar, o los límites a los que se puede llegar en caso de una falla. La disponibilidad que debe tener el sistema, etc.
- Cálculo de costes: determinar la inversión necesaria para las tareas de mantenimiento en función de las posibilidades y necesidades de la organización.
- Recursos necesarios: personal técnico, herramientas, repuestos, etc. Disponer de un inventario es esencial para saber si estás preparado.
- Análisis: la experiencia y el feedback es muy importante en estos casos. Con forme se van produciendo tareas de mantenimiento o de reparación, se van aprendiendo cosas que se pueden aplicar en futuros casos. Ya sea para prevenir futuras fallas de similar naturaleza mediante mantenimiento, o poder solucionar las fallas de forma más rápida para dejar el sistema fuera de servicio el menor tiempo posible.
- Datasheets/manuales de proveedores/fabricantes: conocer bien los límites, tolerancias, rangos de trabajo seguros, etc., del equipamiento y sistemas es esencial para un buen mantenimiento y prevenir fallas.
- Seguridad: conocer y respetar los estándares y protocolos de seguridad a la hora de operar. Por la propia integridad del técnico y de los equipos que se manipulan.
- Formación o contratación: para disponer del personal técnico adecuado, como administradores de sistemas, expertos en seguridad, técnicos de hardware, desarrolladores, etc.
- Elegir un tipo de mantenimiento adecuado: véase siguiente apartado.
- Revisiones: siempre se debería revisar todo el protocolo o plan y realizar correcciones y mejoras constantes. Especialmente si se han realizado cambios en el hardware o software que obliguen a modificar los procedimientos.
Tipos de mantenimiento
Aunque parezca estúpido, existen estudios a nivel de sistemas industriales, que aseguran que hacer que un mismo sistema lo use siempre el mismo usuario puede hacer que dure más tiempo sin fallas que si es compartido por varios usuarios. En computación puede ocurrir algo similar. Por un lado podría fomentarse cierta «responsabilidad» al tener un equipo propio y no compartido. Además, algunos usuarios tienen ciertas manías diferentes y, aunque no causen daños al sistema, sí que podrían entorpecer a la productividad de otro usuario. Por ejemplo, cambios de configuración, diferentes ubicaciones para almacenar datos, etc.
Se trata de una cuestión de pérdidas. Si no se hace un buen mantenimiento llegarán estas pérdidas tarde o temprano. Ya sea en forma de pérdidas de datos, de tiempo, y/o de dinero.
Las computadoras sufren un desgaste constante por su uso, como cualquier otro sistema. Por tanto, no se deberían tratar como un equipo diferente a cualquier otro que necesita de un mantenimiento. Y según lo crítico que sea el sistema, se deberá buscar el mejor compromiso para las revisiones. Su frecuencia puede ser diaria, semanal, mensual,…
En cuanto a los tipos de mantenimiento, se pueden destacar varios. Cada empresa u organización debería evaluar sus necesidades y situación para elegir la más adecuada.
Usar herramientas GMAO o CMMS (Computerized Maintenance Management Software) puede ayudar bastante a estas labores, especialmente en empresas de mayor tamaño y sistemas computacionales complejos.
Mantenimiento predictivo
El mantenimiento predictivo es aquel que se basa en inspecciones periódicas para determinar el estado y operatividad de los equipos e instalaciones de las que dependen éstos. Para que eso sea posible, se necesita tener unos profundos conocimientos sobre los sistemas sobre los que se opera.
Por ejemplo, podrías usar los sensores del equipo para conocer la temperatura a la que está trabajando, y compararlo con los rangos seguros recomendados por el fabricante, observar las tolerancias en cuanto a alimentación, horas de trabajo vs vida útil, conocer bien las partes que suelen fallar con mayor frecuencia y anticiparse al fallo, etc.
Este tipo de mantenimiento tiene sus ventajas:
- Se pueden detectar fallas en etapas iniciales o antes de que se produzcan, pudiendo aplicar medidas correctivas. Por ejemplo, si un microprocesador está llegando a temperaturas al límite, se puede mejorar la refrigeración antes de que se produzcan problemas de electromigración, reinicios, etc.
- Vida útil más larga, ya que algunas fallas, una vez se producen, pueden afectar a otros susbsistemas, afectando a la durabilidad. Por ejemplo, siguiendo con el caso anterior, un chip sobrecalentado podría generar suficiente temperatura como para afectar térmicamente a otros dispositivos adyacentes, acortando su vida.
- Muchas tareas suelen ser on-condition, o en caliente, es decir, sin detener el sistema.
- Ahorro de tiempo, costes, y repuestos.
En cuanto a las desventajas:
- Necesita de personal altamente cualificado que podría implicar un aumento en sueldos o contrataciones externas.
- La inversión inicial para ponerlo en marcha y tener todo lo necesario es más costoso. Por ejemplo, aparatos de medición, monitorización, etc.
Ejemplo de plan de mantenimiento predictivo para un sistema informático:
Se debe buscar la frecuencia adecuada para analizar el sistema, dependiendo de lo crítico que sea el sistema. Un ejemplo podría ser:
- En caliente:
- Monitorización de parámetros que puedan generar fallas (voltajes, RPM de los ventiladores, temperatura, rendimiento de dispositivos que puedan indicar posibles problemas, tasas de fallos en unidades de memoria,…).
- Inspecciones de componentes, cableado, etc. Para buscar deterioro, suciedad, malos olores (olor a quemado), condensadores hinchados,…
- En frío:
- Limpieza física de los sistemas.
- Comprobación de la conductividad del cableado.
- Inspección del estado de puertos.
- Cambio de componentes que se intuya que están llegando al fin de su vida útil.
Mantenimiento preventivo
El mantenimiento preventivo es otro tipo de mantenimiento. Es también sofisticado, como el primero, pero puede prevenir fallas de una forma muy eficaz. Se basa en la fiabilidad de los equipos, planificando periodos de revisiones o mantenimientos frecuentes cuando se estima que es necesario.
Al igual que el predictivo, también se puede hacer en caliente, con los equipos en marcha, en algunos casos. Por tanto, se puede mejorar la productividad y disponibilidad del sistema.
Por ejemplo, se podrían sustituir algunas piezas que se sospeche que están a punto de fallar, como unidades de refrigeración que hayan cumplido el tiempo límite de horas especificadas por el fabricante, unidades de almacenamiento que estén próximas a los ciclos máximos de acceso, etc.
Deberías saber que, dentro del mantenimiento preventivo, existen varios subtipos:
- Programado: cuando se programan revisiones periódicas. Se puede hacer en función de la vida útil de cada elemento del sistema, o del tiempo de funcionamiento que haya estado activo. Por ejemplo, según la cantidad de horas que lleva un ventilador funcionando, los ciclos de escritura y lectura de un disco duro, etc.
- Predictivo: se basa en conocimientos profundos del sistema para saber el momento adecuado. Para ello se debería tener experiencia y conocer bien factores como MTTB, MTBF y MTTF que expuse en la primera parte de esta serie de artículos.
- Oportunidad: es aquel que aprovecha tiempos de inactividad del sistema. Por ejemplo, cuando termina la jornada laboral, en días no laborales, cuando se realiza alguna parada programada del sistema para cualquier otra cosa, etc.
Ejemplo de plan de mantenimiento preventivo para un sistema informático
Un ejemplo de este tipo de mantenimiento en un sistema computacional puede ser:
- Diario:
- Copias de seguridad.
- Análisis de malware y amenazas.
- Instalación de actualizaciones.
- Gestión de archivos temporales.
- Apagado seguro del sistema usando los mecanismos para ello, y no desconectando el cable o apagando la PSU.
- Conseguir un buen protector contra sobretensiones.
- Controla la temperatura de todos los dispositivos.
- Mensual:
- Mantenimiento de los FS (p.e.: uso de herramientas como fsck, badblocks, desfragmentación, si es necesaria…).
- Análisis de problemas físicos en los medios de almacenamiento y otros elementos.
- Limpieza lógica y física.
- Anual:
- Crear una instantánea o imagen del sistema completo.
- Limpieza a fondo.
- Según sea necesario:
- Desinstala o deshabilita el software y servicios que no usas.
- Cambio de contraseñas para prevenir ataques.
Mantenimiento correctivo
El mantenimiento correctivo es el que se realiza cuando ocurre la falla. Es decir, más que un mantenimiento es una reparación directa. No obstante, puede implicar acciones más allá de la simple reparación, como inspecciones visuales o de otro tipo, limpieza, etc.
Suele ser el más habitual en la mayoría de los casos, pero puede tener consecuencias sobre la productividad o disponibilidad del sistema. Por eso, no es apto para todo tipo de empresas u organizaciones.
Una PYME, o un autónomo, tal vez se lo puede permitir y ahorran dinero evitando otros mantenimientos complejos como los anteriores. Además, los tienes de inactividad para ellos no suponen pérdidas tan grandes. Pero una empresa donde se necesita la máxima productividad y disponibilidad, no es el mantenimiento más adecuado.
Dentro de este tipo de mantenimiento se puede distinguir entre:
- Planificado: cuando se ha producido una falla que no afecta del todo al funcionamiento de todo el sistema y se aplica un mantenimiento correctivo cuyo momento se conoce con antelación. De ese modo, se puede realizar en el momento más apropiado para que no afecte a la productividad o afecte lo menos posible. Al conocer el momento, se puede reunir al personal técnico, herramientas, repuestos y todo lo necesario con antelación.
- No planificado: cuando la falla surge de forma imprevista, y suele afectar de forma íntegra al sistema. En este caso, se debe reunir al personal adecuado y recursos necesarios para corregir el problema en el menor tiempo posible. Algo que es complicado al actuar sobre la marcha…
Ejemplo de plan de mantenimiento correctivo para un sistema informático
Este tipo de mantenimiento es directamente una reparación cuando algo ocurre. Un ejemplo habitual puede ser:
- Restaurar una copia de seguridad para recuperar datos perdidos.
- Formatear y reinstalar el sistema operativo.
- Eliminar malware.
- Sustituir componentes dañados.
Mantenimiento centrado en la fiabilidad o RCM
El mantenimiento centrado en la fiabilidad o RCM (Reliability Centred Maintenance) es una técnica dirigida a disponer de un buen plan de sustitución y revisión periódica. Aunque mejora de forma considerable la fiabilidad del sistema, resulta uno de los más caros de los tipos vistos hasta ahora. El motivo es que se suelen sustituir/reacondicionar los componentes antes de que fallen.
Se comenzó usando en la industria de la aeronáutica, donde un fallo suponía grandes pérdidas personales y económicas. Pero se ha ido expandiendo a otros sectores, como el de la computación. En este caso, solo merecería la pena en aquellos sistemas críticos donde un problema pueda implicar efectos casi catastróficos.
Para trazar un buen plan bajo el método RCM, todo técnico, o mantenedor, debería hacerse 7 preguntas:
- ¿Cuál es la función de cada subsistema/equipo?
- ¿Cómo suceden los fallos de cada subsistema/equipo?
- ¿Cuál es la causa de la falla?
- ¿Qué parámetros monitorizar (qué datos alertan de anomalías)?
- ¿Cuáles son las consecuencias de cada falla (catalogar su criticidad)?
- ¿Cómo se puede evitar cada falla?
- ¿Qué hacer cuando la falla es inevitable?
Con ello se podría trazar un plan para actuar, y que debería tener las siguientes fases:
- Fase 0: catalogar equipos, partes del sistema, y piezas. Se debe hacer un listado de los equipos y partes del equipo. Por ejemplo, podrías documentar tanto los equipos informáticos disponibles, sus componentes, piezas menores (cables, tornillos,…).
- Fase 1: analizar de forma detalla al sistema y cada una de sus partes listadas en la fase 0. Por ejemplo, conocer cómo se ensamblan los componentes, los límites bajo los que funcionan adecuadamente, algunas particularidades técnicas, etc. La comunicación con los proveedores y la revisión de datasheets, y manuales podría ser de gran ayuda. También se debería conocer bien la relación entre partes para determinar cómo pueden afectar unas a otras. Por ejemplo, conocer que si la PSU del sistema suministra picos o sobretensiones a una placa base, podría dañar algún componente de ésta.
- Fase 2: determinar fallos funcionales y técnicos. Una vez sabes todo lo que tienes, y cómo funcionan o interactúan todas las partes, ahora es el momento de determinar las fallas funcionales y técnicas. Dicho de otro modo, se establece que si uno de los items listados (en la fase 0) no está desempeñando su función (establecida en la fase 1), se estaría ante una falla. Además, se debería ir documentando y teniendo un historial de averías para obtener mejor experiencia. Por ejemplo, si la bomba de refrigeración líquida no está haciendo llegar líquido al bloque de refrigeración, se estaría ante una falla. En este caso, a su vez, podría derivar en más de una si el chip refrigerado sobrepasa cierta temperatura límite.
- Fase 3: modos de fallo y causas. Aquí se determina las causas por las que ha sucedido e fallo, definiendo las circunstancias bajo las que se dan para poder prevenir futuros problemas similares. Por ejemplo, si un monitor no funciona, podría deberse a una falla del propio hardware del monitor, a un cable mal conectado o en mal estado, o a la tarjeta gráfica que no envía señal. Por lo general se comienza a analizar desde la posible causa más leve hasta la más compleja, para descartar que sea alguna estupidez la que está generando el fallo.
- Fase 4: análisis de las consecuencias del fallo. No basta con simplemente buscar el origen y repararlo. También se deben clasificar (asumibles, tolerables, graves y críticos) según las consecuencias. Por ejemplo, un fallo en un LED podría no suponer problema alguno, pero un fallo en una unidad de almacenamiento podría suponer pérdida de datos muy valiosos.
- Fase 5: determinar las medidas preventivas necesarias. Cuando se conoce bien al sistema y se tiene experiencia, se pueden evitar o atenuar los efectos de algunas fallas. En esta fase deberías trabajar para que en el futuro no tengas los mismos problemas mediante monitorización, modificación de la forma en la que se trabaja, formación de los usuarios, verificaciones online/offline del equipo, mejoras o actualizaciones de algunos elementos, tareas condicionales (cuando se necesitan ajustes), tareas sistemáticas (programadas), grandes revisiones (overhaul o hard time), etc. Todo para prevenir fallas.
- Fase 6: agrupar medidas preventivas en categorías. Pueden ser tareas de mantenimiento, mejoras técnicas/ampliaciones/actualizaciones, formación de usuarios para evitar rutinas que precipiten los fallos, etc.
- Fase 7: poner en práctica las medidas anteriores, es decir, implementar lo aprendido en las anteriores fases para evitar fallas futuras. Además, se debe evaluar las medidas adoptadas y determinar si realmente son efectivas o necesitan modificaciones para mejorar aún más. Ya sea basándose en las recomendaciones del fabricante o proveedor del sistema, o basándose en estudios propios teniendo en cuenta las peculiaridades o cargas de trabajo específicas.
Una vez ya conoces la forma de actuar, lo siguiente es ir en busca de esa ansiada fiabilidad, de lo que versará la siguiente parte de esta serie de artículos…
Más consideraciones técnicas
Deberías saber algunos datos de interés, especialmente si eres técnico. Algunas afirmaciones que suelen cumplirse en la mayoría de los casos y que te podrían ayudar:
- La mayoría de los problemas de fiabilidad debidos a defectos de fabricación suceden en los primeros instantes. Por eso lo de esperar un tiempo prudencial antes de hacerse con una tecnología disruptiva que acaba de emerger…
- Cuando ocurre un fallo de hardware una vez, es hasta 100 veces más probable que vuelva a ocurrir. En un alto porcentaje, las máquinas fallan por la misma causa. Por tanto, si se comprueba que un sistema falla, no esperes que sea algo puntual y te lances a adquirirlo.
- Sistemas con undervolting y overclocking suelen fallar hasta un 5% más. Cuidado con productos que ya vienen así de fábrica al ser ediciones especiales, etc.
- Portátil vs sobremesa, siempre el sobremesa vencerá en términos de fiabilidad. Y lo hace por dos motivos principalmente: refrigeración y movilidad (golpes, vibraciones,…). Pero, esto se compensa con que el hardware de los equipos portátiles suele ser más confiable que el de un equipo de escritorio, lo que lleva a que las diferencias no sean tan grandes. Una cosa compensa la otra.
- OEM vs Retail, en este sentido, invirtiendo un poco más de dinero para conseguir la versión retail te podría suponer ventajas en cuanto a garantías y soporte. Además, si son componentes susceptibles a golpes y vibraciones, el empaquetado del retail podría hacer que lleguen a ti en mejores condiciones.
- Si ves una caja dañada cuando vas a adquirir un producto, rechaza ésta. Aunque el dispositivo funcione correctamente, significará que ha podido sufrir un golpe durante el proceso de logística. Aunque el problema no se manifieste de forma temprana, podría estar dañado.
Pingback: Guía completa: sistemas de refrigeración para electrónica |