Evaluación de aplicaciones de Spring con el Analizador de idoneidad en la nube
En esta guía se describe cómo evaluar las aplicaciones de Spring con el Analizador de idoneidad en la nube (CSA) para evaluar su preparación para migrar a la nube.
¿Cuándo debo usar el Analizador de idoneidad en la nube?
Cloud Suitability Analyzer es una herramienta de código abierto desarrollada por VMware. Puede usarlo para evaluar las aplicaciones de Spring, Spring Boot y Spring Cloud para determinar cómo están listas para la nube.
Puede descargar El Analizador de idoneidad en la nube en el entorno de desarrollo y, a continuación, examinar el código fuente para su evaluación. Todos los resultados se mantienen en el entorno local. El informe de evaluación proporciona una estimación sobre cuánto esfuerzo se necesita para migrar la aplicación spring a la nube. En el informe también se enumeran los problemas de nivel de línea de código clasificados por importancia.
Nota:
Use Chrome como explorador recomendado si otros exploradores no pueden abrir correctamente el portal web del Analizador de idoneidad en la nube.
¿Qué resultados puedo obtener del Analizador de idoneidad en la nube?
En las secciones siguientes se describen los resultados generados por Cloud Suitability Analyzer.
Resumen de un grupo de aplicaciones
Cloud Sureadiness Analyzer calcula la preparación de las aplicaciones de Spring en plataformas en la nube mediante la coincidencia de patrones con el código fuente. La herramienta asigna cada problema una puntuación sin procesar basada en un conjunto de reglas predefinidas o personalizadas. A continuación, la herramienta calcula una puntuación técnica que va de 0 a 10 para cada aplicación en función de la suma de puntuaciones sin procesar. Cuanto más lista para la nube sea una aplicación, mayor será su puntuación técnica.
Puede encontrar la lista de aplicaciones con su puntuación técnica respectiva en la página Resumen del informe de evaluación. La página de resumen también muestra otra información, como líneas de código y número de archivos examinados.
Cada vez que ejecute una evaluación, la herramienta registra un nuevo informe. Puede usar el control Seleccionar ejecución en la página Resumen para ver y comparar diferentes versiones del informe y ver el progreso del trabajo de migración.
Vista más cercana de una aplicación
Para obtener la lista de problemas específicos de línea de código, puede encontrar un informe detallado en la página Aplicación . En esta página se enumeran los problemas de cada aplicación y se clasifica en importancia como "alto", "medio" o "bajo". Los problemas "altos" son correcciones que requieren esfuerzo manual, se recomiendan problemas "medianos" para corregir y los problemas "bajos" son meramente informativos. También puede encontrar el nombre de archivo, el número de línea y el esfuerzo estimado necesario para cada problema del informe.
Para ver los resultados de evaluación de una aplicación, establezca Seleccionar ejecutar en la versión que desea ver y, a continuación, establezca Aplicación en el nombre de la aplicación. En la parte superior de la pestaña Resultados , puede seleccionar un grupo de etiquetas para filtrar los resultados y ver solo los en los que desea centrarse.
Información detallada de un problema específico
En la página Aplicación , puede seleccionar el identificador de un problema para ver información detallada y acciones sugeridas. Esta información incluye la ruta de acceso del archivo de código fuente con el problema encontrado, el patrón coincidente con el problema y la regla que describe el patrón y la puntuación de esfuerzo. En la sección Consejos , puede encontrar la explicación específica del problema encontrado y la acción correspondiente sugerida.
¿Cómo debo usar el Analizador de idoneidad en la nube?
Puede ejecutar el Analizador de idoneidad en la nube en tres pasos: configuración, examen y revisión.
Configuración: descargue los archivos binarios del Analizador de idoneidad en la nube y las reglas personalizadas de Azure. Puede reemplazar los archivos binarios por la versión más reciente del repositorio VMware cloud-suitability-analyzer . Extraiga el paquete y debería encontrar los siguientes elementos en el mismo directorio:
-
csa-l
: binario csa para Linux -
csa
: binario csa para macOS -
csa.exe
: binario csa para Windows -
rules
: directorio que contiene reglas personalizadas de Azure. -
bins.yaml
: archivo necesario para reglas personalizadas -
run-csa-xxx
: script one-stop específico del sistema operativo que ejecuta todos los comandos CSA necesarios para los escenarios habituales.
Nota:
Todos los ejemplos de este artículo usan la versión de Linux del script y el binario. Los parámetros de los comandos también se aplican a Windows y macOS.
-
Examen: inicie el terminal y ejecute el script o el binario con parámetros
-p <src_dir>
, como se muestra en los ejemplos siguientes:./run-csa-linux.sh -p <src_dir>
o
./csa-l -p <src_dir>
El directorio
<src_dir>
contiene varios subdirectorios con el código fuente de la aplicación Spring. Esta operación examina todos estos proyectos en una ejecución y almacena los resultados en un archivo denominado csa.db. Los exámenes posteriores almacenan los resultados en el mismo archivo csa.db .Revisión: al ejecutar el script, se inicia automáticamente el portal web. Como alternativa, puede usar el siguiente comando. El portal web muestra la página Resumen de forma predeterminada.
./csa-l ui
¿Cómo debo personalizar las reglas?
En las secciones siguientes se describen las reglas y cómo personalizarlas.
Enumerar reglas en vigor
En el portal web, la página Reglas muestra todas las reglas que se usan para buscar coincidencias con los problemas enumerados en la página Aplicación . También puede encontrar detalles para cada regla.
En la lista siguiente se muestran algunas de las reglas personalizadas de Azure:
- Migración a la nube en general
- Ruta de acceso de Windows a la ruta de acceso de Linux
- Destino de registro en STDOUT
- Almacenamiento local en un recurso compartido de archivos de Azure con el protocolo SMB/NFS
- Reglas de actualización de JDK
- Comprobación de la versión de JDK
- Actualización de Spring Boot/Cloud
- Comprobación de la versión de Spring Boot
- Comprobación de la versión de Spring Cloud
- Invalidación del punto de conexión de cliente eureka
- Invalidación del punto de conexión de cliente de configuración
- Eliminación de Zipkin y uso de Azure Monitor
Exportar reglas
Para editar las reglas o escribir sus propias reglas, primero exporte las reglas actuales para usarlas como versiones base que puede modificar. Para exportar las reglas, use el siguiente comando:
./csa-l rules export --output-dir=<output_dir>
Cuando el comando vuelve correctamente, los archivos de configuración que describen las reglas se encuentran en el directorio de salida especificado.
Editar reglas
Puede editar cada regla de forma independiente con un editor de texto. Puede encontrar la explicación detallada de cada campo en el manual de instrucciones disponible en el repositorio cloud-suitability-analyzer .
Reglas de importación
Para agregar sus propias reglas o quitar reglas que no necesite, coloque las reglas que desee en el mismo directorio y, a continuación, importe ese directorio. Siga estos pasos para agregar o quitar reglas:
Antes de importar las reglas, use el siguiente comando para borrar las reglas vigentes y empezar desde una pizarra limpia:
./csa-l rules delete-all
Después de borrar las reglas, use el siguiente comando para importar su propio conjunto de reglas:
./csa-l rules import --rules-dir=<input_dir>
Ahora use el siguiente comando para volver a examinar el código fuente:
./csa-l -p <src_dir>
A continuación, use el siguiente comando para ver los resultados:
./csa-l ui
Ahora puede ver la página Reglas actualizada con el conjunto de reglas especificado.
Para simplemente este proceso, se recomienda actualizar las reglas directamente en el directorio rules del proyecto azure-spring-suitability-rules y, a continuación, use el siguiente comando para ejecutar el script:
./run-csa-linux.sh -p <src_dir>
Este comando vuelve a cargar automáticamente las reglas, vuelve a examinar el código fuente y, a continuación, inicia el portal web.
Plataformas de destino para la migración
Hay varias plataformas de hospedaje en Azure que pueden hospedar las aplicaciones de Spring. Para más información, consulte Comparación de las opciones de hospedaje de aplicaciones Java en Azure.
Azure Spring Apps es un servicio totalmente administrado para desarrolladores de Spring. Con Azure Spring Apps, puede centrarse en el código y administrar las aplicaciones con supervisión integrada, detección de servicios, administración de configuración, integración de CI/CD, implementación azul-verde, etc. Para más información, consulte Migración de aplicaciones de Spring Cloud a Azure Spring Apps. Muchos de los pasos de las fases de migración y migración ya se tratan en las reglas personalizadas de Azure para el Analizador de idoneidad en la nube.
Pasos siguientes
Para más información, consulte el manual de usuario del repositorio cloud-suitability-analyzer .