Inicio rápido: Creación e implementación de una especificación de plantilla
Artículo
En este inicio rápido se muestra cómo empaquetar una plantilla de Azure Resource Manager como especificación de plantilla. y, posteriormente, implementarla. La especificación de plantilla contiene una plantilla de Resource Manager que implementa una cuenta de almacenamiento.
Las especificaciones de plantilla se crean a partir de una plantilla local. Copie la siguiente plantilla y guárdela en un archivo local llamado azuredeploy.json. En esta guía de inicio rápido se da por supuesto que se ha guardado en la ruta de acceso c:\Templates\azuredeploy.json, pero puede usar cualquier ruta de acceso.
La especificación de plantilla es un tipo de recurso llamado Microsoft.Resources/templateSpecs. Para crear una especificación de plantilla, use PowerShell, la CLI de Azure, Azure Portal o una plantilla de Resource Manager.
Busque especificaciones de plantilla. Seleccione Especificaciones de plantilla entre las opciones disponibles.
Seleccione Importar plantilla.
Seleccione el icono de la carpeta.
Vaya a la plantilla local que ha guardado y selecciónela. Seleccione Open (Abrir).
Seleccione Import (Importar).
Proporcione los valores siguientes:
Nombre: escriba un nombre para la especificación de plantilla. Por ejemplo, storageSpec
Suscripción: seleccione la suscripción de Azure usada para crear la especificación de plantilla.
Grupo de recursos: seleccione Crear nuevo y especifique un nuevo nombre de grupo de recursos. Por ejemplo, templateSpecRG.
Ubicación: seleccione una ubicación para el grupo de recursos. Por ejemplo, Oeste de EE. UU. 2.
Versión: escriba una versión para la especificación de plantilla. Use 1.0.
Seleccione Revisar + crear.
Seleccione Crear.
Nota:
Es aconsejable que, en lugar de usar una plantilla de Resource Manager, se use PowerShell o la CLI para crear la especificación de plantilla. Dichas herramientas convierten automáticamente plantillas vinculadas en artefactos conectados a su plantilla principal. Si se usa una plantilla de Resource Manager para crear la especificación de plantilla, las plantillas vinculadas se deben agregar manualmente como artefactos, lo que puede resultar complicado.
Cuando se usa una plantilla de Resource Manager para crear la especificación de plantilla, la plantilla se incrusta en la definición de recurso. Es preciso realizar varios cambios en la plantilla local. Copie la siguiente plantilla y guárdela localmente como azuredeploy.json.
Nota:
En la plantilla insertada, todas las expresiones de plantilla se deben escapar con un segundo corchete de apertura. Use "[[ en lugar de "[. Las matrices JSON siguen usando un solo corchete de apertura.
az deployment group create \
--resource-group templateSpecRG \
--template-file "c:\Templates\azuredeploy.json"
Implementación de la especificación de plantilla
Para implementar una especificación de plantilla, utilice los mismos comandos de implementación que para implementar una plantilla. Pase el id. de recurso de la especificación de plantilla para implementarla.
Proporcione los parámetros exactamente como lo haría para una plantilla de ARM. Vuelva a implementar la especificación de plantilla con un parámetro para el tipo de cuenta de almacenamiento.
Existe un problema conocido al obtener el identificador de la especificación de plantilla y luego asignárselo a una variable en Windows PowerShell.
Implemente la especificación de plantilla.
az deployment group create \
--resource-group storageRG \
--template-spec $id
Proporcione los parámetros exactamente como lo haría para una plantilla de ARM. Vuelva a implementar la especificación de plantilla con un parámetro para el tipo de cuenta de almacenamiento.
az deployment group create \
--resource-group storageRG \
--template-spec $id \
--parameters storageAccountType='Standard_GRS'
Seleccione la especificación de plantilla que creó.
Seleccione Implementar.
Proporcione los valores siguientes:
Suscripción: seleccione una suscripción de Azure para crear el recurso.
Grupo de recursos: seleccione Crear nuevo y, luego, escriba storageRG.
Tipo de cuenta de almacenamiento: seleccione Standard_GRS.
Seleccione Revisar + crear.
Seleccione Crear.
Copie la siguiente plantilla y guárdela en un archivo local llamado storage.json.
az deployment group create \
--resource-group storageRG \
--template-file "c:\Templates\storage.json"
Conceder acceso
Si quiere permitir que otros usuarios de su organización implementen la especificación de plantilla, debe concederles acceso de lectura. Puede asignar el rol Lector a un grupo de Microsoft Entra para el grupo de recursos que contiene las especificaciones de plantilla que quiere compartir. Para más información, consulte el Tutorial: Concesión de acceso de grupo a recursos de Azure mediante Azure PowerShell.
Actualización de la plantilla
Supongamos que ha identificado un cambio que desea hacer en la plantilla en la especificación de plantilla. La siguiente plantilla es similar a la anterior, salvo que agrega un prefijo para el nombre de la cuenta de almacenamiento. Copie la siguiente plantilla y actualice el archivo azuredeploy.json.
Actualización de la versión de la especificación de plantilla
En lugar de crear una nueva especificación de plantilla para la plantilla revisada, agregue una nueva versión denominada 2.0 a la especificación de plantilla existente. Los usuarios pueden la versión que desean implementar.
Implemente esa versión. Proporcione un prefijo para el nombre de la cuenta de almacenamiento.
az deployment group create \
--resource-group storageRG \
--template-spec $id \
--parameters namePrefix='demoaccount'
En la especificación de plantilla, seleccione Crear versión nueva.
Asigne a la nueva versión el nombre 2.0 y, si lo desea, agregue notas. Seleccione Editar plantilla.
Reemplace el contenido de la plantilla por la plantilla actualizada. Seleccione Revisar y guardar.
Seleccione Save changes (Guardar los cambios).
Para implementar la nueva versión, seleccione Versiones
Para la versión que desea implementar, seleccione los tres puntos e Implementar.
Rellene los campos como hizo al implementar la versión anterior.
Seleccione Revisar + crear.
Seleccione Crear.
Una vez más, debe realizar algunos campos en la plantilla local para que funcione con las especificaciones de plantilla. Copie la siguiente plantilla y guárdela localmente como azuredeploy.json.