BLOG

Superando a Divisão: Escala e Confiabilidade

Miniatura de Lori MacVittie
Lori MacVittie
Publicado em 25 de abril de 2019

A produção não foi criada para falhar.

Arquiteturas tradicionais de serviços de rede e aplicativos são criadas para serem confiáveis mesmo diante de falhas. Redundância e failover são recursos essenciais da infraestrutura que fica entre os clientes e o ativo mais valioso de uma organização: seus aplicativos.

O failover — o verdadeiro failover — não pode ser alcançado simplesmente criando um novo contêiner. Essa abordagem só funciona para aplicativos modernos projetados para serem sem estado. Isso raramente é uma característica de aplicativos tradicionais e nem mesmo é uma certeza para os modernos. Escala e confiabilidade de nível empresarial são essenciais para manter a disponibilidade do que continua sendo a maior parte do portfólio de aplicativos empresariais: aplicativos tradicionais.

Mas isso não significa que devemos ignorar o número crescente de aplicações modernas. Cada nova arquitetura de aplicativo começa com apenas alguns projetos e então explode à medida que as organizações aprendem a desenvolver, implantar e operar os sistemas e soluções necessários para dimensionar e proteger esses novos aplicativos. O número de novos aplicativos desenvolvidos usando arquiteturas modernas ainda é pequeno dentro das empresas, mas está crescendo rapidamente. Isso é necessário se as organizações quiserem acompanhar o ritmo da economia digital.

Arquitetura na Velocidade das Aplicações

Mais de uma em cada cinco organizações agora tem cinquenta (50) ou mais solicitações de aplicativos importantes em seu backlog de aplicativos . Mais de 61% têm mais de dez (10) novas solicitações de aplicativos na fila. As abordagens tradicionais de desenvolvimento não conseguem acompanhar. Mais aplicativos baseados em arquiteturas modernas aparecerão à medida que as organizações recorrerem ao Agile e aos microsserviços para ajudar a acelerar a entrega.

E, ao fazer isso, eles precisarão de uma maneira de preencher a lacuna entre o modelo de escala e confiabilidade das arquiteturas modernas e a escala e confiabilidade exigentes necessárias para realizar implantações de nível empresarial.

Essas arquiteturas modernas frequentemente incluem NGINX. Na verdade, pode-se dizer que a maioria das arquiteturas modernas emergentes dependem do NGINX em uma ou mais funções.

Entre os doze principais componentes de aplicativo que você encontrará em execução em contêineres está o NGINX. Entre os principais (os principais, para ser honesto) provedores de entrada de contêiner em uso , você encontrará o NGINX. Em todas as pesquisas e relatórios baseados em dados sobre nuvem, contêineres e microsserviços, é provável que você encontre o NGINX em uma lista de componentes em execução.

O NGINX atende principalmente à necessidade de escala em arquiteturas modernas. Ele oferece confiabilidade aos aplicativos modernos, pois se houver uma falha em uma instância do aplicativo, o NGINX notará e direcionará solicitações subsequentes para outras instâncias do aplicativo. Ele cobre a falha que é inerentemente projetada em ambientes de contêiner. Ele também atende aos requisitos de tempo de atividade do aplicativo que a maioria dos DevOps e desenvolvedores são encarregados de atender.

Mas isso não significa necessariamente dimensionar toda uma arquitetura empresarial e garantir sua confiabilidade. O mesmo sistema “construído para falhar” que funciona tão bem para aplicativos modernos não é adequado para fornecer o mesmo para aplicativos tradicionais e infraestrutura de serviços de aplicativos. No centro da diferença está um modelo “estatal versus com estado”. Os aplicativos modernos buscam ser independentes de estado porque isso, por sua vez, faz a arquitetura funcionar. Os aplicativos tradicionais — e a própria rede — são stateful. A falha elimina transações e sessões em andamento e interrompe a disponibilidade.

Confiabilidade moderna

O raio de impacto de uma falha na produção que impacta a infraestrutura compartilhada (que é a maior parte dela) é grande. Muito grande. Redes e serviços de aplicativos responsáveis pela entrega e segurança de centenas de aplicativos não são criados para falhar, eles são criados para serem confiáveis. 

No papel de escala e confiabilidade de nível empresarial está o F5 com BIG-IP. Projetado para ser confiável e capaz de ser dimensionado para atender à demanda e a ataques massivos, o BIG-IP é o meio pelo qual mais de 25.000 empresas entregam aplicativos. Ele atende aos requisitos de tempo de atividade da rede e do aplicativo que os NetOps têm a tarefa de atender.

Ao unir os dois, seremos capazes de satisfazer os requisitos de “confiável”, independentemente da definição. Seja que isso se aplique à confiabilidade de pequenas implantações conduzidas por desenvolvedores que dimensionam aplicativos modernos ou grandes implantações que dimensionam serviços de aplicativos e aplicativos tradicionais, um portfólio combinado oferecerá aos clientes a capacidade de usar a ferramenta certa para o aplicativo certo.

Para saber mais sobre as vantagens de unir o F5 e o NGINX, confira uma postagem do CEO do F5 apresentando a série de blogs "Bridging the Divide".