La virtualización y las licencias flexibles ayudan a impulsar la drástica modernización de CSG

La mayoría de las empresas están en proceso de transformar sus operaciones de TI, de locales a la nube, de físicas a virtuales. Y con la aparición del COVID-19, casi todas las empresas están acelerando su viaje de modernización.

Tal es el caso de CSG, un proveedor de servicios de interacción con el cliente para la industria de las telecomunicaciones y el cable con 35 años de antigüedad. La empresa equipa a los proveedores de cable más grandes de América del Norte con soluciones digitales para gestionar de manera más eficiente las relaciones con los clientes, la facturación y las operaciones.

Hace unos años, CSG se encontraba bajo las limitaciones de los procesos obsoletos, agravadas por la falta de compromiso de los nuevos propietarios de aplicação . Así como CSG ayuda a sus clientes a modernizarse, llegó el momento de evolucionar sus propias operaciones.

La vicepresidenta de ingeniería de software de CSG, Erica Morrison, recibió la tarea de ayudar al equipo de ingeniería operativa de CSG a establecer una organización y una cultura DevOps, a pesar de que anteriormente solo había trabajado en el área de software.

“Es un shock para el sistema que un desarrollador se involucre repentinamente en el mundo de las operaciones y vea de frente los desafíos que enfrenta”, afirma. “Sin duda, me hizo valorar aún más lo que hacen todos nuestros equipos de operaciones”.

Aplicar las mejores prácticas de desarrollo a lo que históricamente era un equipo exclusivamente de operaciones posicionó a CSG para enfrentar una serie de desafíos: aprovechar capacidades de F5 que no habían usado antes, agregar nuevas herramientas y adoptar un acuerdo de licencia empresarial que brindara la flexibilidad necesaria.

Una serie de desafíos

Erin Garrigan era el scrum master del equipo en ese momento. Actualmente como supervisora, relata varias iniciativas que se sumaron a lo que CSG imaginó como un plan de cinco o incluso de diez años en 2016.

“Desde un punto de vista técnico, teníamos demasiados procesos manuales en torno a los cambios y no suficiente visibilidad sobre quién hacía qué”, afirma. Muchos equipos diferentes tenían acceso a nuestros dispositivos y no contábamos con los controles robustos que necesitábamos.

Éstos no fueron los únicos problemas. Había inestabilidad en toda la infraestructura y una falta de monitoreo y alertas generales de la salud significaba que el equipo a menudo no se daba cuenta cuando los dispositivos estaban en mal estado hasta que escuchaban sobre los problemas de los clientes. La modernización del hardware fue otra preocupación importante.

Transformación a través de infraestructura como código

El primer y más grande proyecto del equipo fue convertir todo en código fuente utilizando F5 iApps. Dado que los procesos de CSG eran manuales, comenzaron implementando una exportación nocturna de las configuraciones de los dispositivos, lo que permitió al equipo obtener visibilidad de las mismas. Con el tiempo, avanzaron hacia un nuevo paradigma donde el código fuente ahora controla el contenido de los dispositivos.

“En un año creamos más de 100 iApps a partir de cambios manuales y el concepto de infraestructura como código”, afirma Garrigan. “El esfuerzo necesario para codificar cada configuración manual en iApps fue considerable, pero creamos algunas herramientas y lo solucionamos con el tiempo”.

Con la infraestructura ahora definida como código, el equipo pudo desglosar las funciones de sus aplicaciones. Ingeniería Operativa da soporte a docenas de equipos de aplicação , en un entorno de servidor dinámico que recibe múltiples solicitudes de cambio por día. La implementación de un proceso de autoservicio permitió a los consumidores internos de los equipos de aplicação de CSG usar un dispositivo BIG-IP sandbox para configurar cambios, verificarlos y enviarlos a través de un canal para validación y revisión de código. También crearon otra herramienta que permite a esos usuarios implementar los cambios en producción por sí mismos.

“En ese momento, realmente estábamos ofreciendo equilibrio de carga y entrega de aplicação como servicio”, afirma Phil Todd, director de desarrollo de software de CSG. “Usamos Jenkins para impulsar la mayoría de nuestras funciones de autoservicio de automatización, así como nuestras funciones de informes. Y hemos escrito parte de nuestro propio código C# para implementar esa funcionalidad entre bastidores”.

Visibilidad y gestión del cambio con BIG-IQ

Impulsar la visibilidad de esos cambios fue otra necesidad crítica en el amplio y diverso conjunto de aplicações de CSG. En su mundo, previamente manual, los equipos de aplicação podrían estar pisoteándose unos a otros con cambios superpuestos. Encontrar código defectuoso fue una tarea más compleja de lo que debía ser.

“Habría algo extraño en el ambiente”, dice Garrigan. “No sabríamos por qué estaba mal, solo que alguien debió haber hecho algo”.

Los procesos manuales también implicaban que, una vez identificado un problema, el equipo a menudo tenía que localizar al individuo que hizo el cambio para comprenderlo completamente.

Para resolver el problema, el equipo implementó F5 BIG-IQ y comenzó a implementar cambios en torno al proceso de cambio en sí, introduciendo informes automatizados sobre la salud del sistema y los impactos generales de los cambios. También crearon un panel de Grafana para monitorear más de mil puntos finales para respaldar la validación de los cambios. Con su configuración ahora como código, junto con la automatización creada en torno a las implementaciones, CSG pudo obtener visibilidad real de todos los cambios que se habían realizado.

