Computação em nuvem - Práticas modernas
Gabarito: letra D. A prática descrita na alternativa D — configurar contêineres isolados em Docker para garantir portabilidade entre diferentes ambientes de nuvem — é a que melhor atende aos objetivos de flexibilidade e escalabilidade em um cenário multi-cloud com serverless e Kubernetes. Os contêineres Docker são leves, isolados e executam consistentemente em qualquer nuvem, sendo a base para a orquestração com Kubernetes e para a adoção de serverless (quando combinados com FaaS).
A banca testa o conhecimento de boas práticas de arquitetura em nuvem, especialmente os conceitos de portabilidade e desacoplamento. Vamos analisar cada alternativa:
Alternativa A — ❌ Incorreta
Serverless computing é nativamente executado em nuvem, utilizando funções como serviço (FaaS) ou back-end como serviço (BaaS), e não em servidores on-premises. Empregá-lo em "camadas intermediárias de sistemas legados" on-premises contraria o próprio conceito de serverless, que depende de infraestrutura elástica gerenciada pelo provedor. Além disso, sistemas legados geralmente não são projetados para esse modelo.
Alternativa B — ❌ Incorreta
Armazenar imagens de contêineres apenas em repositórios locais com sincronização eventual para registros remotos cria um gargalo de disponibilidade e inconsistência. Em um ambiente multi-cloud, é essencial que as imagens estejam disponíveis em registros de contêineres em cada nuvem ou em um registro multi-cloud centralizado (como Docker Hub, Amazon ECR ou Azure Container Registry) para permitir deploy contínuo e escalável. A priorização do controle interno não deve comprometer a flexibilidade.
Alternativa C — ❌ Incorreta
Centralizar a gestão de clusters Kubernetes em uma única nuvem com replicação manual das configurações para os demais provedores é antiético ao multi-cloud. Isso cria dependência do provedor principal, aumenta o risco de falha e torna a replicação propensa a erros humanos. Práticas modernas recomendam o uso de GitOps, Kubernetes Federation ou ferramentas de gerenciamento multi-cluster (como Rancher, Red Hat Advanced Cluster Management) para garantir consistência e alta disponibilidade.
Alternativa D — ✅ Correta ⟵ GABARITO
Contêineres Docker são projetados para serem portáveis: empacotam aplicações e dependências de forma isolada, executando igualmente em qualquer ambiente que suporte Docker (AWS, Azure, GCP, on-premises). Essa portabilidade é fundamental em uma arquitetura multi-cloud, pois permite mover cargas de trabalho entre provedores sem retrabalho. Além disso, contêineres são a base do Kubernetes e do serverless (ex.: AWS Fargate, Azure Container Instances), alinhando-se perfeitamente ao cenário descrito.
Alternativa E — ❌ Incorreta
Embora a nuvem híbrida seja uma estratégia válida, o enunciado enfatiza o uso de multi-cloud, serverless e contêineres para aumentar flexibilidade e escalabilidade. Manter o processamento principal on-premises por "questões de compatibilidade" e usar a nuvem apenas para tarefas complementares vai na contramão da modernização pretendida. A recomendação é migrar gradualmente cargas de trabalho para nuvens, utilizando contêineres e serverless para maximizar os benefícios.
Gabarito: letra D.