SlideShare una empresa de Scribd logo
#GlobalAIOnTour
Managua – Nicaragua
25 de Julio de 2020
#GlobalAIOnTour#GlobalAIOnTourMana
gua
#DotNetNicaragua
Infraestructura como código en Azure
Vicente G. Guzmán Lucio
Senior Software Engineer
@LucioMSP
luciomsp@geeks.ms
#GlobalAIOnTour#GlobalAIOnTourMana
gua
#DotNetNicaragua
¿Qué es DevOps?
#GlobalAIOnTour#GlobalAIOnTourMana
gua
#DotNetNicaragua
¿Qué NO es DevOps?
• No es un trabajo
• No es tener equipo de IT/Ops
• No son (solamente) herramientas
• No es (solamente) una cultura
• No es un Desarrollo y Operaciones
#GlobalAIOnTour#GlobalAIOnTourMana
gua
#DotNetNicaragua
Aún así, las herramientas son necesarias para…
generar testing automatizado
la integración continua
la entrega continua
tener una infraestructura como Código
la monitorización
#GlobalAIOnTour#GlobalAIOnTourMana
gua
#DotNetNicaragua
“No es para mí, yo ya tengo mi nube”
#GlobalAIOnTour#GlobalAIOnTourMana
gua
#DotNetNicaragua
¿Azure Portal es suficiente?
Puede que sí, pero...
¿Tienes que hacer cambios incrementales con cierta frecuencia en tu
infraestructura?
La primera vez que vas a producción ¿Cuánto tardas en replicar la
infraestructura de desarrollo?
Si te has tenido que recuperar alguna vez de un desastre ¿tenías todo
documentado?
#GlobalAIOnTour#GlobalAIOnTourMana
gua
#DotNetNicaragua
“Si algo malo puede pasar, pasará”
Ley de Murphy
#GlobalAIOnTour#GlobalAIOnTourMana
gua
#DotNetNicaragua
Infrastructure as Code
#GlobalAIOnTour#GlobalAIOnTourMana
gua
#DotNetNicaragua
“Al igual que el principio de que el mismo código fuente genera el mismo binario, una infraestructura
como modelo de código genera el mismo entorno cada vez que se aplica.”
Sam Guckenheimer (Product Owner for Azure Devops)
#GlobalAIOnTour#GlobalAIOnTourMana
gua
#DotNetNicaragua
¿Qué es Infrastructure as Code?
La Infraestructura como Código (IaC) hace referencia a la práctica de utilizar scripts para configurar la
infraestructura de computación en lugar de hacerlo manualmente, trata la configuración de la
infraestructura exactamente como el software de programación, estamos hablando de máquinas
virtuales, bases de datos entre muchos otros servicios más ofrecidos por algún proveedor computo en
la nube como Microsoft Azure.
Más información: https://wp.me/p4REoZ-Vl
#GlobalAIOnTour#GlobalAIOnTourMana
gua
#DotNetNicaragua
¿Entonces… ?
 Définela con Código
Qué se entienda, es tu documentación
 Utiliza un control de versions
 Haz despliegues automáticos
 Flexibiliza el despliegue
 Despliegues atómicos e idempotentes
#GlobalAIOnTour#GlobalAIOnTourMana
gua
#DotNetNicaragua
¿Por qué debería hacerlo?
 Más automatización = Menos errores
 Transparencia
 Trazabilidad
 Integridad
 Reproducibilidad y repetibilidad
 Tu documentación es la “única fuente de verdad”
 Anima a la colaboración entre operaciones y desarrollo
