Migrar una instancia de plan Básico o Estándar de Azure Spring Apps al plan Enterprise
Nota:
Los planes Básico, Estándar y Enterprise quedarán en desuso a partir de mediados de marzo de 2025, con un período de jubilación de 3 años. Se recomienda realizar la transición a Azure Container Apps. Para obtener más información, consulte el anuncio de retirada de Azure Spring Apps.
El plan de consumo estándar y dedicado quedará obsoleto a partir del 30 de septiembre de 2024, con un cierre completo al cabo de seis meses. Se recomienda realizar la transición a Azure Container Apps. Para más información, consulte Migrar el consumo estándar de Azure Spring Apps y el plan dedicado a Azure Container Apps.
La información de este artículo puede ponerse en práctica en: ✔️ Básico o Estándar ✔️ Enterprise
En este artículo se muestra cómo migrar una aplicación existente en el plan Básico o Estándar al plan Enterprise. Al migrar desde el plan Básico o Estándar al plan Enterprise, los componentes de VMware Tanzu reemplazan los componentes de Spring Cloud de software de código abierto (OSS) para proporcionar más compatibilidad con características.
En este artículo se usan las aplicaciones de ejemplo de Pet Clinic como ejemplos de cómo migrar.
Requisitos previos
- Suscripción a Azure. Si no tiene una suscripción, cree una cuenta gratuita antes de empezar.
- CLI de Azure: versión 2.45.0 o superior.
- La extensión del plan Enterprise de Azure Spring Apps. Use el siguiente comando para eliminar las versiones anteriores e instalar la extensión del plan Enterprise más reciente. Si ya ha instalado la extensión
spring-cloud
, desinstálela para evitar errores de coincidencia de la configuración y la versión.az extension add --upgrade --name spring az extension remove --name spring-cloud
- Git.
Aprovisionar una instancia de servicio
En el plan de Azure Spring Apps Enterprise, los componentes de VMware Tanzu reemplazan los componentes de OSS Spring Cloud para proporcionar más compatibilidad con características. Los componentes de Tanzu se habilitan a petición según las necesidades. Debe habilitar los componentes que necesita antes de crear la instancia de servicio de Azure Spring Apps.
Nota:
Para usar los componentes de Tanzu debe habilitarlos al aprovisionar la instancia de servicio de Azure Spring Apps. No se pueden habilitar después del aprovisionamiento.
Siga estos pasos para aprovisionar una instancia de servicio de Azure Spring Apps:
Abra Azure Portal.
En el cuadro de búsqueda superior, busque Azure Spring Apps.
Seleccione Azure Spring Apps en los resultados y a continuación, seleccione Crear.
En la páginaCrear Azure Spring Apps, establezca la Suscripción, elGrupo de recursos y el Nombre para la instancia.
En Plan en Detalles del servicio, seleccione Cambiar.
En la página Elegir el plan, seleccione la fila Enterprise de la tabla y a continuación, seleccione Seleccionar.
De nuevo en la página Crear Azure Spring Apps, seleccione Términos para aceptar los términos legales y las declaraciones de privacidad de la oferta del plan Enterprise en Azure Marketplace.
Seleccione Siguiente: configuración de VMware Tanzu.
En la pestaña Configuración de VMWare Tanzu, desplácese por la lista para revisar los componentes de Tanzu. Todos los componentes están habilitados de manera predeterminada.
Nota:
Considere con atención los componentes de Tanzu que desea usar o habilitar durante la fase de aprovisionamiento. Después de aprovisionar la instancia de Azure Spring Apps, no puede habilitar ni deshabilitar los componentes de Tanzu.
Seleccione la pestaña Application Insights y después, seleccione Habilitar Application Insights. Revise la siguiente configuración:
- Debe seleccionar Habilitar Application Insights.
- Elija una instancia de Application Insights existente o cree una.
- Escriba una frecuencia de muestreo en el intervalo de 0 a 100 o use el valor predeterminado 10.
Application Insights también se puede habilitar después de aprovisionar la instancia de Azure Spring Apps. Para más información acerca de los precios de Application Insights, consulte la secciónFacturación de Application Insights de Cálculos de costes y opciones de Azure Monitor Logs.
Nota:
Habrá que pagar por el uso de Application Insights cuando esté integrado en Azure Spring Apps.
Seleccione Revisar y crear y espere a que se complete la validación; a continuación, seleccione Crear para iniciar el aprovisionamiento de la instancia de servicio.
El aprovisionamiento de recursos tarda unos aproximadamente 5 minutos en finalizar.
Creación y configuración de aplicaciones
Los pasos de creación de la aplicación son los mismos que el plan Estándar.
Use el siguiente comando para establecer los valores predeterminados de la CLI de Azure. Asegúrese de reemplazar los marcadores de posición por sus propios valores.
az config set defaults.group=<resource-group-name> az config set defaults.spring=<Azure-Spring-Apps-service-instance-name>
Use los siguientes comandos para crear las dos aplicaciones principales para PetClinic,
api-gateway
ycustomers-service
:az spring app create --name api-gateway --instance-count 1 --memory 2Gi --assign-endpoint az spring app create --name customers-service --instance-count 1 --memory 2Gi
Uso de Application Configuration Service para la configuración externa
Para la configuración externalizada en un sistema distribuido, El servidor de configuración de Spring Cloud administrado (OSS) solo está disponible en los planes Básico y Estándar. En el plan Enterprise, Application Configuration Service para Tanzu proporciona funciones similares para sus aplicaciones. En la tabla siguiente se describen algunas diferencias de uso entre el servidor de configuración del sistema operativo (SSO) y el servicio de configuración de aplicaciones.
Componente | Planes de soporte técnico | habilitado | Enlace a la aplicación | Perfil |
---|---|---|---|---|
Spring Cloud Config Server | Básico o Estándar | Siempre habilitado. | Enlazado automático | Configurado en el código fuente de la aplicación. |
Servicio de configuración de aplicaciones para Tanzu | Empresa | Habilitación bajo demanda. | Enlace manual | Se proporciona como config-file-pattern en una implementación de Azure Spring Apps. |
A diferencia del modo cliente-servidor del servidor de configuración del sistema operativo (OSS), el servicio de configuración de aplicaciones administra la configuración usando el Kubernetes nativo ConfigMap
, que se rellena a partir de las propiedades definidas en los repositorios Git del backend. El servicio de configuración de aplicaciones no puede configurar el perfil activo en el código fuente de la aplicación para que coincida con la configuración correcta, por lo que la configuración explícita config-file-pattern
debe especificarse en el nivel de implementación de Azure Spring Apps.
Configuración del servicio de configuración de aplicaciones para Tanzu
Siga estos pasos para usar Application Configuration Service para Tanzu como servicio de configuración centralizado.
En la instancia de Azure Spring Apps Enterprise, seleccione Servicio de configuración de aplicaciones en el panel de navegación. Vea el estado de ejecución y los recursos asignados al servicio de configuración de aplicaciones para Tanzu.
Seleccione Configuración y complete el formulario en Repositorios para agregar una nueva entrada con la siguiente información:
- Nombre:
default
- Patrones:
api-gateway,customers-service
- Identificador URI:
https://github.com/Azure-Samples/spring-petclinic-microservices-config
- Etiqueta:
master
- Nombre:
Seleccione Validar para validar el acceso al URI de destino.
Una vez completada correctamente la validación, seleccione Aplicar para actualizar los valores de configuración.
Enlace de aplicaciones al servicio de configuración de aplicaciones para Tanzu
Al usar Application Configuration Service para Tanzu con un back-end de Git, debe enlazar la aplicación a Application Configuration Service para Tanzu. Después de enlazar la aplicación, deberá configurar qué patrón usa la aplicación. Siga estos pasos para enlazar y configurar el patrón de la aplicación.
Siga estos pasos para enlazar aplicaciones a Application Configuration Service para VMware Tanzu.
En la instancia de Azure Spring Apps Enterprise, seleccione Servicio de configuración de aplicaciones en el panel de navegación.
Seleccione Enlace de aplicaciones y, a continuación, seleccione Enlazar aplicación.
Seleccione una aplicación en el menú desplegable y a continuación, seleccione Aplicar para enlazar la aplicación al servicio de configuración de aplicaciones para Tanzu.
Para más información, consulte Uso de Application Configuration Service para Tanzu.
Uso de Service Registry for Tanzu
Tanzu Service Registry es uno de los componentes comerciales de VMware Tanzu. Proporciona las aplicaciones con una implementación del patrón Detección de servicios, uno de los conceptos clave de una arquitectura basada en microservicios. En el plan Enterprise, Service Registry para Tanzu proporciona el registro de servicio y detecta compatibilidad con las aplicaciones. Managed Spring Cloud Eureka solo está disponible en el plan Básico y Estándar y no está disponible en el plan Enterprise.
Componente | Plan Estándar | Plan Enterprise |
---|---|---|
Registro del servicio | OSS eureka Enlazado automático (siempre inyección) Siempre aprovisionado |
Service Registry for Tanzu Necesita enlace manual a la aplicación Habilitación a petición |
Enlace de una aplicación a Tanzu Service Registry
Para enlazar aplicaciones a Application Configuration Service para VMware Tanzu, siga estos pasos.
En la instancia de Azure Spring Apps Enterprise, seleccione Registro de servicio.
Seleccione Enlace de aplicaciones. Las aplicaciones enlazadas aparecen actualmente en Nombre de aplicación.
Seleccione Enlazar aplicación.
Seleccione una aplicación en el menú desplegable y a continuación, seleccione Aplicar para enlazar la aplicación a Tanzu Service Registry.
Nota:
Al cambiar el estado entre enlazado y desenlazado, debe reiniciar o volver a implementar la aplicación para que el cambio surta efecto.
Para más información, consulte Uso de Tanzu Service Registry.
Compilación e implementación de aplicaciones
En el plan Enterprise, el servicio de compilación de Tanzu se usa para compilar aplicaciones. Proporciona más características de tipo las aplicaciones políglotas para implementar desde artefactos, como código fuente y archivos ZIP.
Para usar Tanzu Build Service, debe especificar un recurso para que usen la tarea de compilación y el compilador. También puede especificar el parámetro --build-env
para establecer entornos de compilación.
Si la aplicación se enlaza con el servicio de configuración de aplicaciones para Tanzu, debe especificar un argumento adicional —config-file-pattern
.
Para obtener más información, vea Usar el servicio de compilación de Tanzu.
Compilación de aplicaciones localmente
Siga estos pasos para compilar localmente:
Use los siguientes comandos para clonar el repositorio de aplicaciones de ejemplo en la cuenta de Azure, cambiar el directorio y compilar el proyecto:
git clone -b enterprise https://github.com/azure-samples/spring-petclinic-microservices cd spring-petclinic-microservices mvn clean package -DskipTests
La compilación del proyecto puede tardar varios minutos. Cuando haya finalizado, tendrá archivos JAR individuales para cada servicio en su carpeta respectiva.
Use los siguientes comandos para implementar los archivos JAR integrados en el paso anterior:
az spring app deploy \ --name api-gateway \ --artifact-path spring-petclinic-api-gateway/target/spring-petclinic-api-gateway-2.3.6.jar \ --config-file-patterns api-gateway az spring app deploy \ --name customers-service \ --artifact-path spring-petclinic-customers-service/target/spring-petclinic-customers-service-2.3.6.jar \ --config-file-patterns customers-service
Use el comando siguiente para consultar el estado de la aplicación después de la implementación:
az spring app list --output table
Esto genera una salida similar a la del siguiente ejemplo:
Name Location ResourceGroup Public Url Production Deployment Provisioning State CPU Memory Running Instance Registered Instance Persistent Storage Bind Service Registry Bind Application Configuration Service -------------------- ---------- --------------- --------------------------------------------------------- ----------------------- -------------------- ----- -------- ------------------ --------------------- -------------------- ----------------------- ---------------------------------------- api-gateway eastus <resource group> https://<service_name>-api-gateway.asc-test.net default Succeeded 1 2Gi 1/1 1/1 - True True customers-service eastus <resource group> default Succeeded 1 2Gi 1/1 1/1 - True True
Uso de Application Insights
El plan Enterprise de Azure Spring Apps usa enlaces buildpack para integrar Application Insights con el tipo ApplicationInsights
en lugar del agente en proceso. Para más información, consulte Cómo configurar la integración de APM y los certificados de CA.
En la tabla siguiente se enumeran los proveedores de APM disponibles los planes.
Plan Estándar | Plan Enterprise |
---|---|
Application Insights New Relic Dynatrace AppDynamics |
Application Insights New Relic Dynatrace AppDynamics ElasticAPM |
Para comprobar o actualizar la configuración actual en Application Insights, siga estos pasos: