Hacer despliegues azul‑verde para minimizar los riesgos

En esta página se explica cómo desplegar una nueva versión de tu aplicación y migrar el tráfico de una versión antigua a una nueva.

Enviar la aplicación inicial

Usa la CLI de Kf para enviar la versión inicial de tu aplicación con cualquier ruta:

$ kf push app-v1 --route my-app.my-space.example.com

Publicar la aplicación actualizada

Usa la CLI de Kf para enviar una nueva versión de tu aplicación sin ninguna ruta:

$ kf push app-v2 --no-route

Añadir rutas a la aplicación actualizada

Usa la CLI de Kf para vincular todas las rutas a la aplicación actualizada con un peso de 0 para asegurarte de que no reciban ninguna solicitud:

$ kf map-route app-v2 my-space.example.com --hostname my-app --weight 0

Desviar tráfico

Empieza a cambiar el tráfico de la aplicación antigua a la actualizada modificando los pesos de las rutas:

$ 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 la implementación va bien, puedes transferir más tráfico actualizando de nuevo los pesos:

$ 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

Completar el cambio de tráfico

Cuando te asegures de que el nuevo servicio no ha introducido regresiones, completa la implementación transfiriendo todo el tráfico a la nueva instancia:

$ 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

Bajar el volumen de la aplicación original

Cuando te asegures de que no necesitas restauraciones rápidas, elimina la ruta original y detén la aplicación:

$ kf unmap-route app-v1 myspace.example.com --hostname my-app
$ kf stop app-v1

También puedes eliminar la aplicación y todas las asignaciones de rutas asociadas:

$ kf delete app-v1