#GlobalAIOnTour#GlobalAIOnTourMana
gua
#DotNetNicaragua
¿Cómo empiezo?
Paso 1: Selecciona un proyecto fácil o pequeño, minimiza esfuerzo y riesgo
Si no lo has hecho antes encontrarás problemas, estás experimentando, así que maneja bien las expectativas
Paso 2: Recoge datos, antes y después, demuestra que funciona
Paso 3: Elige una buena herramienta
#GlobalAIOnTour#GlobalAIOnTourMana
gua
#DotNetNicaragua
Herramientas
#GlobalAIOnTour#GlobalAIOnTourMana
gua
#DotNetNicaragua
¡ARM al rescate!
#GlobalAIOnTour#GlobalAIOnTourMana
gua
#DotNetNicaragua
DEMO
#GlobalAIOnTour#GlobalAIOnTourMana
gua
#DotNetNicaragua
Paso a paso
Crear una máquina virtual desde el portal de
Microsoft Azure con ARM
Ingresamos a http://portal.azure.com
#GlobalAIOnTour#GlobalAIOnTourMana
gua
#DotNetNicaragua
#GlobalAIOnTour#GlobalAIOnTourMana
gua
#DotNetNicaragua
#GlobalAIOnTour#GlobalAIOnTourMana
gua
#DotNetNicaragua
#GlobalAIOnTour#GlobalAIOnTourMana
gua
#DotNetNicaragua
#GlobalAIOnTour#GlobalAIOnTourMana
gua
#DotNetNicaragua
#GlobalAIOnTour#GlobalAIOnTourMana
gua
#DotNetNicaragua
#GlobalAIOnTour#GlobalAIOnTourMana
gua
#DotNetNicaragua
#GlobalAIOnTour#GlobalAIOnTourMana
gua
#DotNetNicaragua
#GlobalAIOnTour#GlobalAIOnTourMana
gua
#DotNetNicaragua
#GlobalAIOnTour#GlobalAIOnTourMana
gua
#DotNetNicaragua
#GlobalAIOnTour#GlobalAIOnTourMana
gua
#DotNetNicaragua
Caracteristicas de ARM…
•Orientado a soluciones completas o proyectos.
•Vinculación entre servicios por grupo.
•Administración conjunta.
•Etiquetado de servicios.
#GlobalAIOnTour#GlobalAIOnTourMana
gua
#DotNetNicaragua
Algunos problemas con ARM…
•Gestión de dependencias
•Explícita
•Modularización
•Legibilidad y naming
#GlobalAIOnTour#GlobalAIOnTourMana
gua
#DotNetNicaragua
Plantillas
Lo novedoso es la posibilidad de descargar una plantilla de código para implementar este servicio y
administrarlo durante un ciclo de vida, basta con tomar los clientes necesarios para que esto tenga
efecto.
Las versiones de código las tenemos también en Ruby, .Net, PowerShell y Azure CLI.
#GlobalAIOnTour#GlobalAIOnTourMana
gua
#DotNetNicaragua
“¡Deja de usar plantillas ARM!
Mejor use la CLI de Azure en su lugar”
Pascal Naber - MVP on Microsoft Azure
#GlobalAIOnTour#GlobalAIOnTourMana
gua
#DotNetNicaragua
¡Yo ya tengo un Script!
#GlobalAIOnTour#GlobalAIOnTourMana
gua
#DotNetNicaragua
Desventajas de un Script
• Idempotencia
• Paralelización
• Escalabilidad
• Borrado de recursos explícito
• Modularización
#GlobalAIOnTour#GlobalAIOnTourMana
gua
#DotNetNicaragua
Alternativas
#GlobalAIOnTour#GlobalAIOnTourMana
gua
#DotNetNicaragua
Alternativas
#GlobalAIOnTour#GlobalAIOnTourMana
gua
#DotNetNicaragua
En 2015 fue comprado por RedHat que es la compañía que lo mantiene
ahora.
Inicialmente fue concebido para “Configuración como código” o
“Provisionamiento de software”.
Aún no tiene mucho soporte para Azure.
Está pensado para realizar “secuencias de comandos”, paralelizar es
complicado.
#GlobalAIOnTour#GlobalAIOnTourMana
gua
#DotNetNicaragua
Es una herramienta creada por Hashicorp. Autores de Vagrant, Consul,
Packer,....
Introduce el concepto de ‘plan’ para poder previsualizar los cambios antes de
que sucedan.
Usa una sintaxis propia, bastante sencilla y fácil de aprender, pero nueva.
Tiene una comunidad activa.
#GlobalAIOnTour#GlobalAIOnTourMana
gua
#DotNetNicaragua
Es la más reciente de las herramientas y está soportada por una empresa
relativamente pequeña gestionada por un grupo inversor.
Su funcionamiento es muy similar al de Terraform pero es la primera en
utilizar lenguajes de programación de “verdad” (JS, Go o Python).
#GlobalAIOnTour#GlobalAIOnTourMana
gua
#DotNetNicaragua
Comparativa: tecnologías
#GlobalAIOnTour#GlobalAIOnTourMana
gua
#DotNetNicaragua
Comparativa: soporte
#GlobalAIOnTour#GlobalAIOnTourMana
gua
#DotNetNicaragua
Comparativa: funcionamiento
#GlobalAIOnTour#GlobalAIOnTourMana
gua
#DotNetNicaragua
Cuando usar cada uno
Especialmente indicado si utilizas las últimas
funcionalidades de Azure y si toda tu infraestrutura
está y estará basada siempre en Azure.
Es la alternativa a ARM más utilizada, más madura
y con gran soporte. La recomendaría a menos que
ya tengas Know How en ARM.
Ahora no parece una herramienta suficientemente
madura para IaC, pero puede ser una opción si usas
mucha VM y ya las configuras con Ansible.
Es una herramienta joven y le falta comunidad,
pero puede ser una gran opción cuando es el
propio equipo de desarrollo quien opera.
#GlobalAIOnTour#GlobalAIOnTourMana
gua
#DotNetNicaragua
¿Preguntas?
Q&A@LucioMSP
luciomsp@geeks.ms
#GlobalAIOnTour#GlobalAIOnTourMana
gua
#DotNetNicaragua
Agradecimientos a…

