Como arquiteto de nuvem ou tomador de decisões, ao implantar um aplicativo no Google Cloud, é preciso escolher um arquétipo de implantação1 adequado para seu aplicativo. Neste guia, descrevemos seis arquétipos de implantação: zonal, regional, multirregional, global, híbrida e de várias nuvens. Além disso, ele apresenta casos de uso e considerações de design para cada arquétipo de implantação. O guia também fornece uma análise comparativa para ajudar você a escolher os arquétipos de implantação que atendam aos seus requisitos de disponibilidade, custo, desempenho e eficiência operacional.
O que é um arquétipo de implantação?
Um arquétipo de implantação é um modelo abstrato e independente do provedor que você usa como base para criar arquiteturas de implantação específicas do aplicativo que atendam aos seus requisitos técnicos e comerciais. Cada arquétipo de implantação especifica uma combinação de domínios de falha em que um aplicativo pode ser executado. Esses domínios de falha podem ser uma ou mais zonas ou regiões do Google Cloud e podem se estender para incluir seus data centers locais ou domínios de falha em outros provedores de nuvem.
O diagrama a seguir mostra seis aplicativos implantados no Google Cloud. Cada aplicativo usa um arquétipo de implantação que atende aos requisitos específicos.
Como mostra o diagrama anterior, em uma arquitetura que usa o arquétipo de implantação híbrida ou de várias nuvens, a topologia da nuvem é baseada em um dos arquétipos básicos: zonal, regional, multirregional ou global. Nesse sentido, os arquétipos de implantação híbrida e de várias nuvens podem ser considerados como arquétipos de implantação compostos que incluem um dos arquétipos básicos.
A escolha de um arquétipo de implantação ajuda a simplificar as decisões subsequentes sobre os produtos e recursos do Google Cloud que você precisa usar. Por exemplo, para um aplicativo conteinerizado altamente disponível, se você escolher o arquétipo de implantação regional, os clusters regionais do Google Kubernetes Engine (GKE) serão mais apropriados do que os clusters zonais do GKE.
Ao escolher um arquétipo de implantação para um aplicativo, é preciso considerar as compensações entre fatores como disponibilidade, custo e complexidade operacional. Por exemplo, se um aplicativo atende a usuários em vários países e precisa de alta disponibilidade, você pode escolher o arquétipo de implantação multirregional. No entanto, para um aplicativo interno usado por funcionários em uma única região geográfica, é possível priorizar o custo em vez da disponibilidade e, portanto, escolher o arquétipo de implantação regional.
Visão geral dos arquétipos de implantação
As guias a seguir fornecem definições para os arquétipos de implantação e um resumo dos casos de uso e considerações de design para cada um.
Zonal
O aplicativo é executado em uma única zona do Google Cloud, conforme mostrado no diagrama a seguir:
Casos de uso |
|
---|---|
Considerações sobre o design |
|
Mais informações | Consulte as seções a seguir para saber como fazer isso: |
Regional
O aplicativo é executado de maneira independente em duas ou mais zonas em uma única região do Google Cloud, conforme mostrado no diagrama a seguir:
Casos de uso |
|
---|---|
Considerações sobre o design |
|
Mais informações | Consulte as seções a seguir para saber como fazer isso: |
Multirregional
Seu aplicativo é executado de maneira independente em várias zonas em duas ou mais regiões do Google Cloud. É possível usar políticas de roteamento de DNS para encaminhar o tráfego de entrada para os balanceadores de carga regionais. Em seguida, os balanceadores de carga regionais distribuem o tráfego para as réplicas zonais do aplicativo, conforme mostrado no diagrama a seguir:
Casos de uso |
|
---|---|
Considerações sobre o design |
|
Mais informações | Consulte as seções a seguir para saber como fazer isso: |
Global
O aplicativo é executado nas regiões do Google Cloud em todo o mundo, como uma pilha distribuída globalmente (sem reconhecimento de local) ou como pilhas isoladas por região. Um balanceador de carga anycast global distribui o tráfego para a região mais próxima do usuário. Outros componentes da pilha de aplicativos também podem ser globais, como o banco de dados, o cache e o armazenamento de objetos.
O diagrama a seguir mostra a variante distribuída globalmente do arquétipo de implantação global. Um balanceador de carga Anycast global encaminha solicitações para uma pilha de aplicativos distribuída em várias regiões e que usa um banco de dados replicado globalmente.
O diagrama a seguir mostra uma variante do arquétipo de implantação global com pilhas de aplicativos isoladas por região. Um balanceador de carga Anycast global encaminha solicitações para uma pilha de aplicativo em uma das regiões. Todas as pilhas de aplicativos usam um único banco de dados replicado globalmente.
Casos de uso |
|
---|---|
Considerações sobre o design | Custos de transferência de dados e replicação de dados entre regiões. |
Mais informações | Consulte as seções a seguir para saber como fazer isso: |
Híbrido
Algumas partes do aplicativo são implantadas no Google Cloud, enquanto outras são executadas no local, como mostrado no diagrama a seguir. A topologia no Google Cloud pode usar o arquétipo de implantação zonal, regional, multirregional ou global.
Casos de uso |
|
---|---|
Considerações sobre o design |
|
Mais informações | Consulte as seções a seguir para saber como fazer isso: |
Várias nuvens
Algumas partes do aplicativo são implantadas no Google Cloud e outras em outras plataformas de nuvem, conforme mostrado no diagrama a seguir. A topologia de cada plataforma de nuvem pode usar o arquétipo de implantação zonal, regional, multirregional ou global.
Casos de uso |
|
---|---|
Considerações sobre o design |
|
Mais informações | Consulte as seções a seguir para saber como fazer isso: |
Colaboradores
Autor: Kumar Dhanagopal | Desenvolvedor de soluções de vários produtos
Outros colaboradores:
- Anna Berenberg | Pesquisadora de engenharia
- Anshu Kak | Engenheira renomada
- Jeff Welsch | Diretor, gerenciamento de produtos
- Marwan Al Shawi | Engenheiro de clientes do parceiro
- Sekou Page | Gerente de produtos de prospecção ativa
- Steve McGhee | Defensor de confiabilidade
- Victor Moreno | Gerente de produtos, Cloud Networking
-
Anna Berenberg e Brad Calder, Deployment Archetypes for Cloud Applications, ACM Computing Surveys, Volume 55, Edição 3, Artigo no: 61, pp 1-48 ↩