Compartir vía


Tutorial: Uso de una plantilla desde Azure Portal

En esta serie de tutoriales, creará una plantilla para implementar una cuenta de almacenamiento de Azure. En los dos tutoriales siguientes, agregará un plan de App Service y un sitio web. En lugar de crear plantillas desde cero, aprenderá a exportarlas desde Azure Portal y a usar las plantillas de inicio rápido de Azure de ejemplo. Se puede personalizar el uso de esas plantillas. Este tutorial se centra en la exportación de plantillas y en la personalización del resultado de la plantilla. Se tardan 14 minutos en completar esta instrucción.

Prerrequisitos

Aunque no es obligatorio, se recomienda realizar el tutorial sobre las salidas.

Debe tener Visual Studio Code con la extensión Herramientas de Resource Manager y Azure PowerShell o la Interfaz de la línea de comandos de Azure (CLI). Para más información, consulte las herramientas de plantilla.

Revisión de la plantilla

Al final del tutorial anterior, la plantilla tenía el siguiente código archivo JSON:

{
  "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
  "contentVersion": "1.0.0.0",
  "parameters": {
    "storagePrefix": {
      "type": "string",
      "minLength": 3,
      "maxLength": 11
    },
    "storageSKU": {
      "type": "string",
      "defaultValue": "Standard_LRS",
      "allowedValues": [
        "Standard_LRS",
        "Standard_GRS",
        "Standard_RAGRS",
        "Standard_ZRS",
        "Premium_LRS",
        "Premium_ZRS",
        "Standard_GZRS",
        "Standard_RAGZRS"
      ]
    },
    "location": {
      "type": "string",
      "defaultValue": "[resourceGroup().location]"
    }
  },
  "variables": {
    "uniqueStorageName": "[concat(parameters('storagePrefix'), uniqueString(resourceGroup().id))]"
  },
  "resources": [
    {
      "type": "Microsoft.Storage/storageAccounts",
      "apiVersion": "2021-09-01",
      "name": "[variables('uniqueStorageName')]",
      "location": "[parameters('location')]",
      "sku": {
        "name": "[parameters('storageSKU')]"
      },
      "kind": "StorageV2",
      "properties": {
        "supportsHttpsTrafficOnly": true
      }
    }
  ],
  "outputs": {
    "storageEndpoint": {
      "type": "object",
      "value": "[reference(variables('uniqueStorageName')).primaryEndpoints]"
    }
  }
}

Esta plantilla es adecuada para implementar cuentas de almacenamiento, pero puede agregarle más recursos. Puede exportar una plantilla desde un recurso existente para obtener rápidamente el código JSON de ese recurso.

Creación de un plan de App Service

  1. Inicie sesión en Azure Portal.

  2. Seleccione Crear un recurso.

  3. En Search services and Marketplace (Buscar en los servicios y el Marketplace), escriba Plan de App Service y, luego, seleccione Plan de App Service.

  4. Seleccione Crear.

  5. Introduzca lo siguiente en la página Crear plan de App Service:

    • Suscripción: seleccione la suscripción de Azure en el menú desplegable.
    • Grupo de recursos: Seleccione Crear nuevo y, luego, especifique un nombre. Indique un nombre de grupo de recursos diferente al que ha usado en esta serie de tutoriales.
    • Nombre: escriba un nombre para el plan de App Service.
    • Sistema operativo: seleccione Linux.
    • Región: seleccione una ubicación de Azure en el menú desplegable, por ejemplo, Centro de EE. UU.
    • Plan de tarifa: para ahorrar costes, seleccione Cambiar tamaño para cambiar el valor de SKU y tamaño a Básico (B1) en Desarrollo y prueba para cargas de trabajo menos exigentes.

    Captura de pantalla de la página Crear plan de App Service en Azure Portal.

  6. Seleccione Revisar y crear.

  7. Seleccione Crear. La creación del recurso tarda algunos minutos.

Exportación de la plantilla

  1. Haga clic en Go to resource (Ir al recurso).

    Captura de pantalla del botón Ir al recurso en Azure Portal.

  2. En el menú de la izquierda, en Automatización, seleccione Exportar plantilla.

    Captura de pantalla de la opción Exportar plantilla en Azure Portal.

    La característica de exportación de plantillas toma el estado actual de un recurso y genera una plantilla para implementarlo. Exportar una plantilla puede ser una forma útil de obtener rápidamente el código JSON necesario para implementar un recurso.

  3. Observe la definición Microsoft.Web/serverfarms y la definición de parámetros de la plantilla exportada. No es necesario copiar estas secciones. Puede usar esta plantilla exportada como ejemplo de cómo desea agregar este recurso a la plantilla.

    Captura de pantalla del código JSON de la plantilla exportada en Azure Portal.

Importante

