En tant qu'architecte cloud ou décideur, lorsque vous envisagez de déployer une application dans Google Cloud, vous devez choisir un archétype de déploiement1 adapté à votre application. Ce guide décrit six archétypes de déploiement (zonaux, régionaux, multirégionaux, mondiaux, hybrides et multicloud), et présente des cas d'utilisation et des considérations de conception pour chaque archétype de déploiement. Il fournit également une analyse comparative qui vous aidera à choisir les archétypes de déploiement qui répondent à vos exigences en termes de disponibilité, de coût, de performances et d'efficacité opérationnelle.
Qu'est-ce qu'un archétype de déploiement ?
Un archétype de déploiement est un modèle abstrait, indépendant du fournisseur, qui vous permet de créer des architectures de déploiement spécifiques aux applications et répondant à vos exigences commerciales et techniques. Chaque archétype de déploiement spécifie une combinaison de domaines de défaillance dans lesquels une application peut s'exécuter. Ces domaines de défaillance peuvent correspondre à une ou plusieurs zones ou régions Google Cloud et peuvent s'étendre pour inclure vos centres de données sur site ou vos domaines de défaillance dans d'autres fournisseurs de services cloud.
Le schéma suivant illustre six applications déployées dans Google Cloud. Chaque application utilise un archétype de déploiement répondant à ses exigences spécifiques.
Comme le montre le schéma précédent, dans une architecture qui utilise l'archétype de déploiement hybride ou multicloud, la topologie cloud est basée sur l'un des archétypes de base : zonal, régional, multirégional ou mondial. Dans ce sens, les archétypes de déploiement hybrides et multicloud peuvent être considérés comme des archétypes de déploiement composites qui incluent l'un des archétypes de base.
Le choix d'un archétype de déploiement permet de simplifier les décisions suivantes concernant les produits et fonctionnalités Google Cloud que vous devez utiliser. Par exemple, pour une application conteneurisée haute disponibilité, si vous choisissez l'archétype de déploiement régional, les clusters Google Kubernetes Engine (GKE) régionaux sont plus appropriés que les clusters GKE zonaux.
Lorsque vous choisissez un archétype de déploiement pour une application, vous devez prendre en compte les compromis entre des facteurs tels que la disponibilité, les coûts et la complexité opérationnelle. Par exemple, si une application sert des utilisateurs dans plusieurs pays et nécessite une haute disponibilité, vous pouvez choisir l'archétype de déploiement multirégional. Toutefois, pour une application interne utilisée par les employés dans une seule zone géographique, vous pouvez privilégier le coût par rapport à la disponibilité et, par conséquent, choisir l'archétype de déploiement régional.
Présentation des archétypes de déploiement
Les onglets suivants fournissent des définitions pour les archétypes de déploiement ainsi qu'un résumé des cas d'utilisation et des considérations de conception pour chacun.
Zonal
Votre application s'exécute dans une seule zone Google Cloud, comme illustré dans le schéma suivant :
Cas d'utilisation |
|
---|---|
Considérations de conception |
|
Informations complémentaires | Consultez les sections suivantes : |
Régional
Votre application s'exécute indépendamment dans au moins deux zones d'une même région Google Cloud, comme indiqué dans le diagramme suivant :
Cas d'utilisation |
|
---|---|
Considérations de conception |
|
Informations complémentaires | Consultez les sections suivantes : |
Multirégional
Votre application s'exécute indépendamment dans plusieurs zones dans au moins deux régions Google Cloud. Vous pouvez utiliser des règles de routage DNS pour acheminer le trafic entrant vers les équilibreurs de charge régionaux. Les équilibreurs de charge régionaux distribuent ensuite le trafic vers les instances répliquées zonales de l'application, comme illustré dans le schéma suivant :
Cas d'utilisation |
|
---|---|
Considérations de conception |
|
Informations complémentaires | Consultez les sections suivantes : |
Monde
Votre application s'exécute dans les régions Google Cloud à travers le monde, sous la forme d'une pile distribuée à l'échelle mondiale (non consciente de l'emplacement) ou de piles régionalement isolées. Un équilibreur de charge anycast mondial répartit le trafic dans la région la plus proche de l'utilisateur. D'autres composants de la pile d'applications peuvent également être mondiaux, tels que la base de données, le cache et le magasin d'objets.
Le schéma suivant illustre la variante distribuée à l'échelle mondiale de l'archétype de déploiement mondial. Un équilibreur de charge anycast mondial transfère les requêtes vers une pile d'applications distribuée sur plusieurs régions et utilisant une base de données répliquée à l'échelle mondiale.
Le schéma suivant illustre une variante de l'archétype de déploiement mondial avec des piles d'applications isolées au niveau régional. Un équilibreur de charge anycast mondial transfère les requêtes vers une pile d'applications dans l'une des régions. Toutes les piles d'applications utilisent une base de données répliquée à l'échelle mondiale.
Cas d'utilisation |
|
---|---|
Considérations de conception | Coûts liés au transfert et à la réplication de données interrégionaux. |
Informations complémentaires | Consultez les sections suivantes : |
Hybride
Certaines parties de votre application sont déployées dans Google Cloud, tandis que d'autres s'exécutent sur site, comme indiqué dans le schéma suivant. La topologie dans Google Cloud peut utiliser l'archétype de déploiement zonal, régional, multirégional ou mondial.
Cas d'utilisation |
|
---|---|
Considérations de conception |
|
Informations complémentaires | Consultez les sections suivantes : |
Multicloud
Certaines parties de votre application sont déployées dans Google Cloud et d'autres sur d'autres plates-formes cloud, comme illustré dans le schéma suivant. La topologie de chaque plate-forme cloud peut utiliser l'archétype de déploiement zonal, régional, multirégional ou mondial.
Cas d'utilisation |
|
---|---|
Considérations de conception |
|
Informations complémentaires | Consultez les sections suivantes : |
Contributeurs
Auteur : Kumar Dhanagopal | Cross-product solution developer
Autres contributeurs :
- Anna Berenberg | Engineering Fellow
- Anshu Kak | Distinguished Engineer
- Jeff Welsch | Director, Product Management
- Marwan Al Shawi | Partner Customer Engineer
- Sekou Page | Outbound Product Manager
- Steve McGhee | Reliability Advocate
- Victor Moreno | Responsable produit, Mise en réseau cloud
-
Anna Berenberg and Brad Calder, Deployment Archetypes for Cloud Applications, ACM Computing Surveys, Volume 55, Issue 3, Article No. : 61, pp 1-48 ↩