Questa pagina mostra come eseguire il deployment di una nuova versione dell'app e come migrare il traffico da una versione precedente a una nuova.
Push dell'app iniziale
Usa l'interfaccia a riga di comando Kf per eseguire il push della versione iniziale dell'app con qualsiasi route:
$ kf push app-v1 --route my-app.my-space.example.com
Trasferimento dell'app aggiornata
Usa 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
Aggiunta di route all'app aggiornata
Utilizza l'interfaccia a riga di comando Kf per associare tutte le route esistenti all'app aggiornata con una ponderazione pari a 0 per assicurarti che non ricevano alcuna richiesta.
$ kf map-route app-v2 my-space.example.com --hostname my-app --weight 0
Variazione del traffico
Inizia a spostare il traffico dall'app precedente a quella aggiornata aggiornando le ponderazioni 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 va bene, puoi spostare più traffico aggiornando di nuovo le ponderazioni:
$ 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
Completamento dello spostamento del traffico
Quando ritieni che il nuovo servizio non abbia 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
Disattivazione dell'app originale in corso...
Quando ritieni che non siano necessari rollback rapidi, rimuovi il percorso originale 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 delle route associate:
$ kf delete app-v1