Hacer despliegues azul‑verde para minimizar los riesgos

En esta página se explica cómo implementar 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 los pesos de nuevo:

$ 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 estés seguro de que el nuevo servicio no ha introducido regresiones, completa el lanzamiento 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

Desactivar la aplicación original

Cuando estés seguro 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