¿Logrará la automatización eliminar a los equipos que hoy mantienen las infraestructuras IT operativas?
Un ambiente IT tan automatizado e independiente de su infraestructura que no necesita un equipo para desplegar y administrar sus aplicaciones: esa es la promesa de NoOps, un marco de trabajo que lleva al límite propuestas como la de DevOps al eliminar la necesidad de contar con una unidad de operaciones.
El concepto fue acuñado por Forrester en un informe del 2011, que indica el tránsito futuro hacia un nuevo orden posible gracias a los avances de tecnologías como la nube y la automatización. “A pesar de que las organizaciones llevan años trabajando en ambientes DevOps, los nuevos desarrollos en cloud computing están inaugurando una nueva era de infraestructura bajo demanda, auto-provisionamiento de recursos y arquitecturas elásticas de aplicaciones que están disminuyendo mucho la necesidad de que los desarrolladores interactúen con operaciones para sus despliegues. El enfoque de DevOps en colaboración evoluciona en NoOps a uno de automatización”, explica el documento.
Casi una década después de su planteamiento, los avances en big data, deep analytics y la explosión del Software-as-a-Service están haciendo de este concepto algo más que solo una posibilidad distante.
La necesidad de disminuir al mínimo el gasto de recursos en operaciones es claro: “Tradicionalmente, la responsabilidad que tiene el CIO de mantener operando sistemas tecnológicos críticos para el negocio absorve hasta el 70% del presupuesto de IT y una buena cantidad de horas de trabajo. El almacenamiento más barato, la nube y el outsourcing han disminuído este gasto en torno al 20%. Pero en una era de presupuestos IT muy ajustados, encontrar formas de redireccionar bienes humanos y financieros desde operaciones a innovación es una meta prioritaria para el CIO”, indica un análisis de Deloitte.
A esto se suma la escasez cada vez mayor de profesionales de operaciones disponibles para las altas necesidades de las organizaciones actuales. De acuerdo con TechTarget, una compañía como Facebook debe evaluar en torno a 1,000 perfiles para llenar solo un puesto en operaciones, y mientras más empresas se suban al tren de la transformación digital más difícil será encontrar talento.
El secreto es un entorno serverless
En un ambiente IT tradicional el equipo de desarrollo está a cargo de recopilar los requerimientos del negocio para generar software que se ajuste a sus demandas. Luego se pasa a control de calidad (QA) y, si todo está en orden, finalmente es tarea del equipo de operaciones tomar ese código, desplegar las aplicaciones y mantenerlas funcionando ante cualquier contratiempo.
Esto presenta obstáculos claros como que los desarrolladores deben tener en mente dónde se va a ejecutar su código (en qué servidores, bajo qué arquitecturas), y establece una pared entre el desarrollo del software y su operación que hace a la organización menos ágil y le resta competitividad. La respuesta de DevOps frente a esta problemática ha sido difuminar la barrera entre Dev y Ops mediante el impulso de un trabajo conjunto mucho más compenetrado.
Un entorno NoOps va un paso más allá: la pared se rompe y los desarrolladores tienen una potestad mucho mayor sobre su propio software al no tener que entrar en un diálogo directo con operaciones. Pero detrás de esto se encuentra otro concepto disruptivo: la computación serverless, o sea sin-servidores.
Serverless es el sueño de todo desarrollador. Ya no debe preocuparse por dónde va a ejecutar el código, ni siquiera necesita acceder directamente al sistema operativo para administrarlo: puede dedicarse casi exclusivamente a programar.
Aunque el término “serverless” puede llevar a alguna confusión: es básicamente otro nombre para la nube. Sí existen servidores, solo que se adquieren as-a-Service y se tarifican de acuerdo con la cantidad de recursos que las aplicaciones consuman.
En un ambiente serverless las tareas son programadas bajo demanda, lo que implica que pueden ser automatizadas para que corran una vez que reciben información: se ejecutan solo cuando los datos existen y de esa forma no utilizan recursos innecesarios.
La escalabilidad también se ve modificada en un entorno serverless. Al ser un arreglo que incluye inteligencia desde el origen, permite establecer reglas para incrementar o disminuir la carga de manera automática, rápida y económica.
Voces en contra
Por supuesto NoOps no es solo la adopción de serverless. Al igual que con DevOps, requiere de un cambio importante en la cultura organizacional y debe impulsarse desde el negocio. Como todo concepto que promete grandes ganancias, hay que aproximarse a él con precaución y los ojos bien abiertos.
En suma, NoOps no es una salida fácil frente a DevOps y los encargados de Sistemas tendrán de una u otra forma un camino difícil por delante.
No sorprende tampoco que existan críticos de NoOps. El sitio especializado TechBeacon lista algunos de los puntos débiles principales de este arreglo:
- Tecnologías como Edge computing requerirán más apoyo de operaciones, no menos.
- La inteligencia de negocio es vital para el futuro, y el equipo de operaciones es experto en ella.
- Automatizar compliance y seguridad aún está lejos de ser posible
- La atención de incidentes y administración de fallas requiere amplias habilidades que el equipo de desarrollo aún no requiere
Como siempre, NoOps no será la varita mágica que solucionará todos los problemas para el CIO y tampoco es un ambiente ideal para cualquier tipo de organización, pero lo cierto es que es una alternativa ciertamente disruptiva para enfrentar las necesidades cada vez más grandes de IT, y es seguro que estará cada vez más presente en la mente de los IT Masters.