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
- Suscripción a Azure. Si no tiene una suscripción a Azure, cree una cuenta gratuita de Azure antes de empezar.
- Git.
- Kit de desarrollo de Java (JDK), versión 17.
- Suscripción a Azure. Si no tiene una suscripción a Azure, cree una cuenta gratuita de Azure antes de empezar.
- Si va a implementar la instancia del plan Enterprise de Azure Spring Apps por primera vez en la suscripción de destino, vea la sección Requisitos del plan Enterprise en Azure Marketplace.
- Git.
- Kit de desarrollo de Java (JDK), versión 17.
- CLI de Azure: versión 2.45.0 o superior.
2. Preparar el proyecto Spring
Siga estos pasos para preparar el proyecto:
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
Use el siguiente comando para ir a la carpeta del proyecto:
cd gs-spring-boot-for-azure/complete
Use el siguiente comando de Maven para compilar el proyecto:
./mvnw clean package
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:
En la esquina de Azure Portal, seleccione Crear un recurso.
Seleccione Proceso>Azure Spring Apps.
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. (Opcional) Crear un entorno de Container Apps.
Seleccione Revisar y crear para revisar las selecciones. Seleccione Crear para aprovisionar la instancia de Azure Spring Apps.
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.
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:
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.
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:
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
Use el siguiente comando para ir a la carpeta del proyecto:
cd gs-spring-boot-for-azure/complete
Use el siguiente comando de Maven para compilar el proyecto:
./mvnw clean package
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:
En la esquina de Azure Portal, seleccione Crear un recurso.
Seleccione Proceso>Azure Spring Apps.
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. Seleccione Revisar y crear para revisar las selecciones. Seleccione Crear para aprovisionar la instancia de Azure Spring Apps.
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.
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:
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.
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:
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
Use el siguiente comando para ir a la carpeta del proyecto:
cd gs-spring-boot-for-azure/complete
Use el siguiente comando de Maven para compilar el proyecto:
./mvnw clean package
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:
Use el siguiente comando para iniciar sesión en la CLI de Azure:
az login
Use el siguiente comando para establecer la ubicación predeterminada:
az configure --defaults location=${LOCATION}
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
Use el siguiente comando para establecer la suscripción predeterminada:
az account set --subscription <subscription-ID>
Use el siguiente comando para crear un grupo de recursos:
az group create --resource-group ${RESOURCE_GROUP}
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:
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
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.
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.
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:
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).
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.