Blue Green Deployment
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
Curtidas 0
Melhor post
Leonardo Xavier
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.
GOSTEI 1
Mais Respostas
Rachel Andrade
16/06/2017
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.
GOSTEI 0
Joel Rodrigues
16/06/2017
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.
GOSTEI 1
Rachel Andrade
16/06/2017
Show de mais =)
Obg, pessoal. Ajudaram muito.
Obg, pessoal. Ajudaram muito.
GOSTEI 0