Valutare le applicazioni Spring con L'analizzatore idoneità cloud
Questa guida descrive come valutare le applicazioni Spring con Cloud Appropriatey Analyzer (CSA) per valutare la propria idoneità alla migrazione al cloud.
Quando usare l'analizzatore idoneità cloud?
Analizzatore idoneità cloud è uno strumento open source sviluppato da VMware. È possibile usarla per valutare le applicazioni Spring, Spring Boot e Spring Cloud per determinare come sono pronte per il cloud.
È possibile scaricare Cloud Suitability Analyzer nell'ambiente di sviluppo e quindi analizzare il codice sorgente per la valutazione. Tutti i risultati vengono mantenuti nell'ambiente locale. Il report di valutazione fornisce una stima sulla quantità di sforzi necessari per eseguire la migrazione dell'applicazione Spring al cloud. Il report elenca anche i problemi a livello di codice a livello di riga valutati in base all'importanza.
Nota
Usare Chrome come browser consigliato se altri browser non riescono ad aprire correttamente il portale Web Di idoneità cloud.
Quali risultati è possibile ottenere dall'Analizzatore idoneità cloud?
Le sezioni seguenti descrivono i risultati prodotti da Cloud Appropriatey Analyzer.
Riepilogo per un gruppo di applicazioni
L'analizzatore idoneità cloud stima l'idoneità delle applicazioni Spring rispetto alle piattaforme cloud confrontando i modelli rispetto al codice sorgente. Lo strumento assegna ogni problema a un punteggio non elaborato in base a un set di regole predefinite o personalizzate. Lo strumento calcola quindi un punteggio tecnico compreso tra 0 e 10 per ogni applicazione in base alla somma dei punteggi non elaborati. Più cloud-ready un'applicazione è il punteggio tecnico più alto.
È possibile trovare l'elenco delle applicazioni con il rispettivo punteggio tecnico nella pagina Riepilogo del report di valutazione. La pagina di riepilogo elenca anche altre informazioni, ad esempio righe di codice e numero di file analizzati.
Ogni volta che si esegue una valutazione, lo strumento registra un nuovo report. È possibile usare il controllo Seleziona esecuzione nella pagina Riepilogo per visualizzare e confrontare versioni del report diverse e visualizzare lo stato di avanzamento del lavoro di migrazione.
Visualizzazione più vicina di un'applicazione
Per l'elenco di problemi specifici a livello di codice, è possibile trovare un report dettagliato nella pagina Applicazione . Questa pagina elenca i problemi per ogni applicazione e li classifica in importanza come "high", "medium" o "low". I problemi "elevati" sono i problemi necessari per risolvere i problemi che richiedono uno sforzo manuale, i problemi "medio" sono consigliati per risolvere e i problemi "bassi" sono semplicemente informativi. È anche possibile trovare il nome del file, il numero di riga e lo sforzo stimato necessario per ogni problema nel report.
Per visualizzare i risultati della valutazione per un'applicazione, impostare Seleziona Esegui sulla versione da visualizzare , quindi impostare Application sul nome dell'applicazione. Nella parte superiore della scheda Risultati è possibile selezionare un gruppo di tag per filtrare i risultati e visualizzare solo quelli da concentrarsi.
Informazioni dettagliate per un problema specifico
Nella pagina Applicazione è possibile selezionare l'ID di un problema per visualizzare informazioni dettagliate e azioni suggerite. Queste informazioni includono il percorso del file di codice sorgente con il problema trovato, il modello corrispondente al problema e la regola che descrive il criterio e il punteggio di sforzo. Nella sezione Consigli è possibile trovare la spiegazione specifica del problema trovato e l'azione corrispondente suggerita.
Come usare l'analizzatore idoneità cloud?
È possibile eseguire l'Analizzatore idoneità cloud in tre passaggi: configurazione, analisi e revisione.
Installazione: scaricare i file binari dell'analizzatore idoneità cloud e le regole personalizzate di Azure. È possibile sostituire i file binari con la versione più recente dal repository dell'analizzatore di idoneità cloud VMware. Estrarre il pacchetto e trovare gli elementi seguenti nella stessa directory:
-
csa-l
: binario CSA per Linux -
csa
: binario CSA per macOS -
csa.exe
: binario CSA per Windows -
rules
: directory contenente regole personalizzate di Azure -
bins.yaml
: file obbligatorio per le regole personalizzate -
run-csa-xxx
: script uno-stop specifico del sistema operativo che esegue tutti i comandi CSA necessari per gli scenari consueti
Nota
Tutti gli esempi di questo articolo usano la versione Linux dello script e del file binario. I parametri nei comandi sono applicabili anche a Windows e macOS.
-
Analisi: avviare il terminale ed eseguire lo script o il file binario con parametri
-p <src_dir>
, come illustrato negli esempi seguenti:./run-csa-linux.sh -p <src_dir>
O
./csa-l -p <src_dir>
La directory
<src_dir>
contiene diverse sottodirectory con il codice sorgente dell'app Spring. Questa operazione analizza tutti questi progetti in un'esecuzione e archivia i risultati in un file denominato csa.db. Le analisi successive archiviano i risultati nello stesso file csa.db .Verifica: quando si esegue lo script, viene avviato automaticamente il portale Web. In alternativa, è possibile usare il comando seguente. Il portale Web mostra la pagina Riepilogo per impostazione predefinita.
./csa-l ui
Come è necessario personalizzare le regole?
Le sezioni seguenti descrivono le regole e come personalizzarle.
Regole di elenco in effetti
Nella pagina Regole del portale Web vengono visualizzate tutte le regole usate per corrispondere ai problemi elencati nella pagina Applicazione . È anche possibile trovare i dettagli per ogni regola.
L'elenco seguente mostra alcune delle regole personalizzate di Azure:
- Migrazione al cloud in generale
- Percorso di Windows nel percorso Linux
- Eseguire il log di destinazione a STDOUT
- Archiviazione locale in Condivisione file di Azure con il protocollo SMB/NFS
- Regole di aggiornamento JDK
- Controllare la versione JDK
- Aggiornamento Spring Boot/Cloud
- Controllare la versione spring boot
- Controllare la versione di Spring Cloud
- Eseguire l'override dell'endpoint client Eureka
- Eseguire l'override dell'endpoint client config
- Rimuovere Zipkin e usare Monitoraggio di Azure
Esportare regole
Per modificare le regole o scrivere regole personalizzate, esportare prima le regole correnti da usare come versioni di base che è possibile modificare. Per esportare le regole, usare il comando seguente:
./csa-l rules export --output-dir=<output_dir>
Quando il comando restituisce correttamente, i file di configurazione che descrivono le regole si trovano nella directory di output specificata.
Modifica regole
È possibile modificare ogni regola in modo indipendente con un editor di testo. È possibile trovare la spiegazione dettagliata di ogni campo nel manuale utente disponibile nel repository dell'analizzatore dell'idoneità cloud .
Regole di importazione
Per aggiungere regole personalizzate o rimuovere regole non necessarie, inserire le regole desiderate nella stessa directory e quindi importare tale directory. Seguire questa procedura per aggiungere o rimuovere regole:
Prima di importare le regole, usare il comando seguente per cancellare le regole efficaci e iniziare da uno slate pulito:
./csa-l rules delete-all
Dopo aver cancellato le regole, usare il comando seguente per importare il proprio set di regole:
./csa-l rules import --rules-dir=<input_dir>
Usare ora il comando seguente per analizzare di nuovo il codice sorgente:
./csa-l -p <src_dir>
Usare quindi il comando seguente per visualizzare i risultati:
./csa-l ui
È ora possibile visualizzare la pagina Regole aggiornate con il set specificato di regole.
Per semplicemente questo processo, è consigliabile aggiornare le regole direttamente nella directory delle regole del progetto azure-spring-appropriatey-rules e quindi usare il comando seguente per eseguire lo script:
./run-csa-linux.sh -p <src_dir>
Questo comando ricarica automaticamente le regole, analizza il codice sorgente e quindi avvia il portale Web.
Piattaforme di destinazione per la migrazione
Esistono più piattaforme di hosting in Azure che possono ospitare le applicazioni Spring. Per altre informazioni, vedere Confrontare le opzioni di hosting delle applicazioni Java in Azure.
Azure Spring Apps è un servizio completamente gestito per gli sviluppatori Spring. Con Azure Spring Apps è possibile concentrarsi sul codice e gestire le app con monitoraggio predefinito, individuazione dei servizi, gestione della configurazione, integrazione CI/CD, distribuzione blu-verde e altro ancora. Per altre informazioni, vedere Eseguire la migrazione di applicazioni Spring Cloud ad Azure Spring Apps. Molti dei passaggi nelle fasi di premilazione e migrazione sono già trattati nelle regole personalizzate di Azure per l'analizzatore di idoneità cloud.
Passaggi successivi
Per altre informazioni, vedere manuale dell'utente nel repository dell'analizzatore dell'idoneità del cloud .