Más contenido relacionado

PDF
Operationalizing your C4E VirtualMuleys & Deployment Considerations: Cloudhub...
PPTX
Achieving Elite and High Performance DevOps Using DORA Metrics
PPSX
Microservices, DevOps & SRE
PPTX
Azure DevOps
PDF
Learn from the Experts: Using DORA Metrics to Accelerate Value Stream Flow
PDF
Best Practices for Streaming IoT Data with MQTT and Apache Kafka®
PDF
The A-Z of Data: Introduction to MLOps
PPTX
Xây dụng và kết hợp Kafka, Druid, Superset để đua vào ứng dụng phân tích dữ l...
Operationalizing your C4E VirtualMuleys & Deployment Considerations: Cloudhub...
Achieving Elite and High Performance DevOps Using DORA Metrics
Microservices, DevOps & SRE
Azure DevOps
Learn from the Experts: Using DORA Metrics to Accelerate Value Stream Flow
Best Practices for Streaming IoT Data with MQTT and Apache Kafka®
The A-Z of Data: Introduction to MLOps
Xây dụng và kết hợp Kafka, Druid, Superset để đua vào ứng dụng phân tích dữ l...

La actualidad más candente (20)

PPTX
CI/CD Best Practices for Your DevOps Journey
PDF
La transformacion DevOps
PDF
AWS
PPTX
Cloud Migration, Application Modernization, and Security
PPTX
Azure Application Modernization
PDF
Introduction to CICD
PDF
gkkAwscloudpractitioneressentialstraining
PDF
Getting Started with Infrastructure as Code
PPTX
GitOps - Modern best practices for high velocity app dev using cloud native t...
PPTX
The Journey to DevSecOps
PPTX
SAP on Azure Technical Pitch Deck
PDF
SRE & Kubernetes
PPTX
Introduction to CI/CD
PPTX
The Ideal Approach to Application Modernization; Which Way to the Cloud?
PPTX
Real-Time Data Flows with Apache NiFi
PDF
Composable Software Architecture with Spring
PPTX
Databricks for Dummies
PPTX
Monitoring_with_Prometheus_Grafana_Tutorial
PDF
Simplifying Model Management with MLflow
PDF
Opentracing jaeger
CI/CD Best Practices for Your DevOps Journey
La transformacion DevOps
AWS
Cloud Migration, Application Modernization, and Security
Azure Application Modernization
Introduction to CICD
gkkAwscloudpractitioneressentialstraining
Getting Started with Infrastructure as Code
GitOps - Modern best practices for high velocity app dev using cloud native t...
The Journey to DevSecOps
SAP on Azure Technical Pitch Deck
SRE & Kubernetes
Introduction to CI/CD
The Ideal Approach to Application Modernization; Which Way to the Cloud?
Real-Time Data Flows with Apache NiFi
Composable Software Architecture with Spring
Databricks for Dummies
Monitoring_with_Prometheus_Grafana_Tutorial
Simplifying Model Management with MLflow
Opentracing jaeger
Publicidad

