O documento descreve o processo de implementação de uma nova versão de um aplicativo utilizando a técnica de blue-green deployment para evitar tempo de indisponibilidade. Inicialmente há dúvidas sobre realizar o deploy em produção sem os devidos testes e controles. Posteriormente são detalhados os benefícios de se utilizar a abordagem blue-green e como ela foi implementada na Globo.com.
8. Blue Green Deployment :: Rafael Biriba
Descascando o abacaxi...
Os arquivos são copiados via FTP?
9. Blue Green Deployment :: Rafael Biriba
Descascando o abacaxi...
O código não possui testes
automatizados?
10. Blue Green Deployment :: Rafael Biriba
Descascando o abacaxi...
O deploy é feito por uma outra equipe
(ex: operação)?
11. Blue Green Deployment :: Rafael Biriba
Descascando o abacaxi...
O sistema ficará indisponível durante o
deploy ?
12. Blue Green Deployment :: Rafael Biriba
Descascando o abacaxi...
O código não possui controle de versão ?
13. Blue Green Deployment :: Rafael Biriba
Descascando o abacaxi...
O projeto é testado somente local?
Esse ambiente é diferente de produção ?
Backup é manual ?
Os arquivos são copiados via FTP?
O código não possui testes automatizados?
O deploy é por uma outra equipe
(ex: operação)?
O sistema ficará indisponível durante o
deploy?
O código não possui controle de versão ?
14. Blue Green Deployment :: Rafael Biriba
Descascando o abacaxi...
O projeto é testado somente local?
Esse ambiente é diferente de produção ?
Backup é manual ?
Os arquivos são copiados via FTP?
SIM
O código não possui testes automatizados?
O deploy é por uma outra equipe
(ex: operação)?
O sistema ficará indisponível durante o
deploy?
O código não possui controle de versão ?
16. Blue Green Deployment :: Rafael Biriba
Analisando o abacaxi...
Testei em QA (homologação)!
17. Blue Green Deployment :: Rafael Biriba
Analisando o abacaxi...
Meu ambiente é “igualzinho” a PROD!
18. Blue Green Deployment :: Rafael Biriba
Analisando o abacaxi...
Meu backup é automático!
19. Blue Green Deployment :: Rafael Biriba
Analisando o abacaxi...
As mudanças estão versionadas no git!
20. Blue Green Deployment :: Rafael Biriba
Analisando o abacaxi...
Minha cobertura de testes é de 100%!
21. Blue Green Deployment :: Rafael Biriba
Analisando o abacaxi...
Eu mesmo faço o deploy!
22. Blue Green Deployment :: Rafael Biriba
Analisando o abacaxi...
Meu deploy é automatizado!
23. Blue Green Deployment :: Rafael Biriba
Analisando o abacaxi...
Testei em QA (homologação)!
Meu ambiente é “igualzinho” a PROD!
Meu backup é automático!
Minha cobertura de testes é de 100%!
As mudanças estão versionadas no git!
Eu mesmo faço o deploy!
Meu deploy é automatizado!
56. Blue Green Deployment :: Rafael Biriba
Na Globo.com
https://github.com/rafaelbiriba/
cap_blue_green_deploy
57. Blue Green Deployment :: Rafael Biriba
Na Globo.com
current
current-live
server203
blue.globotv.globo.com
globotv.globo.com
acesso interno
acesso externo
58. Blue Green Deployment :: Rafael Biriba
Na Globo.com
globotv
current
releases
a
b
current-live
live-rollback
59. Blue Green Deployment :: Rafael Biriba
Na Globo.com
globotv
current
releases
a
b
current-live
live-rollback
60. Blue Green Deployment :: Rafael Biriba
Na Globo.com
globotv
current
releases
a
b
current-live
live-rollback
77. Blue Green Deployment :: Rafael Biriba
Observações
Blue/Green não é ambiente de teste
78. Blue Green Deployment :: Rafael Biriba
Na Globo.com
https://github.com/rafaelbiriba/
cap_blue_green_deploy
79. Blue Green Deployment :: Rafael Biriba
Duvidas ?
Rafael Biriba
Desenvolvedor desde 2008
na área de webmedia (vídeos)
Estamos contratando: http://talentos.globo.com
Saiba mais:
‣ biribarj@gmail.com
‣‣
‣ rafaelbiriba.com
‣ github.com/rafaelbiriba
‣ slideshare.net/rafaelbiriba
Obrigado!