Questa pagina mostra come eseguire il deployment di una nuova versione dell'applicazione e eseguire la migrazione del traffico da una versione precedente a una nuova.
Esegui il push dell'app iniziale
Utilizza l'interfaccia a riga di comando Kf per eseguire il push della versione iniziale della tua app con qualsiasi route:
$ kf push app-v1 --route my-app.my-space.example.com
Esegui il push dell'app aggiornata
Utilizza l'interfaccia a riga di comando Kf per eseguire il push di una nuova versione dell'app senza route:
$ kf push app-v2 --no-route
Aggiungere le route all'app aggiornata
Utilizza l'interfaccia a riga di comando Kf per associare tutti i percorsi esistenti all'app aggiornata con un peso pari a 0 per assicurarti che non ricevano richieste:
$ kf map-route app-v2 my-space.example.com --hostname my-app --weight 0
Shift il traffico
Inizia a spostare il traffico dalla vecchia app a quella aggiornata aggiornando i pesi sulle route:
$ kf map-route app-v1 my-space.example.com --hostname my-app --weight 80
$ kf map-route app-v2 my-space.example.com --hostname my-app --weight 20
Se il deployment procede bene, puoi spostare una quantità maggiore di traffico aggiornando il di nuovo i pesi:
$ kf map-route app-v1 my-space.example.com --hostname my-app --weight 50
$ kf map-route app-v2 my-space.example.com --hostname my-app --weight 50
Spostamento completo del traffico
Una volta accertato che il nuovo servizio non ha introdotto regressioni, completa l'implementazione spostando tutto il traffico nella nuova istanza:
$ kf map-route app-v1 my-space.example.com --hostname my-app --weight 0
$ kf map-route app-v2 my-space.example.com --hostname my-app --weight 100
Disattivare l'app originale
Quando ritieni che i rollback rapidi non siano necessari, rimuovi l'originale percorso e interrompi l'app:
$ kf unmap-route app-v1 myspace.example.com --hostname my-app
$ kf stop app-v1
In alternativa, elimina l'app e tutte le mappature dei percorsi associate:
$ kf delete app-v1