In questa guida scoprirai come eseguire la migrazione di un'applicazione esistente in un contenitore GKE utilizzando l'estensione Cloud Code nell'IDE su una macchina Linux.
Questa guida è rivolta agli sviluppatori su una macchina Linux che hanno conoscenza di VS Code, sono familiari con Google Cloude hanno una VM che esegue il componente dell'applicazione.
Prima di iniziare
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Google Kubernetes Engine API.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Google Kubernetes Engine API.
- Se non l'hai ancora fatto, installa l'estensione Cloud Code.
- Crea e configura un cluster GKE.
- Assicurati di sapere quale tipo di migrazione vuoi eseguire. Per ulteriori informazioni sui carichi di lavoro supportati, consulta Esaminare le versioni di Kubernetes, i sistemi operativi e i carichi di lavoro compatibili.
- Prepara le macchine di origine e locali per la modernizzazione. Cloud Code supporta solo Linux per la modernizzazione.
Aggiungere un'origine di replatforming
In questa sezione, se non l'hai già fatto, installa l'interfaccia a riga di comando del client di rilevamento del Centro di migrazione (mcdc
) e gli altri strumenti di Migrate to Containers sulla tua macchina locale e aggiungi un'origine di replatforming seguendo questi passaggi:
Nella barra delle attività dell'IDE, fai clic su
Cloud Code e poi espandi l'esploratore Esegui il replatforming delle app.
Se è la prima volta che utilizzi Migrate to Containers in Cloud Code, devi installare la CLI
mcdc
e altri strumenti di Migrate to Containers sulla tua macchina locale facendo clic su Installa strumenti. In caso contrario, vai al passaggio successivo.Fai clic su Modifica origini. Si aprirà un file
mcdc-sources.json
vuoto. Aggiungi le tue origini nel seguente formato:[ { "title": "SOURCE_NAME", "host": "HOSTNAME", "user": "USER", "identityFile":"IDENTITY-FILE-PATH" } ]
Per visualizzare le origini nell'esploratore Esegui il replatforming delle app, tieni premuto il cursore sull'esploratore Esegui il replatforming delle app e fai clic sul pulsante Ricarica origini in cache visualizzato.
(Facoltativo) Genera una valutazione di idoneità
Prima di tentare di eseguire la migrazione della tua applicazione a un contenitore, ti consigliamo di generare una valutazione dell'idoneità della tua origine, che ti informa se la tua origine è in grado di eseguire la migrazione di un contenitore.
Per generare una valutazione dell'idoneità dell'origine, fai clic con il tasto destro del mouse sull'origine e seleziona Valuta origine. Si apre il terminale nell'IDE e vengono visualizzati i log della valutazione della tua origine.
Al termine della valutazione, mcdc
genera un report di valutazione di idoneità nell'IDE.
Se le tue origini sono contrassegnate come Buona corrispondenza, puoi eseguire il replatforming della tua applicazione.
Eseguire il replatforming dell'applicazione
Cloud Code crea uno spazio di lavoro dedicato per ogni migrazione e consente di eseguire le attività Copia, Analizza e Genera nello spazio di lavoro per automatizzare i passaggi di migrazione. Se esegui la task Genera senza eseguire prima le task Copia e Analizza, queste vengono eseguite automaticamente prima di generare gli elementi.
Le sezioni seguenti illustrano la procedura per eseguire ciascuna di queste attività e per eseguire il replatforming dell'applicazione in un contenitore utilizzando Cloud Code.
Per scoprire di più sul ciclo di vita di una migrazione, consulta Architettura dell'interfaccia a riga di comando Migrate to Containers.
Creare un nuovo spazio di lavoro per il trasferimento della piattaforma
Prima di creare una nuova area di lavoro per il cambio di piattaforma, devi sapere quali parametri di migrazione selezionare per il tipo di migrazione. Per ulteriori informazioni sui parametri per ogni tipo di migrazione, consulta Creare un piano di migrazione.
Per creare un nuovo spazio di lavoro di replatforming con gli elementi nell'IDE:
Nell'esploratore Esegui il replatforming delle app, fai clic con il tasto destro del mouse sull'origine che vuoi eseguire il replatforming e poi fai clic su Esegui il replatforming.
Dall'elenco di opzioni visualizzato nel menu, seleziona un percorso di migrazione.
Seleziona una nuova directory dello spazio di lavoro in cui eseguire il replatforming dell'applicazione, fai clic su Ok e poi su Crea spazio di lavoro per il replatforming.
Seleziona i parametri di migrazione per il tipo di migrazione.
(Facoltativo) Se hai selezionato il tipo di migrazione WebSphere e vuoi utilizzare un scanner di file binari, seleziona il file
binaryAppScanner.jar
.La generazione dello spazio di lavoro richiede alcuni secondi. Si aprirà la nuova directory dello spazio di lavoro in una nuova finestra dell'IDE.
Copiare file dalla VM allo spazio di lavoro
Per copiare i file dalla VM allo spazio di lavoro nell'IDE, svolgi i seguenti passaggi:
(Facoltativo) L'interfaccia a riga di comando
mcdc
applica filtri per ridurre le dimensioni della copia, ma puoi modificare il filefilters.txt
per ridurle ulteriormente. Per scoprire come ridurre le dimensioni della copia, consulta Ridurre le dimensioni del file system copiato.Apri la tavolozza dei comandi premendo Ctrl+Maiusc+P.
Cerca e seleziona Tasks: Run Task (Attività: esegui attività), quindi seleziona m2c: Copy (m2c: copia). La copia dei file potrebbe richiedere alcuni minuti.
Analizza il file system della VM e genera un piano di migrazione
Per analizzare il file system della VM e generare un piano di migrazione, svolgi i seguenti passaggi:
Apri la tavolozza dei comandi premendo Ctrl+Maiusc+P.
Cerca e seleziona Tasks: Run Task (Attività: Esegui attività), quindi seleziona m2c: Analyze (m2c: Analizza).
Se l'attività di analisi non va a buon fine, devi modificare i parametri di migrazione tramite il file
analyze-args.ini
. Questo file contiene una riga per parametro con la documentazione di accompagnamento relativa al parametro.Se l'analisi va a buon fine, Cloud Code crea una directory denominata
migration-plan
contenente i risultati dell'analisi sotto forma diconfig.yaml
file. Puoi modificare questo file per cambiare il modo in cui vengono generati gli elementi.La struttura del file
config.yaml
varia in base al tipo di migrazione. Per ulteriori informazioni sui tipi di migrazione supportati, consulta le seguenti pagine:
Genera artefatti
Per generare gli elementi, devi eseguire l'attività Genera nell'IDE. Se non hai già eseguito le attività Copia e Analizza nelle sezioni precedenti, l'attività Genera le esegue automaticamente entrambe prima di generare gli elementi.
Per generare gli elementi, svolgi i seguenti passaggi:
Apri la tavolozza dei comandi premendo Ctrl+Maiusc+P.
Cerca e seleziona Tasks: Run Task (Attività: Esegui attività), quindi seleziona m2c: Generate (m2c: Genera). Vengono generati gli elementi nella directory
src
, che contiene unskaffold.yaml
file utilizzato per creare ed eseguire il deployment di un'immagine container. Ogni tipo di migrazione genera diversi elementi, ma in genere tutti i tipi di migrazione creano uno o più file Docker e una specifica di deployment GKE a cui fa riferimentoskaffold.yaml
.Al termine della generazione degli elementi, la migrazione della tua applicazione è completata.
(Facoltativo) Se vuoi modificare il piano di migrazione, modifica il file
config.yaml
e esegui di nuovo l'attività m2c: Generate.In caso contrario, se i risultati del replatforming ti soddisfano, puoi procedere per eseguire l'applicazione in un contenitore GKE.
Esegui l'applicazione in un contenitore GKE
In questa sezione eseguirai l'applicazione con replatforming in un container GKE, visualizzerai i log dell'applicazione in esecuzione e ripulirai le risorse.
Se non hai ancora creato e configurato un cluster GKE, segui le istruzioni riportate in Creare e configurare un cluster GKE in Cloud Code per VS Code.
Per scoprire di più sul debug delle applicazioni GKE, consulta Eseguire il debug delle applicazioni Kubernetes con Cloud Code per VS Code.
Esegui e visualizza l'applicazione
Ora che è tutto pronto, puoi eseguire l'applicazione e visualizzarla in tempo reale. Cloud Code controlla il file system per rilevare le modifiche in modo da poter modificare ed eseguire nuovamente l'app in tempo reale.
Per eseguire l'applicazione:
Nella barra di stato di Cloud Code, fai clic sul nome del progetto attivo.
Nel menu Scelta rapida visualizzato, seleziona Esegui su Kubernetes.
Conferma se utilizzare il contesto del cluster corrente o passare a un altro.
Se richiesto, scegli un registry di immagini a cui inviare le immagini. Se stai creando un nuovo registry delle immagini utilizzando
gcr.io/PROJECT_ID
, assicurati che si trovi nello stesso progetto del tuo cluster.Viene visualizzata una finestra di output in cui puoi monitorare lo stato di avanzamento dell'applicazione in esecuzione. Nell'output del terminale vedrai anche un live streaming dei log dei pod in esecuzione.
Dopo che l'applicazione è in esecuzione su Kubernetes, la finestra di output visualizza un indirizzo IP. Per utilizzare questo indirizzo IP collegato per accedere all'applicazione, premi Ctrl e fai clic sull'indirizzo.
Dopo l'avvio della sessione di debug, nel riquadro Sessioni di sviluppo viene visualizzata la vista di registrazione strutturata. All'inizio di un'attività, viene visualizzato un semicerchio in rotazione progress_activity.
Se un'attività va a buon fine, accanto al passaggio viene visualizzato un segno di spunta check_circle.
Per visualizzare i dettagli di un passaggio, fai clic sul passaggio nel riquadro Sessione di sviluppo. Il riquadro Output mostra il passaggio nell'output del logging.
Esegui la pulizia
Dopo aver interrotto l'applicazione, tutte le risorse Kubernetes di cui è stato eseguito il deployment durante l'esecuzione vengono eliminate automaticamente.
Per evitare che al tuo account vengano addebitati costi per altre risorse utilizzate in questo inizio rapido, assicurati di eliminare il progetto o il cluster che hai creato se vuoi riutilizzarlo.
Per eliminare il cluster:
- Fai clic su
Cloud Code ed espandi l'esploratore Kubernetes.
- Tieni premuto il puntatore del mouse sul nome del cluster, quindi fai clic su open_in_new Apri nella console Google Cloud.
- Fai clic su Elimina e quindi su Elimina.
Per eliminare il progetto (e le risorse associate, inclusi eventuali cluster):
- In the Google Cloud console, go to the Manage resources page.
- In the project list, select the project that you want to delete, and then click Delete.
- In the dialog, type the project ID, and then click Shut down to delete the project.
Per eliminare tutti i file locali creati durante la procedura di replatforming:
- Apri la tavolozza dei comandi (Ctrl+Maiusc+P).
- Cerca e seleziona Tasks: Run Task (Attività: esegui attività), quindi seleziona m2c: Cleanup (Pulizia m2c).