Introducción

Completado

Microsoft Azure admite varios métodos para aprovisionar recursos para una máquina virtual (VM) Linux y realizar la transición de cargas de trabajo basadas en Linux existentes.

Escenario de ejemplo

Supongamos que ha sido contratado por una empresa de servicios financieros para realizar la transición de sus cargas de trabajo locales basadas en Linux a Azure. Ha seleccionado Infraestructura como servicio (IaaS) y Plataforma como servicio (PaaS) como servicios para el proyecto y ha completado la planeación de los recursos necesarios para la implementación. Ahora debe seleccionar una metodología de implementación que ofrezca un equilibrio óptimo entre simplicidad y eficacia al aprovisionar las máquinas virtuales de Azure que ejecutan Linux. Entre las opciones se incluyen Azure Portal, la CLI de Azure y las plantillas de Terraform y Bicep.

Revisión de los métodos de implementación principales

Al elegir la metodología de implementación que se va a usar, debe tener en cuenta lo que ofrece cada opción.

Azure portal

El enfoque más sencillo para aprovisionar recursos de Azure es usar Azure Portal. Azure Portal es una consola unificada basada en web que ofrece una práctica alternativa a las herramientas de línea de comandos. Su interfaz gráfica basada en explorador está diseñada para ayudar con las tareas de administración e implementación de recursos solicitando al usuario la información necesaria, proporcionando sugerencias y mostrando útiles mensajes.

Azure CLI

La CLI de Azure es una herramienta de línea de comandos multiplataforma que puede usar para acceder a las suscripciones de Azure y administrar sus recursos. Puede ejecutar comandos de la CLI de Azure de forma interactiva en una interfaz de consola, como una ventana del símbolo del sistema de Windows o una sesión de shell de Linux. También puede incorporar la CLI de Azure en scripts que usan comandos de shell de Bash y utilidades GNU para automatizar el proceso.

Terraform

Terraform es una herramienta de infraestructura como código (IaC) de código abierto y multiplataforma que puede usar para aprovisionar y configurar una amplia gama de entornos, incluidas las nubes públicas y privadas de varios proveedores. A diferencia de la CLI de Azure, que proporciona un enfoque imperativo para la administración de recursos, Terraform sigue un enfoque declarativo.

Un enfoque imperativo implica escribir scripts o ejecutar una secuencia de comandos. Proporcione explícitamente los pasos que se deben ejecutar para generar un resultado deseado. Cuando utiliza implementaciones imperativas, es su responsabilidad administrar las dependencias, el control de errores y las actualizaciones de recursos. Un enfoque declarativo implica escribir una definición que describa el resultado deseado, en lugar de los pasos para implementarlo, mientras que la herramienta determina el método óptimo para ofrecer ese resultado automáticamente. Para ello, inspecciona el estado actual del entorno, lo compara con el estado de destino y, a continuación, implementa los cambios necesarios para que sean idénticos.

Nota

Red Hat Ansible es otra herramienta popular de código abierto que puede usar para complementar la funcionalidad de Terraform. Sin embargo, Ansible facilita el aprovisionamiento de recursos en la nube y admite tanto la administración de configuración como las implementaciones de aplicaciones.

Bicep

Bicep ofrece un método de aprovisionamiento declarativo alternativo a Terraform. Aunque se destina exclusivamente a los recursos de Azure, puede beneficiarse de varias características de integración y facilidad de uso comunes en las tecnologías basadas en la nube de Microsoft.

Nota:

Para ver una comparación completa entre Bicep y Terraform, consulte Comparación de Terraform y Bicep.

Azure admite dos tipos de plantillas para el aprovisionamiento declarativo:

  • Plantilla de Azure Resource Manager: Esta plantilla usa el formato de archivo de estándar abierto de notación de objetos JavaScript (JSON).

  • Plantilla de Bicep: Esta plantilla se basa en un lenguaje específico del dominio (DSL), que Microsoft desarrolló recientemente para simplificar la experiencia de creación de plantillas y mejorar la funcionalidad resultante.

Puede usar ambas plantillas para implementar prácticamente cualquier recurso de Azure. Estas plantillas también se integran fácilmente en sistemas de control de versiones y canalizaciones de implementación, lo que da lugar a mejores procesos de automatización y confiabilidad. Sin embargo, en comparación con las plantillas de Azure Resource Manager, las plantillas de Bicep ofrecen varias ventajas adicionales, incluida una sintaxis más concisa y la administración de dependencias integrada.

¿Qué hará?

En este módulo, elegirá el método de implementación óptimo para aprovisionar máquinas virtuales Linux en Azure. Su elección dependerá de los criterios que se hayan establecido durante la fase de planeamiento de la implementación.

¿Cuál es el objetivo principal?

Al final de este módulo, podrá aprovisionar máquinas virtuales de Azure que ejecutan Linux mediante la metodología de implementación que prefiera. También tendrá una mejor comprensión de los casos de uso más adecuados para cada método.