Cómo KeyBank usó Elastic para crear una solución de monitoreo empresarial
Este blog es una recapitulación de una conversación para la comunidad presentada en Elastic{ON} Tour Chicago en 2019. ¿Te interesa ver más conversaciones como esta? Revisa el archivo de conferencia o descubre cuándo llegará Elastic{ON} Tour a una ciudad cercana a la tuya.
KeyBank es uno de los bancos más grandes de los Estados Unidos. Su sistema de monitoreo integral ha acompañado el crecimiento del banco. Con más de 1100 sucursales y 1400 cajeros automáticos en 15 estados, la infraestructura de KeyBank evolucionó a un “arca de Noé del diseño”, dice Mick Miller, gerente sénior de productos, Cloud Native en KeyBank. En otras palabras, tenían dos ejemplares de todo, lo que daba como resultado 21 islas de datos diferentes. “Descubrimos que nuestro tiempo promedio de resolución era muy lento, pero nuestro tiempo promedio para encontrar al culpable era muy rápido”.
Descubriendo la raíz
Con tantos sistemas, y sin manera de correlacionar de forma fácil los datos en los silos, el equipo no tenía visibilidad de la causa raíz de los problemas. Las sucursales reportaban un rendimiento deficiente de las estaciones de trabajo y las calificaciones de la app de banca móvil bajaban, pero sin datos de observabilidad correlacionados, tenían las manos atadas. Además, los sistemas de logging y métricas comenzaron a quedarse sin capacidad de almacenamiento, lo que detenía todos los monitoreos nuevos, y el costo de actualización de la licencia del proveedor anterior era demasiado elevado para incluso considerarlo.
A medida que el equipo comenzó a acumular una gran cantidad de solicitudes de monitoreo, agotando el tiempo que tenían para desarrollar un sistema nuevo, surgió un problema incluso más crítico: la pérdida de clientes debido al rendimiento. Por ejemplo, cuando algunos clientes ingresaban para abrir cuentas, el sistema se caía reiteradamente, lo que creaba retrasos prolongados y una experiencia del usuario deficiente. Cuando los clientes potenciales no pueden abrir una cuenta con facilidad, encontrarán otro banco.
Respaldo de la observabilidad con Elasticsearch
Con sistemas que ya no proporcionaban los logs y las métricas necesarios para investigar problemas no relacionados con la seguridad, KeyBank recurrió al Elastic Stack. Gracias al cluster de desarrollo de Elasticsearch que configuraron, desplegaron Winlogbeat y Metricbeat en miles de estaciones de trabajo en toda su red de sucursales y comenzaron a indexar datos de métricas y logs. Unos días después, tenían una gran cantidad de información y habían identificado tres causas raíz: E/S de disco constantemente alta, memoria disponible baja y una red completamente saturada.
A medida que más empleados de KeyBank veían los datos de tiempo de respuesta visualizados en Kibana, aumentaba el sentido de urgencia. El equipo necesitaba comenzar un esfuerzo de actualización masiva en todo el sistema, y la administración dio luz verde para desplegar el primer cluster de producción. La afluencia de datos de observabilidad les proporcionó la visibilidad que necesitaban, pero se encontraron con otro problema: el flujo desbordaba su entorno de desarrollo. Se dieron cuenta de que necesitaban un plan de crecimiento.
“La mala noticia: realmente es imposible predecir la carga de trabajo con precisión. La buena noticia, sin embargo, es que aprendimos en el camino que debíamos cambiar. Así que diseñamos la arquitectura de nuestro sistema para asegurarnos de poder, sin tiempo de inactividad, reconfigurar nuestros sistemas”. — Mick Miller, KeyBank
Escalado quirúrgico
A medida que crecen sus necesidades de monitoreo, KeyBank evoluciona el sistema de monitoreo de Elasticsearch usando un enfoque iterativo para escalar su sistema integral. Después de algunos ajustes, su arquitectura ahora sigue algunos principios básicos que les permiten un enfoque “quirúrgico” en cuanto a los cambios que realizan para no afectar el sistema completo. Cada uno de los niveles lógicos debe tener las características siguientes:
- Escalable de forma independiente
- Altamente disponible
- Tolerante a fallas
Afortunadamente, estas son áreas en las que Elasticsearch, y su arquitectura horizontal, se destacan. El rendimiento del proceso integral de KeyBank desde la ingesta hasta la indexación de datos ahora es de menos de medio segundo; así que si no cumplen con ese tiempo de respuesta, solo deben escalar horizontalmente. “Hay muchos beneficios inesperados de tener todos los datos en un lugar, y creemos que Elasticsearch es una solución excelente para eso”, afirma Miller.
Obtén más información sobre cómo (y cuándo) escalar tu sistema Elasticsearch viendo How KeyBank Used Elastic to Build an Enterprise Monitoring Solution (Cómo KeyBank usó Elastic para crear una solución de monitoreo empresarial) de Elastic{ON} Tour Chicago 2019. También conocerás cómo implementaron la automatización y la virtualización equilibrada en recursos informáticos físicos, y ahorraron más de USD 5 millones.