Inicio rápido: Implementación de la primera aplicación en Azure Spring Apps

Nota:

Las primeras 50 horas de vCPU y 100 GB de memoria al mes son gratuitos. Para más información, consulte el artículo Price Reduction - Azure Spring Apps does more, costs less! ("Reducción de precios: Azure Spring Apps te da más por menos") en el Blog de Apps on Azure.

Nota

Azure Spring Apps es el nuevo nombre del servicio Azure Spring Cloud. Aunque el servicio tiene un nuevo nombre, verá el nombre antiguo en algunos lugares durante un tiempo mientras trabajamos para actualizar recursos, como capturas de pantalla, vídeos y diagramas.

En este artículo se explica cómo implementar una sencilla aplicación para que se ejecute en Azure Spring Apps.

El código de aplicación que se usa en este tutorial es una aplicación sencilla. Cuando haya completado este ejemplo, se podrá acceder en línea a la aplicación y la podrá administrar mediante Azure Portal.

En este artículo se describen las siguientes dos opciones para la implementación en Azure Spring Apps:

  • El Azure Portal es una manera más convencional de crear recursos e implementar aplicaciones paso a paso. Es adecuado para los desarrolladores de Spring que usan los servicios en la nube de Azure por primera vez.
  • El Azure Developer CLI es una manera más eficaz de crear automáticamente recursos e implementar aplicaciones a través de comandos sencillos. Abarca el código de la aplicación y la infraestructura como archivos de código necesarios para aprovisionar los recursos de Azure. Es adecuado para los desarrolladores de Spring que están familiarizados con los servicios en la nube de Azure.

1. Prerrequisitos

2. Preparar el proyecto Spring

Siga estos pasos para preparar el proyecto:

  1. Use el siguiente comando para clonar el proyecto de ejemplo de Spring Boot desde GitHub.

    git clone https://github.com/spring-guides/gs-spring-boot-for-azure.git
    
  2. Use el siguiente comando para ir a la carpeta del proyecto:

    cd gs-spring-boot-for-azure/complete
    
  3. Use el siguiente comando de Maven para compilar el proyecto:

    ./mvnw clean package
    
  4. Ejecute el proyecto de ejemplo localmente mediante el comando siguiente:

    ./mvnw spring-boot:run
    

3. Preparar el entorno en la nube

El recurso principal que necesita para ejecutar este ejemplo es una instancia de Azure Spring Apps. Siga estos pasos para crear este recurso.

3.1. Inicio de sesión en Azure Portal

Abra el explorador web y vaya a Azure Portal. Introduzca sus credenciales para iniciar sesión en el portal. La vista predeterminada es el panel del servicio.

3.2. Creación de una instancia de Azure Spring Apps

Use los siguientes pasos para crear una instancia de servicio de Azure Spring Apps:

  1. En la esquina de Azure Portal, seleccione Crear un recurso.

  2. Seleccione Proceso>Azure Spring Apps.

    Captura de pantalla del portal Azure que muestra Azure Spring Apps en la lista de recursos informáticos.

  3. Complete el formulario Conceptos básicos con la siguiente información.

    Use la tabla siguiente como guía para completar el formulario. El plan recomendado es Standard consumption & dedicated (preview).

    Configuración Valor sugerido Descripción
    Subscription Nombre de la suscripción La suscripción de Azure que desea usar para el servidor. Si tiene varias suscripciones, elija aquella en la que quiere que se le facture el recurso.
    Resource group myresourcegroup Un nuevo nombre de grupo de recursos o uno existente de la suscripción.
    Nombre myasa Nombre único que identifica al servicio de Azure Spring Apps. El nombre debe tener entre 4 y 32 caracteres, y solo puede contener números, letras minúsculas y guiones. El primer carácter del nombre del servicio debe ser una letra y el último debe ser una letra o un número.
    Plan Consumo & estándar dedicado (versión preliminar) El plan de precios determina los recursos y el coste asociados a la instancia.
    Region Región más cercana a los usuarios La ubicación más cercana a los usuarios.
    Entorno de Container Apps myacaenv El entorno es un límite seguro alrededor de una o varias aplicaciones de contenedor que se pueden comunicar entre sí y compartir una red virtual, un registro y una configuración de Dapr.

    Captura de pantalla del portal Azure que muestra la página Crear Azure Spring Apps.

  4. (Opcional) Crear un entorno de Container Apps.

    1. Complete la pestaña Datos básicos con la información siguiente:

      • Nombre del entorno: myacaenv
      • Plan: Consumo
      • Redundancia de zona: Deshabilitada

      Captura de pantalla de Azure Portal que muestra Crear entorno de Container Apps con un plan de consumo dedicado.

    2. Seleccione Crear para crear el entorno de aplicaciones de contenedor.

  5. Seleccione Revisar y crear para revisar las selecciones. Seleccione Crear para aprovisionar la instancia de Azure Spring Apps.

  6. En la barra de herramientas, seleccione el símbolo de Notificaciones (una campana) para supervisar el proceso de implementación. Una vez realizada la implementación, puede seleccionar Anclar al panel para crear un mosaico para este servicio en el panel de Azure Portal como un acceso directo a la página Información general del servicio.

    Captura de pantalla del portal Azure que muestra el panel Notificaciones para la creación de Azure Spring Apps.

  7. Seleccione Ir al recurso para ir a la página Información general de Azure Spring Apps.