Similar a Infraestructura como Código en Azure (20)

PDF
DotNet 2019 | Alberto Varela - Infraestructura como código en Azure
PDF
Meetup Oracle Technology MAD_BCN: 6.2 DevOps y DataOps
PDF
De idea a mvp, drupal para emprendedores
PDF
DevOps, por donde comenzar? - DrupalCon Latin America 2015
PDF
Workshop azure devsecops Microsoft Argentina
PDF
Azure Dev(Sec)Ops EPIDATA completa
PPTX
Cloud native Computing Perú Octubre
PPTX
Corporaciones en piel de start ups
PPTX
Creación de proyectos web con Drupal
PDF
Por qué y cómo agilizar el despliegue de aplicaciones, el caso de cloud.gov
PDF
Dev ops infraestructura agil con open source
PDF
DevOps & Infraestructura como código: Promesas Rotas
PDF
Mejorando la productividad en proyectos java EE con CI y CD - OTN 2015
PDF
Inteligencia artificial in house con servicios cognitivos y docker
PPTX
0067 ya es_hora_de_migrar_a_web_tenemos_la_tecnología_y_la_metodología_falta_...
PDF
SPS Madrid 2019 - Eleva tu aplicaciones de PowerApps a otro nivel
PDF
Devsecops superstar un movimiento masivo
PPT
Agile at Work
PDF
Openspacesevilla2012
PPTX
Azure Bootcamp Como montar una arquitectura Serverless y aprovechar Azure
DotNet 2019 | Alberto Varela - Infraestructura como código en Azure
Meetup Oracle Technology MAD_BCN: 6.2 DevOps y DataOps
De idea a mvp, drupal para emprendedores
DevOps, por donde comenzar? - DrupalCon Latin America 2015
Workshop azure devsecops Microsoft Argentina
Azure Dev(Sec)Ops EPIDATA completa
Cloud native Computing Perú Octubre
Corporaciones en piel de start ups
Creación de proyectos web con Drupal
Por qué y cómo agilizar el despliegue de aplicaciones, el caso de cloud.gov
Dev ops infraestructura agil con open source
DevOps & Infraestructura como código: Promesas Rotas
Mejorando la productividad en proyectos java EE con CI y CD - OTN 2015
Inteligencia artificial in house con servicios cognitivos y docker
0067 ya es_hora_de_migrar_a_web_tenemos_la_tecnología_y_la_metodología_falta_...
SPS Madrid 2019 - Eleva tu aplicaciones de PowerApps a otro nivel
Devsecops superstar un movimiento masivo
Agile at Work
Openspacesevilla2012
Azure Bootcamp Como montar una arquitectura Serverless y aprovechar Azure
Publicidad