Según Todd, esto ha dado lugar a una de las mayores diferencias entre el entorno actual de CSG y los procesos manuales que tenían en el pasado: si un cambio rompe algo, el tiempo medio de reparación ahora puede ser de minutos, mientras que antes podía ser de horas mientras el equipo investigaba y resolvía el problema.

“Al iniciar sesión en Kibana se registran todos los cambios: qué versión se implementó y cuál era la versión anterior”, explica. “Así que, sin quedarnos ahí preguntándonos por qué no funciona, simplemente implementamos la versión anterior del código simplemente presionando el botón en Jenkins”.

La virtualización es clave

La siguiente evolución fue abordar la escalabilidad, la flexibilidad y la estabilidad de la infraestructura. Aunque estaban ejecutando docenas de dispositivos de hardware físicos, incluidos F5 VIPRIONS, la mayoría de las aplicações fluían a través de solo dos: uno para el tráfico externo de Internet y otro para el tráfico interno.

Esto dio lugar a grupos de gran tamaño, lo que representaba un mayor riesgo para la organización en caso de fallo. “Si uno de esos dispositivos fallaba, esto afectaba esencialmente a todos los productos y a todos los clientes”, afirma Todd.

Al mismo tiempo, las aplicações de CSG comenzaban a trasladarse a la nube privada de la empresa, así como a las nubes públicas, pero el sistema tenía una capacidad limitada en términos de expansión en esos entornos y no permitía la migración a AWS.  

La virtualización también ayudó a abordar estos problemas. Tener infraestructura como código en iApps proporcionó la flexibilidad para reducir el tamaño general del grupo de fallas y, de ese modo, establecer un equilibrio de carga más específico de la aplicación. También abrió la puerta para evolucionar eventualmente hacia la nube pública cuando fuera necesario.

“Recientemente tuvimos una interrupción que afectó a un producto”, dice Morrison. “Hace poco más de un año habría afectado a todos los productos. Con más instancias divididas en grupos más pequeños, también tenemos la capacidad de realizar una conmutación por error si es necesario, y ese radio de explosión es muy pequeño. Así que la inversión en estabilidad ya ha dado como resultado algunas buenas noticias para nuestros clientes internos y externos”. 

Las licencias empresariales aportan la flexibilidad necesaria

CSG obtuvo mayor flexibilidad operativa y ahorro de costos al pasar de F5 BIG-IP Virtual Editions a un nuevo acuerdo de licencia empresarial (ELA) de F5. Anteriormente, el grupo funcionaba principalmente dentro de un centro de datos en la sede de la empresa en Omaha. Su solución de recuperación ante desastres consistió simplemente en poner en funcionamiento sus servicios en un centro de datos de terceros si los eventos lo requerían.

Cuando el equipo construyó un segundo centro de datos hace un par de años, estaban posicionados para explorar la alta disponibilidad en esos centros de datos, pero su antiguo acuerdo de licencia y el hardware físico limitaron sus opciones. Con hardware fijo, la empresa enfrentó desafíos de escalabilidad, disponibilidad y capacidad de expandirse a la nube pública.

“Pasar a un acuerdo de licencia empresarial de F5 y a la solución virtual nos dio la libertad de configurar lo que quisiéramos, cuando quisiéramos, y agregar ese segundo centro de datos”, afirma Todd. “Y nos ha dado la libertad de explorar y responder con gran rapidez a las necesidades de nuestros clientes internos”.

Hoy el equipo tiene más flexibilidad para evolucionar y lograr alta disponibilidad para diversos servicios.

Mirando hacia el futuro: entrega de aplicação en la nube

Tras haber modernizado su entorno, el equipo de Ingeniería de Operaciones de CSG ahora tiene espacio para planificar el futuro. El equipo quiere aprovechar al máximo las capacidades de seguridad de F5, crear arquitecturas de referencia para usar BIG-IP y Amazon Web Services (AWS) e incorporar nuevas capacidades con NGINX. Gracias a un ELA, la empresa ha podido redirigir el presupuesto existente a nuevas arquitecturas y conjuntos de características.

Morrison también está trabajando con los propietarios de productos de CSG en una nueva hoja de ruta para aprovechar lo que han logrado hasta ahora, mejorando el monitoreo y las alertas del sistema, agregando nuevos monitores y desarrollando un modelo de centro de excelencia para la entrega de aplicação .

Desde un punto de vista general, dice, es un lugar agradable para estar. Hasta este momento, el equipo ha realizado casi todos los proyectos de su visión original de cinco años. Con las asociaciones, la funcionalidad de autoservicio y las configuraciones que han creado, todo lo que queda es entregar más propiedad de las aplicaciones a los propios equipos de aplicaciones.

“Por primera vez nos preguntamos: ¿qué hacemos a continuación?”, dice. “Hemos avanzado tanto que ya no podemos salir de aquí. Ahora es cuestión de ser proactivos y construir sobre la base sólida que hemos establecido”.

Retos
  • Procesos manuales
  • Hardware fijo que impide la escalabilidad y disponibilidad necesarias
  • Falta de supervisión de la salud y visibilidad de las aplicação

Ventajas
  • Mayor visibilidad de las aplicação
  • Ruta de migración más sencilla a la nube pública
  • Mayor capacidad de respuesta a las necesidades del cliente
Productos