4. Implementación de la aplicación en Azure Spring Apps

En esta sección se proporcionan los pasos para implementar la aplicación en Azure Spring Apps.

Siga estos pasos para implementar mediante el complemento de Maven para Azure Spring Apps:

  1. Navegue hasta el directorio completo y ejecute el siguiente comando para configurar la aplicación en Azure Spring Apps:

    ./mvnw com.microsoft.azure:azure-spring-apps-maven-plugin:1.18.0:config
    

    En la lista siguiente se describen las interacciones del comando:

    • Inicio de sesión de OAuth2: autorice el inicio de sesión a Azure en función del protocolo OAuth2.
    • Seleccionar suscripción: seleccione el número de lista de suscripciones de la instancia de Azure Spring Apps que creó, que tiene como valor predeterminado la primera suscripción de la lista. Si usa el número predeterminado, presione Entrar directamente.
    • Seleccione Azure Spring Apps para la implementación: seleccione el número de lista de la instancia de Azure Spring Apps que creó. Si usa el número predeterminado, presione Entrar directamente.
    • Introduzca el nombre de la aplicación: Introduzca un nombre para la aplicación. Para usar el identificador de artefacto del proyecto predeterminado, presione Entrar.
    • ¿Exponer el acceso público para esta aplicación (boot-for-azure)?: presione y.
    • Confirme para guardar todas las configuraciones anteriores (Y/N): presione y. Si presiona n, la configuración no se guardará en los archivos POM.
  2. Use el siguiente comando para implementar la aplicación:

    ./mvnw com.microsoft.azure:azure-spring-apps-maven-plugin:1.18.0:deploy
    

    En la lista siguiente se describe la interacción del comando:

    • Inicio de sesión de OAuth2: autorice el inicio de sesión a Azure en función del protocolo OAuth2.

    Una vez ejecutado el comando, puede ver en los siguientes mensajes de registro que la implementación se ha realizado correctamente:

    [INFO] Deployment(default) is successfully updated.
    [INFO] Deployment Status: Running
    [INFO]   InstanceName:demo-default-x-xxxxxxxxxx-xxxxx  Status:Running Reason:null       DiscoverStatus:UNREGISTERED
    [INFO] Getting public url of app(demo)...
    [INFO] Application url: https://<your-Azure-Spring-Apps-instance-name>-demo.azuremicroservices.io
    

2. Preparar el proyecto Spring

Siga estos pasos para preparar el proyecto:

  1. Use el siguiente comando para clonar el proyecto de ejemplo de Spring Boot desde GitHub.

    git clone https://github.com/spring-guides/gs-spring-boot-for-azure.git
    
  2. Use el siguiente comando para ir a la carpeta del proyecto:

    cd gs-spring-boot-for-azure/complete
    
  3. Use el siguiente comando de Maven para compilar el proyecto:

    ./mvnw clean package
    
  4. Ejecute el proyecto de ejemplo localmente mediante el comando siguiente:

    ./mvnw spring-boot:run
    

3. Preparar el entorno en la nube

El recurso principal que necesita para ejecutar este ejemplo es una instancia de Azure Spring Apps. Siga estos pasos para crear este recurso.

3.1. Inicio de sesión en Azure Portal

Abra el explorador web y vaya a Azure Portal. Introduzca sus credenciales para iniciar sesión en el portal. La vista predeterminada es el panel del servicio.

3.2. Creación de una instancia de Azure Spring Apps

