Blue Green Deployment
16/06/2017
0
Oi, pessoal. Tudo bem?
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.
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
+ 0
Responder
Post mais votado
16/06/2017
Nossa rachel, que artigo estupendo li agora sobre isso, eu não fazia ideia do que era isso kkkkk, mas fui atrás para entender de alguma forma te ajudar nisso, então vamos la...
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.
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
Responder
Mais Posts
19/06/2017
Rachel Andrade
Muito obrigada, Leonardo. Sem dúvida ajudou sim, essa visão realista aplicada a um cenário mais próximo da minha realidade com certeza ficou mais fácil compreender. =)
Grata.
Grata.
Responder
20/06/2017
Joel Rodrigues
Olá, pessoal. Tudo em paz? Apenas complementando a resposta do Leonardo, gostaria de deixar minha contribuição. =)
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.
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.
Responder
Clique aqui para fazer login e interagir na Comunidade :)