Más de Vicente Gerardo Guzman Lucio (20)

PPTX
Codificando con Superpoderes Python y GitHub Copilot.pptx
PPTX
AWS Community Day Colombia 2025 - 🗣️ Alexa Para Todos: Integrando Nova Micro ...
PPTX
Amazon Q Dev: Tu Compañero para Programar
PDF
SageMaker: Transformando el Aprendizaje Automático en AWS
PDF
GPPB2024 - Integrando ChatGPT en Power Automate
PPTX
Introducción a Amazon Alexa.pptx
PDF
Creando un Chatbot en C# con ChatGPT.pdf
PPTX
ChatGPT & Alexa.pptx
PDF
Bienvenido .Net MAUI - la evolución de Xamarin.Forms
PPTX
Conectando un Azure Bot con una Alexa Skill
PPTX
Azure DevOps y Blazor Web Assembly
PDF
Desarrollo de Interfaces de Voz: Alexa Skills
PPTX
PPTX
Introducción a Blazor
PDF
Diseño de Experiencias de Voz con Amazon Alexa
PDF
Alexa Skill con .NETCore & AWS Lambda
PPTX
Skills Nights - Vol.III - Primeros Pasos
PDF
¿Qué es la Nube?
PDF
Consumiendo un servicio externo con Axios en Alexa
PPTX
La era de los Chatbots
Codificando con Superpoderes Python y GitHub Copilot.pptx
AWS Community Day Colombia 2025 - 🗣️ Alexa Para Todos: Integrando Nova Micro ...
Amazon Q Dev: Tu Compañero para Programar
SageMaker: Transformando el Aprendizaje Automático en AWS
GPPB2024 - Integrando ChatGPT en Power Automate
Introducción a Amazon Alexa.pptx
Creando un Chatbot en C# con ChatGPT.pdf
ChatGPT & Alexa.pptx
Bienvenido .Net MAUI - la evolución de Xamarin.Forms
Conectando un Azure Bot con una Alexa Skill
Azure DevOps y Blazor Web Assembly
Desarrollo de Interfaces de Voz: Alexa Skills
Introducción a Blazor
Diseño de Experiencias de Voz con Amazon Alexa
Alexa Skill con .NETCore & AWS Lambda
Skills Nights - Vol.III - Primeros Pasos
¿Qué es la Nube?
Consumiendo un servicio externo con Axios en Alexa
La era de los Chatbots

Último (20)

