Inicio rápido: implementación de una aplicación administrada del catálogo de servicios
Artículo
En este inicio rápido, se usará la definición de aplicación administrada que creó usando uno de los artículos de inicio rápido. La implementación crea dos grupos de recursos. Uno contiene la aplicación administrada y el otro es un grupo de recursos administrado para el recurso implementado. La definición de aplicación administrada implementa un plan de App Service, App Service y cuenta de almacenamiento.
Creación de una aplicación administrada del catálogo de servicios
En los ejemplos se usan los nombres para los grupos de recursos creados en el inicio rápido para publicar una definición de aplicación. Si usó el inicio rápido para publicar una definición con Bring Your Own Storage, use esos nombres de grupo de recursos.
Publicar definición de aplicación: packageStorageGroup y appDefinitionGroup.
Publicar definición con Trae tu almacenamiento: packageStorageGroup, byosDefinitionStorageGroup y byosAppDefinitionGroup.
Obtener la definición de la aplicación administrada
Para obtener la definición de la aplicación administrada con Azure PowerShell, ejecute los siguientes comandos.
En Visual Studio Code, abra un nuevo terminal de PowerShell e inicie sesión en su suscripción de Azure.
Connect-AzAccount
Este comando abrirá el explorador predeterminado y le solicitará iniciar sesión en Azure. Para obtener más información, vaya a Inicio de sesión con Azure PowerShell.
En Azure PowerShell, obtenga la definición de la aplicación administrada. En este ejemplo, use el nombre del grupo de recursos appDefinitionGroup que se creó cuando implementó la definición de aplicación administrada.
Use el valor de variable $definitionid cuando implemente la aplicación administrada.
Para obtener la definición de la aplicación administrada con la CLI de Azure, ejecute los siguientes comandos.
En Visual Studio Code, abra una nueva sesión de terminal de Bash e inicie sesión en su suscripción de Azure. Si tiene Git instalado, seleccione Git Bash.
az login
Este comando abrirá el explorador predeterminado y le solicitará iniciar sesión en Azure. Para obtener más información, vaya a Inicio de sesión con la CLI de Azure.
En la CLI de Azure, obtenga la definición de la aplicación administrada. En este ejemplo, use el nombre del grupo de recursos appDefinitionGroup que se creó cuando implementó la definición de aplicación administrada.
az managedapp definition list --resource-group appDefinitionGroup
El comando enumera todas las definiciones disponibles del grupo de recursos especificado, como sampleManagedApplication.
Cree una variable para el identificador de recurso de la definición de aplicación administrada.
definitionid=$(az managedapp definition show --resource-group appDefinitionGroup --name sampleManagedApplication --query id --output tsv)
Use el valor de variable $definitionid cuando implemente la aplicación administrada.
Para obtener la definición de la aplicación administrada de la Azure Portal, siga los pasos siguientes.
También debe crear un nombre para el grupo de recursos de la aplicación administrada. El grupo de recursos se crea al implementar la aplicación administrada.
Ejecute los comandos siguientes para crear el nombre del grupo de recursos administrado.
Las variables $mrgprefix y $mrgtimestamp se concatenan y almacenan en la variable $mrgname. El valor de la variable tiene el formato mrg-sampleManagedApplication-20230512103059. Use el valor de variable $mrgname cuando implemente la aplicación administrada.
Debe proporcionar varios parámetros al comando de implementación de la aplicación administrada. Puede usar una cadena con formato JSON o crear un archivo JSON. En este ejemplo, se usa una cadena con formato JSON. El carácter de escape de PowerShell para las comillas es el carácter de tilde aguda (`). La tilde aguda también se usa para la continuación de línea en los comandos que puedan usar varias líneas.
La sintaxis de la cadena con formato JSON es la siguiente:
Para mejorar la legibilidad, la cadena JSON completada usa la tilde aguda para la continuación de línea. Los valores se almacenan en la variable $params y se usan en el comando de implementación. Los parámetros de la cadena JSON son necesarios para implementar los recursos administrados.
appServicePlanName: Crear un nombre para el plan. Máximo de 40 caracteres alfanuméricos y guiones. Por ejemplo, demoAppServicePlan. Los nombres de plan de App Service deben ser únicos dentro de un grupo de recursos de la suscripción.
appServiceNamePrefix: crea un prefijo para el nombre del plan. Máximo de 47 caracteres alfanuméricos o guiones. Por ejemplo, demoApp. Durante la implementación, el prefijo se concatena con una cadena única para crear un nombre único globalmente en Azure.
Cree un grupo de recursos para la implementación de la aplicación administrada.
az group create --name applicationGroup --location westus
También debe crear un nombre y una ruta para el grupo de recursos de la aplicación administrada. El grupo de recursos se crea al implementar la aplicación administrada.
Ejecute los comandos siguientes para crear la ruta del grupo de recursos administrado.
Las variables $mrgprefix y $mrgtimestamp se concatenan y almacenan en la variable $mrgname. El valor de la variable tiene el formato mrg-sampleManagedApplication-20230512103059. Las variables mrgname y subid se concatenan para crear el valor de la variable mrgpath que crea el grupo de recursos administrado durante la implementación.
Debe proporcionar varios parámetros al comando de implementación de la aplicación administrada. Puede usar una cadena con formato JSON o crear un archivo JSON. En este ejemplo, se usa una cadena con formato JSON. En Bash, el carácter de escape para las comillas es el carácter de barra invertida (\). La barra diagonal inversa también se usa para la continuación de línea en los comandos que puedan usar varias líneas.
La sintaxis de la cadena con formato JSON es la siguiente:
Para facilitar la lectura, la cadena JSON completa usa la barra invertida para la continuación de la línea. Los valores se almacenan en la variable params y se usan en el comando de implementación. Los parámetros de la cadena JSON son necesarios para implementar los recursos administrados.
appServicePlanName: Crear un nombre para el plan. Máximo de 40 caracteres alfanuméricos y guiones. Por ejemplo, demoAppServicePlan. Los nombres de plan de App Service deben ser únicos dentro de un grupo de recursos de la suscripción.
appServiceNamePrefix: crea un prefijo para el nombre del plan. Máximo de 47 caracteres alfanuméricos o guiones. Por ejemplo, demoApp. Durante la implementación, el prefijo se concatena con una cadena única para crear un nombre único globalmente en Azure.
Proporcione valores para la pestaña Básicosy seleccione Siguiente.
Suscripción: seleccione la suscripción en la que desea implementar la aplicación administrada.
Grupo de recursos: seleccione el grupo de recursos. En este ejemplo, cree un grupo de recursos denominado applicationGroup.
Región: seleccione la ubicación en la que desea implementar el recurso.
En Nombre de aplicación, escriba el nombre de la aplicación administrada. En este ejemplo, use demoManagedApplication.
Grupo de recursos administrado: nombre del grupo de recursos administrado que contiene los recursos que se implementan para la aplicación administrada. El nombre predeterminado tiene el formato mrg-{definitionName}-{dateTime}, pero puedes cambiar el nombre.
Proporcione valores para la pestaña configuración de Web App y seleccione Siguiente.
Nombre del plan de App Service: crear un nombre de plan. Máximo de 40 caracteres alfanuméricos y guiones. Por ejemplo, demoAppServicePlan. Los nombres de plan de App Service deben ser únicos dentro de un grupo de recursos de la suscripción.
Prefijo de nombre de App Service: crea un prefijo para el nombre del plan. Máximo de 47 caracteres alfanuméricos o guiones. Por ejemplo, demoApp. Durante la implementación, el prefijo se concatena con una cadena única para crear un nombre único globalmente en Azure.
Los parámetros usados en el comando de implementación:
Name: Especificar un nombre para la aplicación administrada. En este ejemplo, use demoManagedApplication.
ResourceGroupName: Nombre del grupo de recursos que creó para la aplicación administrada.
Location: especifique la región para la implementación de recursos. En este ejemplo, use westus.
ManagedResourceGroupName: usa el valor de la variable de $mrgname. El grupo de recursos administrado se crea cuando se implementa la aplicación administrada.
ManagedApplicationDefinitionId: Usa el valor de variable $definitionid para el identificador de recurso de la definición de aplicación administrada.
Kind: Especifica el tipo de aplicación administrada. En este ejemplo se usa ServiceCatalog.
Parameter: Usa el valor de variable $params en la cadena con formato JSON.
Ejecute el siguiente comando para implementar la aplicación administrada.
Los parámetros usados en el comando de implementación:
name: Especificar un nombre para la aplicación administrada. En este ejemplo, use demoManagedApplication.
resource-group: Nombre del grupo de recursos que creó para la aplicación administrada.
location: especifique la región para la implementación de recursos. En este ejemplo, use westus.
managed-rg-id: usa el valor de la variable de $mrgpath. El grupo de recursos administrado se crea cuando se implementa la aplicación administrada.
managedapp-definition-id: Usa el valor de variable $definitionid para el identificador de recurso de la definición de aplicación administrada.
kind: Especifica el tipo de aplicación administrada. En este ejemplo se usa ServiceCatalog.
parameters: Usa el valor de variable $params en la cadena con formato JSON.
Revise el resumen de los valores seleccionados y compruebe que no se muestran errores. Selecciona Crear para implementar la aplicación administrada.
Vista de resultados
Una vez implementada la aplicación administrada del catálogo de servicios, tendrá dos nuevos grupos de recursos. Uno contiene la aplicación administrada El otro grupo de recursos contiene los recursos administrados que se han implementado. En este ejemplo, un App Service, un plan de App Service y una cuenta de almacenamiento.
Aplicación administrada
Una vez finalizada la implementación, puede comprobar el estado de la aplicación administrada.
Ejecute el comando siguiente para comprobar el estado de la aplicación administrada.
az managedapp list --resource-group applicationGroup
El siguiente comando analiza los datos sobre la aplicación administrada para mostrar solo el nombre y el estado de aprovisionamiento de la aplicación.
az managedapp list --resource-group applicationGroup --query "[].{Name:name, provisioningState:provisioningState}"
Ve al grupo de recursos denominado applicationGroup y selecciona Información general. El grupo de recursos contiene la aplicación administrada denominada demoManagedApplication.
Selecciona el nombre de la aplicación administrada para obtener más información, como el vínculo al grupo de recursos administrado.
Recursos administrados
Puede ver los recursos implementados en el grupo de recursos administrados.
Para mostrar los recursos del grupo de recursos administrados, ejecute el siguiente comando. Ha creado la variable $mrgname al crear los parámetros.
Get-AzResource -ResourceGroupName $mrgname
Para mostrar todas las asignaciones de roles para el grupo de recursos administrados.
Get-AzRoleAssignment -ResourceGroupName $mrgname
La definición de aplicación administrada que creó en los artículos de inicio rápido usó un grupo con la asignación de roles Propietario. Cree el grupo con el comando siguiente.
También puede enumerar las asignaciones de denegación para el grupo de recursos administrado.
Get-AzDenyAssignment -ResourceGroupName $mrgname
Para mostrar los recursos del grupo de recursos administrados, ejecute el siguiente comando. Ha creado la variable $mrgname al crear los parámetros.
az resource list --resource-group $mrgname
Ejecute el siguiente comando para enumerar solo el nombre, el tipo y el estado de aprovisionamiento de los recursos administrados.
az resource list --resource-group $mrgname --query "[].{Name:name, Type:type, provisioningState:provisioningState}"
Ejecute el siguiente comando para enumerar la asignación de roles para el grupo que se usó en la definición de la aplicación administrada.
az role assignment list --resource-group $mrgname
El siguiente comando analiza los datos de la asignación de roles del grupo.
az role assignment list --resource-group $mrgname --role Owner --query "[].{ResourceGroup:resourceGroup, GroupName:principalName, RoleDefinition:roleDefinitionId, Role:roleDefinitionName}"
Para revisar las asignaciones de denegación del grupo de recursos administrados, use los comandos Azure Portal o Azure PowerShell.
Ve al grupo de recursos administrados con el prefijo de nombre mrg-sampleManagedApplication y selecciona Información general para mostrar los recursos que se implementaron. El grupo de recursos contiene un App Service, un plan de App Service y una cuenta de almacenamiento.
El grupo de recursos administrado y cada recurso creado por la aplicación administrada tiene una asignación de roles. Cuando usaste un artículo de inicio rápido para crear la definición, creaste un grupo de Microsoft Entra. Ese grupo se usó en la definición de aplicación administrada. Cuando implementaste la aplicación administrada, se agregó una asignación de funciones para ese grupo a los recursos administrados.
Para ver la asignación de roles desde Azure Portal:
Ir al grupo de recursos mrg-sampleManagedApplication.
Seleccione Control de acceso (IAM)>Asignaciones de roles.
También puede ver las asignaciones de denegación del recurso.
La asignación de roles concede acceso al editor de la aplicación para administrar la cuenta de almacenamiento. En este ejemplo, el editor podría ser su departamento de TI. Las asignaciones de denegación impiden que los clientes realicen cambios en la configuración de un recurso administrado. Las aplicaciones administradas están diseñadas para que los clientes no necesiten mantener los recursos. Las asignaciones de Denegar excluyen el grupo de Microsoft Entra asignado en Asignaciones de roles.
Limpieza de recursos
Cuando haya terminado con la aplicación administrada, podrá eliminar los grupos de recursos y eso eliminará todos los recursos creados. Por ejemplo, en esta guía de inicio rápido creó los grupos de recursos applicationGroup y un grupo de recursos administrado con el prefijo mrg-sampleManagedApplication.