Cette page explique comment déployer une nouvelle version de votre application et migrer le trafic de l'ancienne à la nouvelle version.
Déployer l'application initiale
Utilisez la CLI Kf pour déployer la version initiale de l'application en lui associant une route :
$ kf push app-v1 --route my-app.my-space.example.com
Transférer la nouvelle version de l'application
Utilisez la CLI Kf pour transférer la nouvelle version de l'application sans définir de route :
$ kf push app-v2 --no-route
Ajouter des routes à la nouvelle version de l'application
Utilisez la CLI Kf pour associer toutes les routes existantes à la nouvelle version de l'application. Spécifiez une pondération de 0 afin que ces routes ne reçoivent aucun trafic.
$ kf map-route app-v2 my-space.example.com --hostname my-app --weight 0
Basculer le trafic
Commencez à faire passer le trafic de l'ancienne à la nouvelle version de l'application en modifiant les pondérations définies au niveau des routes.
$ 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
Si le déploiement se déroule correctement, vous pouvez continuer à basculer le trafic en modifiant à nouveau les pondérations :
$ 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
Basculer complètement le trafic
Une fois que vous êtes certain que le nouveau service n'a pas introduit de régression, terminez le déploiement en basculant tout le trafic vers la nouvelle instance :
$ 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
Désactiver l'application d'origine
Une fois que vous êtes certain qu'un rollback rapide ne sera pas nécessaire, supprimez la route d'origine, puis arrêtez l'application :
$ kf unmap-route app-v1 myspace.example.com --hostname my-app
$ kf stop app-v1
Ou bien, supprimez l'application d'origine ainsi que tous les mappages de routage associés :
$ kf delete app-v1