Siga estos pasos para crear una instancia de servicio:

  1. En la esquina de Azure Portal, seleccione Crear un recurso.

  2. Seleccione Proceso>Azure Spring Apps.

    Captura de pantalla del portal Azure que muestra Azure Spring Apps en la lista de recursos informáticos.

  3. Complete el formulario de aspectos básicos con la información siguiente:

    Configuración Valor sugerido Descripción
    Subscription Nombre de la suscripción La suscripción de Azure que desea usar para el servidor. Si tiene varias suscripciones, elija aquella en la que quiere que se le facture el recurso.
    Resource group myresourcegroup Un nuevo nombre de grupo de recursos o uno existente de la suscripción.
    Nombre myasa Nombre único que identifica al servicio de Azure Spring Apps. El nombre debe tener entre 4 y 32 caracteres, y solo puede contener números, letras minúsculas y guiones. El primer carácter del nombre del servicio debe ser una letra y el último debe ser una letra o un número.
    Plan Estándar El plan de precios que determina el recurso y el coste asociado a su instancia.
    Region Región más cercana a los usuarios La ubicación más cercana a los usuarios.
    Redundancia de zona No seleccionado Indica si se debe crear el servicio Azure Spring Apps en una zona de disponibilidad de Azure. Esta característica no se admite actualmente en todas las regiones.

    Captura de pantalla de Azure Portal en la que se muestra la página Crear Azure Spring Apps.

  4. Seleccione Revisar y crear para revisar las selecciones. Seleccione Crear para aprovisionar la instancia de Azure Spring Apps.

  5. En la barra de herramientas, seleccione el símbolo de Notificaciones (una campana) para supervisar el proceso de implementación. Una vez realizada la implementación, puede seleccionar Anclar al panel para crear un mosaico para este servicio en el panel de Azure Portal como un acceso directo a la página Información general del servicio.

    Captura de pantalla del portal Azure que muestra el panel Notificaciones para la creación de Azure Spring Apps.

  6. Seleccione Ir al recurso para ir a la página Información general de Azure Spring Apps.

4. Implementación de la aplicación en Azure Spring Apps

En esta sección se proporcionan los pasos para implementar la aplicación en Azure Spring Apps.

Siga estos pasos para implementar mediante el complemento de Maven para Azure Spring Apps:

  1. Navegue hasta el directorio completo y ejecute el siguiente comando para configurar la aplicación en Azure Spring Apps:

    ./mvnw com.microsoft.azure:azure-spring-apps-maven-plugin:1.18.0:config
    

    En la lista siguiente se describen las interacciones del comando:

    • Inicio de sesión de OAuth2: autorice el inicio de sesión a Azure en función del protocolo OAuth2.
    • Seleccionar suscripción: seleccione el número de lista de suscripciones de la instancia de Azure Spring Apps que creó, que tiene como valor predeterminado la primera suscripción de la lista. Si usa el número predeterminado, presione Entrar directamente.
    • Seleccione Azure Spring Apps para la implementación: seleccione el número de lista de la instancia de Azure Spring Apps que creó. Si usa el número predeterminado, presione Entrar directamente.
    • Introduzca el nombre de la aplicación: Introduzca un nombre para la aplicación. Para usar el identificador de artefacto del proyecto predeterminado, presione Entrar.
    • ¿Exponer el acceso público para esta aplicación (boot-for-azure)?: presione y.
    • Confirme para guardar todas las configuraciones anteriores (Y/N): presione y. Si presiona n, la configuración no se guardará en los archivos POM.
  2. Use el siguiente comando para implementar la aplicación:

    ./mvnw com.microsoft.azure:azure-spring-apps-maven-plugin:1.18.0:deploy
    

    En la lista siguiente se describen las interacciones del comando:

    • Inicio de sesión de OAuth2: autorice el inicio de sesión a Azure en función del protocolo OAuth2.

    Una vez ejecutado el comando, puede ver en los siguientes mensajes de registro que la implementación se ha realizado correctamente:

    [INFO] Deployment(default) is successfully updated.
    [INFO] Deployment Status: Running
    [INFO]   InstanceName:demo-default-x-xxxxxxxxxx-xxxxx  Status:Running Reason:null       DiscoverStatus:UNREGISTERED
    [INFO] Getting public url of app(demo)...
    [INFO] Application url: https://<your-Azure-Spring-Apps-instance-name>-demo.azuremicroservices.io
    

2. Preparar el proyecto Spring

Siga estos pasos para preparar el proyecto:

  1. Use el siguiente comando para clonar el proyecto de ejemplo de Spring Boot desde GitHub.

    git clone https://github.com/spring-guides/gs-spring-boot-for-azure.git
    
  2. Use el siguiente comando para ir a la carpeta del proyecto:

    cd gs-spring-boot-for-azure/complete
    
  3. Use el siguiente comando de Maven para compilar el proyecto:

    ./mvnw clean package
    
  4. Ejecute el proyecto de ejemplo localmente mediante el comando siguiente:

    ./mvnw spring-boot:run
    

3. Preparar el entorno en la nube

Use los siguientes pasos para crear una instancia de servicio de Azure Spring Apps.

3.1. Proporcione nombres para cada recurso

Cree variables para contener los nombres del recurso mediante los siguientes comandos. Asegúrese de reemplazar los marcadores de posición por sus propios valores.

export LOCATION="<region>"
export RESOURCE_GROUP="<resource-group-name>"
export SERVICE_NAME="<Azure-Spring-Apps-instance-name>"
export APP_NAME="demo"

