Reduza o risco de implantação com implantações azul-verde

Esta página mostra como implantar uma nova versão do seu app e migrar o tráfego de uma versão antiga para uma nova.

Como enviar o app inicial

Use a CLI do Kf para enviar a versão inicial do seu app com qualquer rota:

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

Como enviar o app atualizado

Use a CLI do Kf para enviar uma nova versão do seu app sem qualquer rota:

$ kf push app-v2 --no-route

Como adicionar rotas ao app atualizado

Use a CLI do Kf para vincular todas as rotas atuais ao app atualizado com um peso 0 para garantir que elas não recebam solicitações.

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

Como alterar o tráfego

Para começar, atualize os pesos nas rotas para alterar o tráfego do app antigo para o aplicativo atualizado.

$ 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 a implantação estiver ocorrendo sem problemas, será possível atualizar os pesos mudar mais tráfego:

$ 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

Como concluir a mudança de tráfego

Quando o novo serviço não tiver introduzido as regressões, conclua o lançamento mudando todo o tráfego para a nova instância:

$ 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

Desativação do app original

Se você concluir que não é preciso fazer nenhuma reversão, remova a rota original e interrompa o app:

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

Se preferir, exclua o app e todos os mapeamentos de rota associados:

$ kf delete app-v1