Arquitetura de nuvem híbrida tradicional
Inicialmente, a arquitetura de nuvem híbrida se concentra no processo de transformar partes do data center local de uma empresa em uma infraestrutura de nuvem privada. E, em seguida, conectar essa infraestrutura a ambientes de nuvem pública hospedados fora da instalação local por um provedor de nuvem pública (por exemplo, AWS, Google Cloud Services, IBM Cloud, Microsoft Azure). Esse resultado foi alcançado por meio de uma solução de nuvem híbrida predefinida, como o Red Hat OpenStack (link externo ao ibm.com). Ou por meio de um middleware corporativo sofisticado para integrar recursos de nuvem em todos os ambientes. E ferramentas de gerenciamento unificadas para monitorar, alocar e gerenciar esses recursos a partir de um console central ou de um “painel único”.
Arquitetura de nuvem híbrida moderna
Atualmente, a arquitetura de nuvem híbrida se concentra menos na conectividade física e mais no suporte à portabilidade de cargas de trabalho em todos os ambientes de nuvem. E na automação da implementação dessas cargas de trabalho no melhor ambiente de nuvem para uma determinada finalidade comercial. Várias tendências estão impulsionando essa mudança.
Como parte da próxima etapa crítica em suas transformações digitais, as organizações estão criando novas aplicações e modernizando aplicações legadas para usar tecnologias nativas da nuvem. Tecnologias que permitem o desenvolvimento, a implementação, o gerenciamento e o desempenho consistentes e confiáveis em ambientes de nuvem e entre fornecedores de nuvem.
Especificamente, eles estão criando ou transformando aplicações para usar a arquitetura de microsserviços, que fragmenta as aplicações em componentes menores, com baixo acoplamento e reutilizáveis, direcionados para funções de negócios específicas. E eles estão implementando essas aplicações em contêineres, unidades executáveis leves que incluem apenas o código da aplicação e as dependências do sistema operacional virtualizado necessárias para sua execução.
Num nível mais elevado, as nuvens públicas e privadas não são mais “locais” físicos para conexão. Por exemplo, muitos fornecedores de nuvem agora oferecem serviços de nuvem pública que são executados nos data centers locais de seus clientes. As nuvens privadas, que antes eram executadas exclusivamente no local, agora são frequentemente hospedadas em data centers externos, em redes privadas virtuais (VPNs) ou nuvens privadas virtuais (VPCs). Ou em infraestrutura dedicada alugada de provedores terceirizados (que, às vezes, são provedores de nuvem pública).
Além disso, a virtualização da infraestrutura, também chamada de infraestrutura como código, permite que os desenvolvedores criem esses ambientes sob demanda, utilizando recursos de computação ou recursos de nuvem localizados atrás ou além do firewall. Isso ganha mais importância com o advento da edge computing, que oferece oportunidades para melhorar o desempenho global das aplicações, migrando as cargas de trabalho e os dados para mais perto de onde a computação real é realizada.
Como resultado desses e outros fatores, a infraestrutura moderna de nuvem híbrida está começando a se unir em torno de uma plataforma unificada de nuvem híbrida e multinuvem que inclui:
- Suporte para desenvolvimento e implementação de aplicações nativas em nuvem em todos os tipos de nuvem (pública e privada) e provedores de nuvem.
- Um único sistema operacional em todos os ambientes.
- Uma plataforma de orquestração de contêineres, geralmente o Kubernetes, que automatiza a implementação de aplicações em diversos ambientes de nuvem.
O desenvolvimento nativo da nuvem permite que os desenvolvedores transformem aplicações monolíticas em unidades de funcionalidade orientada para os negócios, que podem ser executadas em qualquer lugar e reutilizadas em diversas aplicações. Um sistema operacional padrão permite que os desenvolvedores construam qualquer dependência de hardware em qualquer contêiner. E a orquestração e automação do Kubernetes oferecem aos desenvolvedores um controle granular, "configure e esqueça", sobre a configuração e implementação de contêineres, incluindo segurança, balanceamento de carga, escalabilidade, entre outros, em vários ambientes de nuvem.