3.2. Creación de un nuevo grupo de recursos

Use los siguientes pasos para crear un grupo de recursos:

  1. Use el siguiente comando para iniciar sesión en la CLI de Azure:

    az login
    
  2. Use el siguiente comando para establecer la ubicación predeterminada:

    az configure --defaults location=${LOCATION}
    
  3. Use el siguiente comando para enumerar todas las suscripciones disponibles y determinar el id. de suscripción que se va a usar:

    az account list --output table
    
  4. Use el siguiente comando para establecer la suscripción predeterminada:

    az account set --subscription <subscription-ID>
    
  5. Use el siguiente comando para crear un grupo de recursos:

    az group create --resource-group ${RESOURCE_GROUP}
    
  6. Use el siguiente comando para establecer el grupo de recursos recién creado como el grupo de recursos predeterminado:

    az configure --defaults group=${RESOURCE_GROUP}
    

3.3. Instalación de la extensión y registro del espacio de nombres

Use los siguientes comandos para instalar la extensión Azure Container Apps para la CLI de Azure y registrar el espacios de nombres Microsoft.SaaS:

az extension add --name spring --upgrade
az provider register --namespace Microsoft.SaaS

3.4. Creación de una instancia de Azure Spring Apps

Siga estos pasos para crear la instancia de servicio:

  1. Use el siguiente comando para aceptar los términos legales y las declaraciones de privacidad del plan Enterprise:

    Nota

    Este paso solo es necesario si la suscripción nunca se ha usado para crear un plan Enterprise de Azure Spring Apps.

    az term accept \
        --publisher vmware-inc \
        --product azure-spring-cloud-vmware-tanzu-2 \
        --plan asa-ent-hr-mtr
    
  2. Use el siguiente comando para crear una instancia de servicio de Azure Spring Apps:

    az spring create \
        --name ${SERVICE_NAME} \
        --sku Enterprise
    

3.5. Creación de una aplicación en la instancia de Azure Spring Apps

Una Aplicación es una abstracción de una aplicación empresarial. Para más información, vea Aplicación e implementación en Azure Spring Apps. Las aplicaciones se ejecutan en una instancia de servicio de Azure Spring Apps, como se muestra en el diagrama siguiente.

Diagrama que muestra la relación entre las aplicaciones y una instancia del servicio Azure Spring Apps.

Use el siguiente comando para crear la aplicación en Azure Spring Apps:

az spring app create \
    --service ${SERVICE_NAME} \
    --name ${APP_NAME} \
    --assign-endpoint true

4. Implementación de la aplicación en Azure Spring Apps

En esta sección se proporcionan los pasos para implementar la aplicación en Azure Spring Apps.

Use el siguiente comando para implementar el archivo .jar en la aplicación:

az spring app deploy \
    --service ${SERVICE_NAME} \
    --name ${APP_NAME} \
    --artifact-path target/demo-0.0.1-SNAPSHOT.jar

La implementación de la aplicación puede tardar unos minutos.

5. Validación de la aplicación

Después de la implementación, puede acceder a la aplicación en https://<your-Azure-Spring-Apps-instance-name>-demo.azuremicroservices.io. Al abrir la aplicación, obtendrá la respuesta Hello World.

En el panel de navegación de la página de información general de la instancia de Azure Spring Apps, seleccione Registros para comprobar los registros de la aplicación.

Captura de pantalla de Azure Portal en la que se muestra la página de registros de Azure Spring Apps.

Use el siguiente comando para comprobar el registro de la aplicación para investigar cualquier problema de implementación:

az spring app logs \
    --service ${SERVICE_NAME} \
    --name ${APP_NAME}

6. Limpieza de recursos

Asegúrate de eliminar los recursos creados en este tutorial cuando ya no los necesites. Para eliminar los recursos, basta con eliminar el grupo de recursos que los contiene. Puedes eliminar el grupo de recursos mediante Azure Portal. Como alternativa, puede eliminar el grupo de recursos mediante la CLI de Azure con el siguiente comando:

az group delete --name ${RESOURCE_GROUP}

Puede eliminar el grupo de recursos de Azure, lo que incluye todos los recursos del grupo de recursos.

Siga los siguientes pasos para eliminar todo el grupo de recursos, incluyendo el servicio recién creado:

  1. Elimine el grupo de recursos en Azure Portal. En el menú de navegación, seleccione Grupos de recursos. A continuación, seleccione el nombre de su grupo de recursos (por ejemplo, myresourcegroup).

  2. En la página del grupo de recursos, seleccione Eliminar. Escriba el nombre del grupo de recursos en el cuadro de texto para confirmar la eliminación (por ejemplo myresourcegroup) y, a continuación, seleccione Eliminar.

7. Pasos siguientes

Para más información, consulte los siguientes artículos.