Tener servidores en el perímetro no es nada nuevo. Los líderes de TI reconocen que si bien es posible que deseen centralizar la TI tanto como sea posible para mejorar la eficiencia y reducir los costos administrativos, existe la necesidad de ubicar los sistemas, servicios y datos más cerca de donde se requieren.
Una red de entrega de contenido (CDN) utiliza una red de servidores para almacenar en caché los datos más cerca de donde se consumen para acelerar el acceso. En 2020, James Staten, vicepresidente y analista principal de Forrester, escribió en su blog que las CDN ofrecen una forma de emparejar aplicaciones implementadas en terminales con análisis de contenido de dispositivos de terminales. “En lugar de simplemente permitir que los clientes lleven sus aplicaciones y datos más cerca del cliente, estas tecnologías de punta recopilan datos del Internet de las cosas. [IoT] dispositivos y dispositivos móviles de usuarios finales”, escribió Staten.
Conceptualmente, la CDN se puede considerar como una forma de computación perimetral en el sentido de que hace que los datos estén disponibles más cerca de donde se consumen. En efecto, la red de servidores a partir de la cual se crea una CDN se utiliza para distribuir datos más cerca del borde.
Edge computing y la idea de centros de datos en el borde amplían este concepto. Los datos no solo se consumen en el perímetro, sino que también se pueden procesar grandes cantidades de datos en el perímetro. Esto evita la necesidad de sobrecargar el ancho de banda de la red con grandes cantidades de datos, como cuando se recopilan análisis de video transmitidos desde cámaras de circuito cerrado de televisión en red.
Los dispositivos y la infraestructura de TI de soporte en el borde de la red llevan la IoT al siguiente nivel, ofreciendo el potencial para ejecutar sistemas empresariales sofisticados de forma descentralizada.
Desde la perspectiva de la arquitectura de software, la industria utiliza el término “informática sin servidor” para describir una forma de proporcionar recursos informáticos, de almacenamiento y de red necesarios para ejecutar cargas de trabajo nativas de la nube. El beneficio de serverless es que el desarrollador de la aplicación no tiene que preocuparse por los servidores físicos, y estos pueden estar ubicados en una nube pública, una nube privada que se ejecuta en un centro de datos local o una que se ejecuta en el borde de la red de la organización.
Sin embargo, el panorama de las operaciones de TI aumenta exponencialmente a medida que las cargas de trabajo se trasladan cada vez más al borde de la red y el procesamiento de datos más avanzado se lleva a cabo fuera de un entorno de centro de datos tradicional. La facilidad de la administración de TI centralizada se reemplaza por la necesidad de administrar un estado diverso y altamente distribuido de servidores y dispositivos en el perímetro.
Ejecución de TI empresarial en el perímetro
La gestión de la informática del centro de datos ubicado en el borde de la red corporativa se está volviendo tan importante como la gestión de los sistemas de TI centralizados. Siempre ha existido la necesidad de administrar la TI de las sucursales y las salas de servidores remotos de manera eficiente, porque generalmente tienen menos recursos en términos de administradores de TI en el sitio, en comparación con la función de TI central.
Ahora hay una oleada de actividad en torno a la gestión de la configuración de los sistemas de TI de la misma manera que los equipos de desarrollo de software gestionan el código fuente. Scott McAllister, defensor de los desarrolladores en PagerDuty, dice: “A medida que la infraestructura de TI se ha desacoplado progresivamente de las máquinas físicas, podemos tocar, administrar y aprovisionar esa infraestructura se ha trasladado a los servicios de software en la nube. Esos servicios están construidos con interfaces de usuario sólidas para la configuración manual. Sin embargo, manejar esas configuraciones a escala es tedioso y puede provocar la fragilidad del sistema”.
Una vez aclamada como el futuro de la administración de infraestructura y ahora la mejor práctica de facto, la infraestructura como código (IaC) es un proceso que automatiza el aprovisionamiento y la administración de recursos informáticos con plantillas legibles por máquina. Según Chris Astley, socio y jefe de ingeniería de KPMG UK, en un contexto de nube, IaC es la opción clara para la automatización y también está incursionando en los centros de datos privados.
“Antes de IaC, los ingenieros de sistemas tenían la laboriosa tarea de aprovisionar y configurar manualmente su infraestructura informática”, dice. “Con los proveedores de la nube en particular actualizando funciones y capacidades diariamente, esto se había convertido en una tarea abrumadora. Con IaC, los ingenieros ahora tienen los medios para administrar mejor el control de versiones, implementar y mejorar la infraestructura en la nube de su empresa de manera más rápida, económica y eficiente que nunca”.
Además de IaC que permite un aprovisionamiento de infraestructura más rápido, más consistente y automatizado para los equipos de DevOps, Piyush Sharma, vicepresidente de ingeniería de seguridad en la nube de Tenable, cree que su mayor impacto radica en su capacidad para transformar los procesos utilizados para desarrollar, implementar y operar. infraestructura inmutable. “Ya sea que los equipos de desarrollo y DevOps se den cuenta o no, las herramientas y los enfoques que adoptan para resolver los desafíos de ingeniería tienen un impacto en todo el negocio”, dice.
“IaC impone la inmutabilidad en la infraestructura de tiempo de ejecución, lo que significa que cada componente de la arquitectura se construye utilizando una configuración exacta. Esta capacidad reduce la posibilidad de que la infraestructura se desvíe, lo que podría alejarla de las configuraciones deseadas”.
Mientras que los procesos de aprovisionamiento de TI tradicionalmente han requerido largas esperas y esfuerzo manual, la ventaja de IaC es que permite a los equipos aprovisionar la infraestructura que necesitan en cuestión de minutos con solo presionar una tecla, dice Sharma. “Aún mejor, modificar, escalar o duplicar el entorno es tan simple como modificar el código fuente y volver a aprovisionarlo”, agrega.
Para Sharma, IaC es la clave para modernizar los procesos manuales en las operaciones, romper los silos organizacionales y brindar más valor. Señala que las aplicaciones deben escalar automáticamente y los ecosistemas se han desarrollado en torno a enfoques como Atlantis, Kubernetes y GitOps. “Las tareas operativas se reducen a compromisos de código que desencadenan procesos automatizados que reconcilian la configuración del tiempo de ejecución con los cambios comprometidos”, dice.
Asegurando el borde
Lo que se entiende menos es el papel de IaC en la seguridad. Astley de KPMG insta a las organizaciones a integrar IaC en su estrategia de seguridad cibernética lo más rápido posible, ya que puede ayudar a prevenir y remediar los ataques cibernéticos. Un estudio de Harvey Nash informó recientemente que casi la mitad (43 %) de los líderes digitales dicen que tienen escasez de talento en seguridad cibernética.
“IaC es algo que puede ayudar a automatizar algunas tareas de seguridad y, por lo tanto, aligerar su carga de trabajo y permitir que los equipos de InfoSec se concentren en problemas más críticos para el negocio”, dice Astley.
Si bien los ingenieros anteriormente tenían que aprovisionar y configurar su nube manualmente, según la experiencia de Astley, el uso de scripts de entrada a través de IaC ofrece una única fuente de información. Él dice: “El efecto positivo de esto es la eliminación de un posible error humano cuando se realizan cambios en la infraestructura, lo que reduce drásticamente el potencial para la apertura de una nueva vulnerabilidad explotable para que los actores de amenazas aprovechen. También es posible ver todas las configuraciones incorrectas del código en un solo lugar y, por lo tanto, es más rápido administrarlas y remediarlas”.
Astley también señala que la automatización que ofrece IaC brinda a los equipos de operaciones de TI una forma de implementar actualizaciones de proveedores de la nube al instante. “Cuando se lanzan iteraciones nuevas y seguras de herramientas en la nube, hay un retraso mínimo en las actualizaciones, lo que reduce su exposición al riesgo”, dice.
Como señala Astley, uno de los mayores beneficios de IaC es que, cuando se hace correctamente, es una documentación 100 % precisa y actualizada del propio entorno en vivo. “Los equipos de InfoSec encontrarán esto invaluable al realizar evaluaciones de amenazas”, dice. De hecho, estas evaluaciones de amenazas se pueden ejecutar automáticamente en función del código.
Además, Astley cree que IaC proporciona una forma para que los equipos comprendan las vulnerabilidades comunes y tengan un proceso de respuesta y mejora documentado para abordar las debilidades descubiertas durante las auditorías de evaluación de amenazas.
Él dice que IaC también es vital para la recuperación de una organización después de un incidente cibernético, especialmente con respecto a las vulnerabilidades comunes como el ransomware. “Con IaC, los requisitos de recursos ya están codificados, lo que lo hace ideal para la respuesta a incidentes y la recuperación ante desastres”, dice.
“Si ocurriera un ataque, con IaC ahora es posible que los equipos de TI realicen una recuperación ante desastres al generar rápidamente un entorno nuevo e idéntico a partir de los scripts de IaC y las copias de seguridad anteriores. Poder restaurar a un estado de trabajo conocido en minutos es fundamental para una recuperación rápida de ese escenario”.
Lenguaje común
John Davis, distinguido ingeniero de Kyndryl, cree que DevSecOps ha alentado a los desarrolladores a familiarizarse más con la infraestructura y las operaciones para estar más alineados con las aplicaciones. Señala que IaC sirve como un lenguaje común a través del cual ambos pueden comunicarse, colaborar y co-crear.
Pero para tener éxito con IaC, Davis insta a los líderes de TI a considerar el contexto de sistemas más amplio del proceso de construcción. “La mayoría de las organizaciones tendrán varios sistemas que necesitan actualizarse debido a los nuevos entornos”, dice. “Cualquiera puede aprovisionar un servidor en la nube rápidamente, pero estar listo para producción, seguro y segregado con los flujos de red correctos es donde un diseño de IaC bien definido es clave”.
Davis recomienda que para maximizar la oportunidad de usar IaC, los líderes de TI deben evaluar cómo se pueden integrar las actualizaciones de configuración de TI automatizadas en el ecosistema de soporte de TI más amplio. “Una vez que haya pasado a IaC, debería poder eliminar los controles secundarios que estaban previamente en su lugar para validar la integridad del trabajo manual”, dice.
Para Davis, un entorno creado con IaC a través de una tubería DevOps ofrece precisión de ejecución y capacidades de auditoría que hacen que algunos de estos controles sean redundantes.
Tales capacidades son esenciales en la red de la organización, en el contexto de un centro de datos perimetral, ya sea para admitir una sala de servidores remota, adquisición de datos impulsada por inteligencia artificial desde dispositivos perimetrales o sistemas empresariales de sucursales.