Está en la página 1de 2

IaC

Infrastructure as Code permite que los negocios controlen cambios y configuraciones de


un ambiente en la nube de forma mucho más eficiente. IaC ofrece las prácticas de
DevOps que permiten que los desarrolladores y operaciones trabajen de forma más
cercana en el despliegue de máquinas virtuales, las redes virtuales que se construyen a su
alrededor y las aplicaciones dentro de ellas.

Imperativo vs. declarativo

Una de las decisiones que deben tomarse para potenciar IaC es si se deben hacer cambio
a su ambiente con automatización imperativa o declarativa. La mayoría de la IaC es
declarativa por naturaleza. Esta es una forma más fácil de verlo: imperativo vs. declarativo
es la diferencia entre cómo debería operar el programa vs. lo que el programa necesita
lograr.

Para hacer cambios de automatización imperativa a su infraestructura, puede usar una


Command Line Interface (CLI). Dirige los cambios primero hacia la nube dentro de un
container, luego a la máquina virtual (VM) y luego a la nube privada virtual, en ese orden,
a través de un script. Este es un checklist detallado, pero si se necesita cambiar la
configuración después del empuje hacia varias máquinas, se tienen que rehacer los pasos
y el script.

Un enfoque de automatización declarativa requiere creación de metas. Por ejemplo, en


lugar de usar el CLI y listar paso por paso la configuración exacta para una VM,
simplemente diría que quiere una VM con, digamos, un dominio adjunto, y dejar que la
automatización haga el resto. El enfoque declarativo le permite declarar más fácilmente
qué es lo que las herramientas de automatización necesitan lograr.

Mutable vs. inmutable

El desvío de las configuraciones es un gran problema cuando se trata de la configuración


de cualquiera y de todas las partes de la infraestructura. Esto ocurre cuando se tiene una
infraestructura mutable. Mutable significa que es propenso al cambio. Si una parte de la
infraestructura cambia, se desalinea del resto. Lo más importante en lo que respecta a la
seguridad es que se debe establecer una aplicación consistente de configuraciones a lo
largo de la infraestructura.

Una infraestructura inmutable no puede cambiarse una vez que se despliega. Aún
ocurrirán los cambios, pero se harán a los estados declarativos originales. Una vez que
están listos los cambios, todos los dispositivos o configuraciones se cambian de forma
consistente. La consistencia es necesaria desde una perspectiva de seguridad porque los
hackers sólo necesitan una puerta abierta para entrar. Cerrar todas las puertas de la
misma forma complica las cosas para el hacker.

DevOps
El desarrollo, prueba y despliegue de aplicaciones a un ambiente de producción a menudo
requiere que los desarrolladores esperen a la producción o viceversa. Es posible hacer que
el despliegue sea más rápido y presente menos fricción cuando se hacen las
configuraciones virtuales y de red a través de un sistema controlado. Los desarrolladores
pueden solicitar entonces containers o máquinas virtuales a través de una solicitud
automatizada con el mismo nivel de estabilidad que se aplica al código. Esto da como
resultado mejores versiones que son más fáciles de rastrear.

También podría gustarte