Normalmente, la plantilla exportada es más detallada que cuando se crea una plantilla. Por ejemplo, el objeto SKU de la plantilla exportada tiene cinco propiedades. Esta plantilla funciona, pero podría usar simplemente la propiedad name. Puede comenzar con la plantilla exportada y, luego, modificarla para adaptarla a sus necesidades.

Revisión de la plantilla existente

La plantilla exportada le proporciona la mayor parte del código JSON que necesita, pero debe personalizarlo para su plantilla. Preste especial atención a las diferencias de parámetros y variables que existen entre la plantilla y la plantilla exportada. Obviamente, el proceso de exportación no conoce los parámetros y las variables que ya ha definido en la plantilla.

En el ejemplo siguiente se resaltan los elementos agregados a la plantilla. Contiene el código exportado y algunos cambios. En primer lugar, cambia el nombre del parámetro para que coincida con su convención de nomenclatura. En segundo lugar, usa el parámetro de ubicación para la ubicación del plan de App Service. En tercer lugar, elimina algunas de las propiedades en las que el valor predeterminado es correcto.

Copie el archivo completo y reemplace la plantilla por su contenido.

{
  "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
  "contentVersion": "1.0.0.0",
  "parameters": {
    "storagePrefix": {
      "type": "string",
      "minLength": 3,
      "maxLength": 11
    },
    "storageSKU": {
      "type": "string",
      "defaultValue": "Standard_LRS",
      "allowedValues": [
        "Standard_LRS",
        "Standard_GRS",
        "Standard_RAGRS",
        "Standard_ZRS",
        "Premium_LRS",
        "Premium_ZRS",
        "Standard_GZRS",
        "Standard_RAGZRS"
      ]
    },
    "location": {
      "type": "string",
      "defaultValue": "[resourceGroup().location]"
    },
    "appServicePlanName": {
      "type": "string",
      "defaultValue": "exampleplan"
    }
  },
  "variables": {
    "uniqueStorageName": "[concat(parameters('storagePrefix'), uniqueString(resourceGroup().id))]"
  },
  "resources": [
    {
      "type": "Microsoft.Storage/storageAccounts",
      "apiVersion": "2021-09-01",
      "name": "[variables('uniqueStorageName')]",
      "location": "[parameters('location')]",
      "sku": {
        "name": "[parameters('storageSKU')]"
      },
      "kind": "StorageV2",
      "properties": {
        "supportsHttpsTrafficOnly": true
      }
    },
    {
      "type": "Microsoft.Web/serverfarms",
      "apiVersion": "2021-03-01",
      "name": "[parameters('appServicePlanName')]",
      "location": "[parameters('location')]",
      "sku": {
        "name": "B1",
        "tier": "Basic",
        "size": "B1",
        "family": "B",
        "capacity": 1
      },
      "kind": "linux",
      "properties": {
        "perSiteScaling": false,
        "reserved": true,
        "targetWorkerCount": 0,
        "targetWorkerSizeId": 0
      }
    }
  ],
  "outputs": {
    "storageEndpoint": {
      "type": "object",
      "value": "[reference(variables('uniqueStorageName')).primaryEndpoints]"
    }
  }
}

Implementar plantilla

Use la CLI de Azure o Azure PowerShell para implementar una plantilla.

Si no ha creado el grupo de recursos, consulte Creación del grupo de recursos. En el ejemplo se supone que ha establecido la variable templateFile en la ruta de acceso al archivo de plantilla, como se muestra en el primer tutorial.

New-AzResourceGroupDeployment `
  -Name addappserviceplan `
  -ResourceGroupName myResourceGroup `
  -TemplateFile $templateFile `
  -storagePrefix "store" `
  -storageSKU Standard_LRS

Nota

Si se produjo un error en la implementación, use el modificador verbose para obtener información sobre los recursos que se están creando. Utilice el modificador debug para más información sobre la depuración.

Comprobación de la implementación

Para comprobar la implementación, explore el grupo de recursos desde Azure Portal.

  1. Inicie sesión en Azure Portal.
  2. En el menú izquierdo, seleccione Grupos de recursos.
  3. Seleccione el grupo de recursos en el que ha realizado la implementación.
  4. El grupo de recursos contiene una cuenta de almacenamiento y un plan de App Service.

Limpieza de recursos

Si va a pasar al siguiente tutorial, no es necesario que elimine el grupo de recursos.

Si va a terminar ya, puede eliminar el grupo de recursos.

  1. En Azure Portal, seleccione Grupos de recursos en el menú de la izquierda.
  2. Escriba el nombre del grupo de recursos en el campo de texto Filtro por cualquier campo....
  3. Active la casilla situada junto a myResourceGroup y seleccione myResourceGroup o el nombre del grupo de recursos.
  4. Seleccione Eliminar grupo de recursos del menú superior.

Pasos siguientes

Ha aprendido a exportar una plantilla desde Azure Portal y a usar la plantilla exportada para el desarrollo con plantillas. También puede usar las plantillas de inicio rápido de Azure para simplificar el desarrollo con plantillas.