Creación de una plantilla ARM desde la plataforma de Visual Studio Code

https://youtu.be/ZHyTzW3YLvw

El videotutorial trata de como desplegar una máquina virtual mediante una plantilla ARM a través de la CLI de Azure.

Pero antes que nada tendremos que saber…

¿Qué es un ARM?

Un ARM (Azure Resource Manager) es un servicio de implementación y administración para Azure. A través de estas plantillas, podemos crear, actualizar y eliminar recursos de la cuenta de Azure. Gracias a estas plantillas podemos crear nuestra infraestructura como código y así poder desplegar nuestro proyecto, recrear lo en otro momento de forma incremental o desde el principio, es necesario crear nuestro entorno, en este caso, nuestro grupo de recursos para modificar nuestras plantillas.

¿Cuáles son las ventajas de usar plantillas ARM?

La principal ventaja es el tiempo que nos ahorramos para desplegar los recursos. Y no solo un recurso, sino todos los recursos necesarios y a la vez.

¿De qué está formada la plantilla ARM?

Una plantilla ARM tiene un formato JSON. Permite un mayor control (es más descriptivo, ya que podemos nombrar las NIC de la máquina virtual) y la implementación es más rápida a comparación con el entorno gráfico de Azure o incluso usando Powershell.

¿Cómo es la estructura básica de un archivo JSON?

Su estructura es similar a XML. Incluyen corchetes, llaves, sangrías y comas. Pero como todo… Tiene una estructura y con este ejemplo podemos comprenderlo:

{

«$esquema»: «http://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#«,

«versión de contenido»: «1.0.0.0»,

«parámetros»: {},

«Variables»: {},

«recursos»: []

}

En esta estructura podemos observar que está definido por la variable $schema. En ella, se compone de 3 valores:

  • Parámetros
  • Variables
  • Recursos

¿Es necesario crear plantillas desde cero cada vez que quiero desplegar recursos?

Por supuesto que no. Existen varias plataformas con un repositorio de plantillas que podemos encontrar mediante un motor de búsqueda. Una de las plataformas más conocidas y con la que trabaja Azure es Github. Incluso disponemos de la función de selección de plantillas de inicio rápido en Azure, para poder buscar y explorar fácilmente estas plantillas dentro de Microsoft Azure.

Creación de la plantilla ARM

Ahora que sabemos para qué sirven las plantillas ARM pasamos a cómo crear un proyecto en ARM y empezar a crear nuestra plantilla, abrir plantillas ya creadas o modificarlas. Para ello utilizaremos Visual Studio Code, ya que es un editor de código fuente desarrollado por Microsoft que cuenta con una gran variedad de lenguajes y gracias a sus extensiones, podemos aprender a utilizarlo sin grandes complicaciones.

Antes de empezar a crear nuestras plantillas ARM, es necesario instalar las siguientes extensiones dentro de la plataforma:

  • Azure Account: nos proporciona compatibilidad con idiomas, fragmentos de código de recursos y finalización automática de recursos para ayudarlo a crear y validar plantillas de Azure Resource Manager.
  • Azure Resource Manager (ARM) Tools: proporciona una única experiencia de filtrado de suscripciones e inicio de sesión de Azure para todas las demás extensiones de Azure. Hace que el servicio Cloud Shell de Azure esté disponible en la terminal integrada de VS Code.
  • Azure CLI tools: esto es opcional, para desarrollar y ejecutar comandos con la CLI de Azure desde esta misma plataforma y no tener que interactuar con el portal de Azure.

Sincronizar nuestra cuenta de Azure con Visual Studio Code

Una vez instaladas las extensiones en el portal de Visual Studio Code presionamos Ctrl+Shift+P para abrir el comand palette e indicamos «sig in cloud shell»

Y así iniciamos sesión en nuestra cuenta de Azure para realizar todas las gestiones en Visual Studio Code.

Autor/a:  Rodrigo Alexander Diestra Moreno

Curso: Administración de Sistemas MultiCloud Azure y AWS

Centro: Tajamar

Año académico: 2021-2022

Linkedin: www.linkedin.com/in/rodrigodiestramoreno

Leave a Comment

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.