PPTX
RAP02 - TECNICO SISTEMAS TELEINFORMATICOS.pptx
PDF
Estrategia de apoyo tecnología miguel angel solis
PDF
5.1 Pinch y Bijker en libro Actos, actores y artefactos de Bunch Thomas (coor...
PPTX
historia_web de la creacion de un navegador_presentacion.pptx
DOCX
Trabajo colaborativo Grupo #2.docxmkkkkkkl
PPTX
Presentación PASANTIAS AuditorioOO..pptx
PPTX
COMO AYUDAN LAS TIC EN LA EDUCACION SUPERIOR.pptx
PPTX
IA de Cine - Como MuleSoft y los Agentes estan redefiniendo la realidad
PDF
Temas y subtemas de las fichas 1 y 2.pdf
DOCX
Trabajo colaborativo Grupo #2.docxmmuhhlk
PPT
introduccion a las_web en el 2025_mejoras.ppt
PDF
diagrama de pareto.pdf valerie giraldo diaz
PDF
MÓDULO DE CALOR DE GRADO DE MEDIO DE FORMACIÓN PROFESIONAL
PDF
Maste clas de estructura metálica y arquitectura
PPTX
REDES INFORMATICAS REDES INFORMATICAS.pptx
PDF
Calidad desde el Docente y la mejora continua .pdf
PDF
Estrategia de apoyo tecnología grado 9-3
PDF
ACTIVIDAD 2.pdf j
PPTX
RAP01 - TECNICO SISTEMAS TELEINFORMATICOS.pptx
PPT
Que son las redes de computadores y sus partes
RAP02 - TECNICO SISTEMAS TELEINFORMATICOS.pptx
Estrategia de apoyo tecnología miguel angel solis
5.1 Pinch y Bijker en libro Actos, actores y artefactos de Bunch Thomas (coor...
historia_web de la creacion de un navegador_presentacion.pptx
Trabajo colaborativo Grupo #2.docxmkkkkkkl
Presentación PASANTIAS AuditorioOO..pptx
COMO AYUDAN LAS TIC EN LA EDUCACION SUPERIOR.pptx
IA de Cine - Como MuleSoft y los Agentes estan redefiniendo la realidad
Temas y subtemas de las fichas 1 y 2.pdf
Trabajo colaborativo Grupo #2.docxmmuhhlk
introduccion a las_web en el 2025_mejoras.ppt
diagrama de pareto.pdf valerie giraldo diaz
MÓDULO DE CALOR DE GRADO DE MEDIO DE FORMACIÓN PROFESIONAL
Maste clas de estructura metálica y arquitectura
REDES INFORMATICAS REDES INFORMATICAS.pptx
Calidad desde el Docente y la mejora continua .pdf
Estrategia de apoyo tecnología grado 9-3
ACTIVIDAD 2.pdf j
RAP01 - TECNICO SISTEMAS TELEINFORMATICOS.pptx
Que son las redes de computadores y sus partes

Infraestructura como Código en Azure

Notas del editor

  • #4: Como ya bien sabemos DevOps es uno de los términos más mencionados en el actual entorno de IT. Normalmente se asocia a estrategias de transformación digital, y a metodologías como Continuous Delivery o desarrollo ágil. Quedémonos con una definición simple de DevOps con la que todos podamos estar de acuerdo: DevOps es una metodología de desarrollo software basada en la integración entre desarrolladores y administradores de sistemas, que permite que los desarrolladores puedan enfocarse sólo en desarrollar y puedan desplegar su código en segundos. Una vez sabiendo esto, pasemos a conocer que NO es DevOps….
  • #5: Si bien hemos visto en publicaciones en sitios de empleos buscando un “experto en DevOps”, hay que saber que no es un puesto de trabajo o un rol laboral. El consultor de Agile, Scott Ambler, expreso: “DevOps se trata de que los desarrolladores entiendan la realidad de las operaciones y de que el equipo de operaciones comprenda lo que involucra el desarrollo.” DevOps no se trata de herramientas, sino de cultura, dijo Patrick Debois en una presentación titulada “DevOps: tonterías, herramientas y otras cosas inteligentes”, durante la Conferencia GOTO. Debois menciono también que las herramientas juegan un papel importante en el apoyo al enfoque de DevOps para la entrega y la gestión de software, pero DevOps no se trata de las herramientas en sí.
  • #11: Antes de conocer su definicion, les comparto esta frase de Sam Guckenheimer quien nos dice... Entonces consideremos que nuestra infraestructura es igual de importante que el codigo fuente...
  • #12: La IaC permite a recursos como máquinas virtuales gestionarse de manera programada, lo que elimina la necesidad de realizar configuraciones manuales o actualizaciones de componentes individuales de hardware. Esto hace que la infraestructura sea muy escalable y replicable. Un solo usuario puede implementar y gestionar una o cientos de recursos como máquinas virtuales usando el mismo conjunto de código (por decir algún ejemplo).
  • #13: Básicamente: “Trata tu infraestuctura como si fuera tu aplicación” El concepto de IaC es el marco del que ha surgido DevOps. Una línea cada vez más fina entre el código que ejecuta aplicaciones y el que configura la infraestructura, implica que los desarrolladores de aplicaciones y los profesionales de operaciones compartan cada vez más un conjunto de responsabilidades laborales.
  • #17: Si ya han tenido la oportunidad de utilizar Microsoft Azure, tendrán muy claro que desde el portal podemos desplegar una gran cantidad de servicios en la nube, basta con hacer unos clics y llenar algunos campos de información para lograr este objetivo. Pero ¿existe otra forma de hacerlo? la respuesta es «si» y de varias formas, en esta ocasión nos centraremos en ARM o mejor conocido como Azure Resource Manager.
  • #23: En este caso dejamos valores por defecto, si necesitamos especificaciones muy claras sobre aspectos de red, podemos hacer los respectivos cambios
  • #30: Hay disponibles nuevas características en las plantillas de Resource Manager que ayudan a resolver algunos desafíos clave.  Estas nuevas características abarcan desde la mayor facilidad para crear plantillas de Resource Manager con una nueva extensión de Visual Studio Code hasta la realización de análisis de hipótesis para comprender los cambios antes de implementar las plantillas. También incluyen scripts de implementación, aprovisionamiento de grupos de administración y suscripciones a gran escala. Cabe destacar que hay varias características clave de Azure Firewall disponibles con carácter general (GA) y en versión preliminar: Por ejemplo pronto habrá disponibles con carácter general varias direcciones IP públicas. Availability Zones ya está en disponibilidad general. El filtrado de FQDN de SQL está ahora en versión preliminar. La etiqueta FQDN de Azure HDInsight está ahora en versión preliminar. Ya está disponible la administración centralizada con soluciones de asociados.
  • #32: Hasta aquí la implementación de la máquina virtual es un proceso normal como para cualquier otra que no haga uso de ARM. Las plantillas básicamente definen la infraestructura y configuración de una solución en Microsoft Azure. Resource Manager de Azure toma estas plantillas en formato JSON y las traduce en llamadas API REST para su ejecución.
  • #38: Si consultamos la definición de su página web oficial, podemos decir que “Ansible es un lenguaje universal, que desentraña el misterio de cómo se realiza el trabajo”, sin duda una definición un poco mística En Wikipedia encontramos que se trata de “una plataforma de software libre para configurar y administrar computadoras”. Vale esta definición me gusta más. Desde mi experiencia les puedo decir que, sobre todo si tenemos que trabajar con multitud de dispositivos, no solo servidores, sino también dispositivos de red como switches o routers, o incluso trabajar con plataformas en la llamada nube, como AWS, Ansible nos puede ayudar, y mucho, en nuestro día a día.
  • #39: Sabemos que hoy en día nos encontramos con grandes retos que afrontar en el mundo Cloud, como el escalado de las aplicaciones y la definición de una arquitectura válida para el servicio que pretendemos desplegar. Para ello y para otro tipo de problemas, nos encontramos con herramientas como Terraform, capaz de facilitarnos la codificación de una infraestructura dependiendo de nuestras necesidades, los servicios que tengamos que prestar y con una gran variedad de proveedores donde depositar nuestra infraestructura. Terraform nos permite codificar nuestra infraestructura atendiendo a las necesidades de nuestro servicio y ofreciendo un amplio abanico de proveedores donde desembarcar nuestra infraestructura.
  • #40: Pulumi es una herramienta que nos permite realizar despliegues sobre plataformas de Cloud pública o privada. Aunque el número de proveedores que soporta es mucho menor que Terraform, soporta AWs, Microsoft Azure, GCP junto a Openstack y Kubernetes por lo que cubrirá la mayor parte de nuestas necesidades. Al igual que Terraform, Pulumi es otra herramienta de infraestructura cómo código y de código abierto. Sin embargo, la principal fortaleza de Pulumi es que si ya tenemos conocimientos previos de programación, podemos usarlos para desplegar dicha infraestructura. Soporta Node.js (Javascript, Typescript o cualquier otro lenguaje compatible), Python3 y Go, aunque si miramos su documentación es posible añadir cualquier lenguaje que queramos.