Ejercicio: Definición de recursos en una plantilla de Bicep
Nota:
La primera vez que active un espacio aislado y acepte los términos, la cuenta de Microsoft se asocia a un nuevo directorio de Azure denominado Espacio aislado de Microsoft Learn. Se le agrega también a una suscripción especial llamada Suscripción de Concierge.
Para el sitio web de lanzamiento de juguetes, decide crear primero una prueba de concepto mediante la creación de una plantilla básica de Bicep. En este ejercicio, creará una cuenta de almacenamiento, un plan de Azure App Service y una aplicación. Más adelante, modificará la plantilla para que sea más reutilizable.
Durante el proceso, hará lo siguiente:
- Creará una plantilla que defina un único recurso de cuenta de almacenamiento que incluya valores codificados de forma rígida.
- Aprovisionará la infraestructura y comprobará el resultado.
- Agregará un plan de App Service y una aplicación a la plantilla.
- Aprovisionará de nuevo la infraestructura para ver los nuevos recursos.
En este ejercicio se usa la extensión de Bicep para Visual Studio Code. Asegúrese de instalar esta extensión en Visual Studio Code.
Creación de una plantilla de Bicep que contenga una cuenta de almacenamiento
Abra Visual Studio Code.
Cree un archivo con el nombre main.bicep.
Guarde el archivo vacío para que Visual Studio Code cargue las herramientas de Bicep.
Puede seleccionar Archivo>Guardar como o Ctrl+S en Windows (⌘+S en macOS). Debe acordarse de dónde ha guardado el archivo. Por ejemplo, podría crear una carpeta plantillas en la que guardar el fichero.
Agrega el código de Bicep siguiente al archivo. Implementará la plantilla pronto. Es una buena idea escribir el código usted mismo en lugar de copiar y pegar para que pueda ver cómo las herramientas le ayudan a escribir los archivos de Bicep.
resource storageAccount 'Microsoft.Storage/storageAccounts@2023-05-01' = { name: 'toylaunchstorage' location: 'eastus' sku: { name: 'Standard_LRS' } kind: 'StorageV2' properties: { accessTier: 'Hot' } }
Sugerencia
Bicep es estricto sobre dónde colocar los saltos de línea, así que asegúrese de no colocar saltos de línea en lugares diferentes de los que se enumeran aquí.
Tenga en cuenta Visual Studio Code sugiere automáticamente nombres de propiedad a medida que escribe. La extensión de Bicep para Visual Studio Code entiende los recursos que está definiendo en la plantilla y enumera las propiedades y valores disponibles que puede usar.
Actualice el nombre de la cuenta de almacenamiento de
toylaunchstorage
a algo que probablemente sea único, ya que cada cuenta de almacenamiento necesita un nombre único a nivel global. Asegúrese de que el nombre tenga entre 3 y 24 caracteres y que solo incluya números y letras en minúsculas.Importante
No omita este paso. Si lo hace, el archivo de Bicep no se implementará correctamente.
Guarde los cambios en el archivo.
Implementación de la plantilla de Bicep en Azure
Para implementar esta plantilla en Azure, debe iniciar sesión en la cuenta de Azure desde el terminal de Visual Studio Code. Asegúrese de que tiene instalada la CLI de Azure y de que inicia sesión con la misma cuenta que utilizó para activar el espacio aislado.
En el menú Terminal, seleccione Nuevo terminal. Normalmente, la ventana de terminal se abre en la mitad inferior de la pantalla.
Si la ventana del terminal muestra Bash en el lado derecho, significa que el shell correcto ya está abierto. Como alternativa, si ve un icono de shell de Bash a la derecha, puede seleccionarlo para iniciar el shell.
Si apareciera un shell distinto de Bash, seleccione la flecha de la lista desplegable del shell y, a continuación, seleccione Bash de Git.
En el terminal, vaya al directorio donde ha guardado la plantilla. Por ejemplo, si ha guardado la plantilla en la carpeta templates, puede usar este comando:
cd templates
Instalación de Bicep
Ejecute el comando siguiente para asegurarse de que tiene la versión más reciente de Bicep:
az bicep install && az bicep upgrade
Inicio de sesión en Azure
En el terminal de Visual Studio Code, inicie sesión en Azure mediante el siguiente comando:
az login
En el explorador que se abre, inicie sesión en su cuenta de Azure.
En el terminal de Visual Studio Code se muestra una lista de las suscripciones asociadas a esta cuenta.
Establezca la suscripción predeterminada para todos los comandos de la CLI de Azure que ejecute en esta sesión.
az account set --subscription "Concierge Subscription"
Nota:
Si ha usado más de un espacio aislado recientemente, es posible que en el terminal se muestre más de una instancia de Suscripción de Concierge. En este caso, siga estos dos pasos para establecer una de las suscripciones como la predeterminada. Si el comando anterior se ha realizado correctamente y solo se muestra una Suscripción de Concierge, omita los dos pasos siguientes.
Obtenga los identificadores de la Suscripción de Concierge.
az account list \ --refresh \ --query "[?contains(name, 'Concierge Subscription')].id" \ --output table
Establezca la suscripción predeterminada con el identificador de la suscripción. Reemplace {identificador de su suscripción} por el identificador más reciente de la Suscripción de Concierge.
az account set --subscription {your subscription ID}
Establecimiento del grupo de recursos predeterminado
Al usar la CLI de Azure, puede establecer el grupo de recursos predeterminado y omitir el parámetro del resto de los comandos de la CLI de Azure de este ejercicio. Establezca el valor predeterminado en el grupo de recursos que se ha creado de forma automática en el entorno del espacio aislado.
az configure --defaults group="<rgn>[sandbox resource group name]</rgn>"
Implementación de la plantilla en Azure
Ejecute el comando siguiente desde el terminal en Visual Studio Code para implementar la plantilla de Bicep en Azure. El comando puede tardar un par de minutos en completarse; después, verá que la implementación se realizó correctamente. Si ve una advertencia sobre la ubicación codificada de forma rígida, puede omitirla. Corregirá la ubicación más adelante en el módulo. Es seguro continuar y la implementación se realizará correctamente.
az deployment group create --template-file main.bicep
Verá Running...
en el terminal.
Para implementar esta plantilla en Azure, inicie sesión en la cuenta de Azure desde el terminal de Visual Studio Code. Asegúrese de haber instalado Azure PowerShell e inicie sesión en la misma cuenta que ha activado el espacio aislado.
En el menú Terminal, seleccione Nuevo terminal. Normalmente, la ventana de terminal se abre en la mitad inferior de la pantalla.
Si la ventana del terminal muestra pwsh o powershell en el lado derecho, significa que el shell correcto ya está abierto. Como alternativa, si ve un icono de shell de PowerShell a la derecha, puede seleccionarlo para iniciar el shell.
Si aparece un shell distinto de pwsh o PowerShell, seleccione la flecha desplegable del shell y, a continuación, seleccione PowerShell.
En el terminal, vaya al directorio donde ha guardado la plantilla. Por ejemplo, si ha guardado la plantilla en la carpeta templates, puede usar este comando:
Set-Location -Path templates
Instalación de la CLI de Bicep
Para usar Bicep desde Azure PowerShell, instale la CLI de Bicep.
Inicio de sesión en Azure mediante Azure PowerShell
En el terminal de Visual Studio Code, ejecute el comando siguiente:
Connect-AzAccount
Se abre un explorador para que pueda iniciar sesión en la cuenta de Azure.
Después de iniciar sesión, en el terminal se muestra una lista de las suscripciones asociadas a esta cuenta.
Si ha activado el espacio aislado, se muestra una suscripción denominada Suscripción de Concierge. Úsela para el resto del ejercicio.
Establezca la suscripción predeterminada para todos los comandos de Azure PowerShell que ejecute en esta sesión.
$context = Get-AzSubscription -SubscriptionName 'Concierge Subscription' Set-AzContext $context
Nota:
Si ha usado más de un espacio aislado recientemente, es posible que en el terminal se muestre más de una instancia de Suscripción de Concierge. En este caso, siga estos dos pasos para establecer una de las suscripciones como la predeterminada. Si el comando anterior se ha realizado correctamente y solo se muestra una Suscripción de Concierge, omita los dos pasos siguientes.
Obtenga el identificador de la suscripción. Al ejecutar el comando siguiente se mostrarán las suscripciones y sus identificadores. Busque
Concierge Subscription
y copie el identificador de la segunda columna. Tiene un aspecto similar aaaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e
.Get-AzSubscription
Cambie la suscripción activa a la Suscripción de Concierge. Asegúrese de reemplazar {identificador de la suscripción} por el que ha copiado.
$context = Get-AzSubscription -SubscriptionId {Your subscription ID} Set-AzContext $context
Establecimiento del grupo de recursos predeterminado
Puede establecer el grupo de recursos predeterminado y omitir el parámetro del resto de los comandos de Azure PowerShell de este ejercicio. Establezca este valor predeterminado en el grupo de recursos que se ha creado de forma automática en el entorno del espacio aislado.
Set-AzDefault -ResourceGroupName <rgn>[sandbox resource group name]</rgn>
Implementación de la plantilla en Azure
Implemente la plantilla en Azure usando el siguiente comando de Azure PowerShell en el terminal. El comando puede tardar un par de minutos en completarse y, luego, verá que la implementación se realizó correctamente. Si ve una advertencia sobre la ubicación codificada de forma rígida, puede omitirla. Corregirá la ubicación más adelante en el módulo. Es seguro continuar y la implementación se realizará correctamente.
New-AzResourceGroupDeployment -TemplateFile main.bicep
Comprobación de la implementación
La primera vez que implemente una plantilla de Bicep, es posible que desee usar Azure Portal para comprobar que la implementación ha finalizado correctamente y para inspeccionar los resultados.
Vaya a Azure Portal y asegúrese de que está en la suscripción de espacio aislado:
- Seleccione el avatar en la esquina superior derecha de la página.
- Seleccione Cambiar directorio. En la lista, seleccione el directorio Espacio aislado de Microsoft Learn.
En el panel izquierdo, seleccione Grupos de recursos.
Seleccione
[nombre del grupo de recursos del espacio aislado] .En la Información general, puede ver la implementación realizada correctamente. Es posible que tenga que expandir el área Essentials para ver la implementación.
Seleccione 1 correcta para ver los detalles de la implementación.
Seleccione la implementación llamada main para ver qué recursos se han implementado; después, seleccione Detalles de la implementación para expandirla. En este caso, hay una cuenta de almacenamiento con el nombre que especificó.
Deje la página abierta en el explorador. Tendrá que volver a comprobar las implementaciones posteriormente.
También puede verificar la implementación desde la línea de comandos. Para ello, ejecute el siguiente comando de la CLI de Azure:
az deployment group list --output table
También puede verificar la implementación desde la línea de comandos. Para ello, ejecute el siguiente comando de Azure Powershell:
Get-AzResourceGroupDeployment -ResourceGroupName <rgn>[sandbox resource group name]</rgn> | Format-Table
Adición de un plan de App Service a la plantilla de Bicep
En la tarea anterior, ha aprendido a crear una plantilla que contiene un único recurso y a implementarla. Ahora está listo para implementar más recursos, incluida una dependencia. En esta tarea, agregará un plan de App Service y una aplicación a la plantilla de Bicep.
En el archivo main.bicep en Visual Studio Code, agregue el código siguiente en la parte inferior:
resource appServicePlan 'Microsoft.Web/serverfarms@2023-12-01' = { name: 'toy-product-launch-plan-starter' location: 'eastus' sku: { name: 'F1' } } resource appServiceApp 'Microsoft.Web/sites@2023-12-01' = { name: 'toy-product-launch-1' location: 'eastus' properties: { serverFarmId: appServicePlan.id httpsOnly: true } }
Actualice el nombre de la aplicación de App Service de
toy-product-launch-1
a algo que es probable que sea único. Asegúrese de que el nombre tenga entre 2 y 60 caracteres con guiones, números y letras en minúsculas y que no comienza ni termina con un guion.Guarde los cambios en el archivo.
Implementación de la plantilla de Bicep actualizada
Ejecute el siguiente comando de la CLI de Azure en el terminal. Puede omitir las advertencias sobre la ubicación codificada de forma rígida. Pronto corregirá la ubicación.
az deployment group create --template-file main.bicep
Ejecute el siguiente comando de Azure PowerShell en el terminal. Puede omitir los mensajes de advertencia sobre la ubicación codificada de forma rígida. Pronto corregirá la ubicación.
New-AzResourceGroupDeployment -TemplateFile main.bicep
Comprobación de la implementación
Vuelva a Azure Portal y vaya al grupo de recursos. Seguirá viendo una implementación correcta, ya que esta habrá usado el mismo nombre que la primera.
Seleccione el vínculo 1 Succeeded (1 correcta).
Seleccione la implementación llamada main y, después, Detalles de la implementación para expandir la lista de recursos implementados.
Tenga en cuenta que se implementó la aplicación y el plan de App Service.