Fórum Blue Green Deployment #582499
16/06/2017
0
Recentemente vi uma palestra em que foi muito falado de Blue Green Deployment, que eu inicialmente não fazia ideia do que é. Li alguns conteúdos, mas confesso que me pareceu muito complicado para mim =/
Então recorro a vocês. Será que alguém conseguiria me explicar em termos simples o que seria essa técnica?
Grata.
Rachel Andrade
Curtir tópico
+ 0Post mais votado
16/06/2017
Essa Blue Green Deployment, (que eu entendi) nada mais é que uma gestão de entrega de software, vamos la
Existe uma empresa que tem um software RP, este RP sofre atualizações, certo em um ambiente convencional, se seu software estiver em produção e atualizar e após sua atualização ele apresentar problema ou bugs, su aplicativo deixara a empresa fora de produção dependendo do problema constatado, até que uma equipe corrija este bug, uma parte da empresa ou setor X ficara inerte (sem produção)
Agora imagine que você tem dois ambientes um azul e um verde, o ambiente verde é onde seu sistema esta em produção total e funcionando 100%, ai seu RP terá atualização, uma parte da empresa (computadores selecionados), estes computadores são aqueles que não vão atingir o setor inteiro, são os pcs que usam todas as funções do setor mas tem outro que faz a mesma coisa, então você ao invés de atualizar todo o setor atualiza somente aquele computador, os outros continuam com o sistema "antigo" se aparecer problemas nos computadores da área azul você corrige o problema sem afetar todo funcionamento da empresa. Se não tiver problemas com os softwares da sua área azul você migra a atualização para área verde e seu sistema fica 100% produtivo e funcional.
Pode não ser exatamente isso, mas a forma que eu entendi foi esta.
Leonardo Xavier
Gostei + 1
Mais Posts
19/06/2017
Rachel Andrade
Grata.
Gostei + 0
20/06/2017
Joel Rodrigues
Blue Green Deployment é uma técnica utilizada também para conseguir o que chamamos de "Zero Dowtime", ou seja, atualizar a aplicação sem que ela precise ficar parada por algum tempo (ou minimizar ao máximo esse tempo).
Quando temos uma aplicação rodando e precisamos atualizar, podemos colocar um componente de proxy entre os clientes e a aplicação. Esse proxy vai receber as requisições e direcioná-las para a aplicação. Podemos então chamar a aplicação atual de blue e fazer com que o proxy envie todas as requisições para ela, como é normal.
Em seguida, fazemos o deploy da nova versão de forma separada e chamamos essa versão de green. Aí fazemos com que o proxy direcione uma parte das requisições para a área green e outra para a blue (50% e 50%, por exemplo). Se a versão nova estiver tudo ok, então configuramos o proxy para direcionar mais e mais requisições para a área green até chegar em 100%. Nesse momento, todos os clientes estarão usando a versão nova e podemos desativar a antiga (ou manter um backup, claro). Na próxima versão, repetimos o processo.
Note que em nenhum momento foi preciso parar completamente a operação para fazer a atualização. AO invés disso os clientes passaram a ter acesso à nova versão de forma gradual.
Sobre o proxy, ele é atua de forma semelhante a um load balancer. Um exemplo de software para isso é o NGINX.
Espero ter colaborado. Abraços.
Gostei + 1
21/06/2017
Rachel Andrade
Obg, pessoal. Ajudaram muito.
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)