Le guide alla migrazione da Cloud Foundry a Cloud Run forniscono informazioni di base sulle differenze tra i servizi Cloud Foundry e i servizi Cloud Run e mostrano cosa devi fare per eseguire la migrazione delle applicazioni Cloud Foundry in modo che vengano eseguite in un container su Cloud Run. Queste pagine di migrazione non riguardano la migrazione dei dati.
Applicazioni Cloud Foundry idonee alla migrazione
Cloud Run è progettato per eseguire applicazioni HTTP o HTTP/2 stateless. La migrazione della tua applicazione Cloud Foundry non è possibile a meno che non soddisfi i seguenti criteri:
- Utilizza HTTP o HTTP/2 (incluso gRPC).
- È in ascolto del traffico in base alla variabile di ambiente
PORT. - Non richiede il routing su percorsi diversi a applicazioni diverse.
- Non richiede i "servizi di route" Cloud Foundry legacy per il proxy del traffico.
- Non richiede un ID istanza o un ordine di avvio specifico.
- Non è necessario che le singole istanze siano indirizzabili.
- Può essere avviata senza effetti collaterali sull'ambiente, ad esempio l'avvio di una migrazione del database.
Comprendere le differenze tra Cloud Foundry e Cloud Run
Sebbene Cloud Foundry e Cloud Run condividano un'esperienza di deployment di origine simile, esistono differenze cruciali nel modo in cui le piattaforme approcciano la containerizzazione dei carichi di lavoro, la configurazione delle applicazioni e le definizioni dei servizi. Le differenze tra Cloud Foundry e Cloud Run sono mostrate nella tabella seguente:
| Componente app | Cloud Foundry | Cloud Run Deployment dell'immagine container |
Cloud Run Deployment dell'origine Dockerfile |
Cloud Run Deployment dell'origine buildpack |
|---|---|---|---|---|
| Containerizzazione | CF Buildpacks v2 | N/D | Cloud Build | Cloud Build |
| Immagine di base |
cflinuxfs3 (Ubuntu 18.04) cflinuxfs4 (Ubuntu 22.04) |
Utilizza la tua immagine container | Dockerfile specificato | Ubuntu 18.04 o Ubuntu 22.04 |
| Definizione del servizio | manifest.yaml |
service.yaml |
||
| Elenco di elementi da ignorare | .cfignore |
.gcloudignore |
||
| Metadati del servizio | Variabili di ambiente VCAP_* |
Workload Identity, Cloud Secrets | ||
| Formati di container supportati | Goccia | Manifest dell'immagine Docker V2, schemi 1 e 2 e formati OCI | ||
Come eseguire la migrazione
Per eseguire la migrazione di un'applicazione Cloud Foundry:
- Scegli una strategia per la creazione di container conformi a OCI
- Esegui la migrazione a container conformi a OCI
- Converti il manifest
- Collega i servizi di backend
- Esegui il deployment del servizio in Cloud Run
Esempio di migrazione
L'esempio di Spring Music utilizza i componenti principali di Cloud Foundry per ricompilare Spring Music come immagine compatibile con OCI ed eseguirne il deployment in Cloud Run. Questo esempio segue la strategia di conformità OCI lift and shift.