Le pilier "Fiabilité" du Google Cloud Well-Architected Framework fournit des principes et des recommandations pour vous aider à concevoir, déployer et gérer des charges de travail fiables dans Google Cloud.
Ce document est destiné aux architectes cloud, aux développeurs, aux ingénieurs de plate-forme, aux administrateurs et aux ingénieurs en fiabilité des sites.
La fiabilité est la capacité d'un système à exécuter de manière cohérente les fonctions prévues dans les conditions définies et à maintenir un service ininterrompu. Les bonnes pratiques en matière de fiabilité incluent la redondance, la conception tolérante aux pannes, la surveillance et les processus de récupération automatisés.
La résilience, qui fait partie de la fiabilité, est la capacité du système à résister aux défaillances ou aux perturbations inattendues et à s'en remettre, tout en maintenant les performances. Les fonctionnalités deGoogle Cloud , telles que les déploiements multirégionaux, les sauvegardes automatisées et les solutions de reprise après sinistre, peuvent vous aider à améliorer la résilience de votre système.
La fiabilité est importante pour votre stratégie cloud pour de nombreuses raisons, y compris les suivantes :
- Temps d'arrêt minimal : les temps d'arrêt peuvent entraîner une perte de revenus, une baisse de productivité et une atteinte à la réputation. Les architectures résilientes peuvent aider à garantir que les systèmes peuvent continuer à fonctionner en cas de défaillance ou à récupérer efficacement après une défaillance.
- Expérience utilisateur améliorée : les utilisateurs s'attendent à des interactions fluides avec la technologie. Les systèmes résilients peuvent aider à maintenir des performances et une disponibilité constantes, et ils fournissent un service fiable même en cas de forte demande ou de problèmes inattendus.
- Intégrité des données : les défaillances peuvent entraîner une perte ou une corruption des données. Les systèmes résilients mettent en œuvre des mécanismes tels que les sauvegardes, la redondance et la réplication pour protéger les données et s'assurer qu'elles restent exactes et accessibles.
- Continuité des activités : votre entreprise s'appuie sur la technologie pour les opérations critiques. Les architectures résilientes peuvent aider à assurer la continuité après une défaillance catastrophique, ce qui permet aux fonctions de l'entreprise de se poursuivre sans interruption significative et favorise une récupération rapide.
- Conformité : de nombreux secteurs sont soumis à des exigences réglementaires concernant la disponibilité des systèmes et la protection des données. Les architectures résilientes peuvent vous aider à respecter ces normes en garantissant que les systèmes restent opérationnels et sécurisés.
- Réduction des coûts à long terme : les architectures résilientes nécessitent un investissement initial, mais la résilience peut contribuer à réduire les coûts au fil du temps en évitant les temps d'arrêt coûteux, en évitant les correctifs réactifs et en permettant une utilisation plus efficace des ressources.
État d'esprit organisationnel
Pour rendre vos systèmes fiables, vous avez besoin d'un plan et d'une stratégie établie. Cette stratégie doit inclure la formation et l'autorité nécessaires pour donner la priorité à la fiabilité par rapport à d'autres initiatives.
Définissez clairement que l'ensemble de l'organisation est responsable de la fiabilité, y compris le développement, la gestion des produits, les opérations, l'ingénierie de la plate-forme et l'ingénierie de la fiabilité des sites (SRE). Même les groupes axés sur l'activité, comme le marketing et les ventes, peuvent influencer la fiabilité.
Chaque équipe doit comprendre les objectifs de fiabilité et les risques de ses applications. Les équipes doivent être responsables de ces exigences. Les conflits entre la fiabilité et le développement des fonctionnalités produit doivent être hiérarchisés et être remontés en conséquence.
Planifiez et gérez la fiabilité de manière globale, pour l'ensemble de vos fonctions et de vos équipes. Envisagez de configurer un centre d'excellence cloud (CCoE) incluant un pilier de fiabilité. Pour en savoir plus, consultez Optimiser le parcours cloud de votre organisation avec un centre d'excellence cloud.
Points d'attention pour la fiabilité
Les activités que vous effectuez pour concevoir, déployer et gérer un système fiable peuvent être classées dans les domaines d'intérêt suivants. Chacun des principes et recommandations de fiabilité de ce pilier est pertinent pour l'un de ces domaines d'intérêt.
- Définition du champ d'application : pour comprendre votre système, effectuez une analyse détaillée de son architecture. Vous devez comprendre les composants, leur fonctionnement et leur interaction, la façon dont les données et les actions circulent dans le système, et ce qui pourrait mal se passer. Identifier les défaillances, les goulots d'étranglement et les risques potentiels, ce qui vous aide à prendre des mesures pour atténuer ces problèmes.
- Observation : pour éviter les défaillances du système, mettez en œuvre une observation et une surveillance complètes et continues. Cette observation vous permet de comprendre les tendances et d'identifier les problèmes potentiels de manière proactive.
- Réponse : pour réduire l'impact des défaillances, réagissez de manière appropriée et récupérez efficacement. Les réponses automatisées peuvent également aider à réduire l'impact des défaillances. Même avec une planification et des contrôles, des défaillances peuvent toujours se produire.
- Apprentissage : pour éviter que les défaillances ne se reproduisent, tirez des enseignements de chaque expérience et prenez les mesures appropriées.
Évaluer les charges de travail à l'aide d'une compétence d'agent
Pour permettre aux agents IA d'évaluer vos charges de travail cloud par rapport aux principes et recommandations de ce pilier, utilisez la compétence google-cloud-waf-reliability, disponible dans le dépôt Google Agent Skills sur GitHub.
Pour installer la compétence, exécutez la commande suivante dans le client ou le terminal de votre agent :
npx skills add google/skills --skill google-cloud-waf-reliability
Lorsque vous y êtes invité, spécifiez les agents d'IA pour lesquels vous souhaitez installer la compétence et définissez le champ d'application de l'installation (projet ou global).
Si vous avez déjà installé la compétence, vous pouvez la mettre à jour vers la dernière version en exécutant la commande suivante :
npx skills update
Principes de base
Les recommandations du pilier "Fiabilité" du Well-Architected Framework sont mappées aux principes de base suivants :
- Définir la fiabilité en fonction des objectifs d'expérience utilisateur
- Définir des objectifs de fiabilité réalistes
- Créer des systèmes disponibilité élevée grâce à la redondance des ressources
- Profiter de l'évolutivité horizontale
- Détecter les défaillances potentielles à l'aide de l'observabilité
- Concevoir pour une dégradation élégante
- Effectuer des tests de reprise après échec
- Effectuer des tests de récupération après une perte de données
- Réaliser des analyses post-mortem approfondies
Contributeurs
Auteurs :
- Laura Hyatt | Ingénieur client, FSI
- Jose Andrade | Ingénieur client, spécialiste SRE
- Gino Pelliccia | Architecte principal
Autres contributeurs :
- Andrés-Leonardo Martínez-Ortiz | Responsable de programme technique
- Brian Kudzia | Ingénieur client en infrastructure d'entreprise
- Daniel Lees | Architecte en sécurité cloud
- Filipe Gracio, PhD | Ingénieur client, spécialiste en IA/ML
- Gary Harmson | Architecte principal
- Kumar Dhanagopal Développeur de solutions multiproduits
- Marwan Al Shawi | Partner Customer Engineer
- Nicolas Pintaux | Ingénieur client, spécialiste de la modernisation des applications
- Radhika Kanakam | Responsable de programme, Google Cloud Well-Architected Framework
- Ryan Cox | Architecte principal
- Samantha He | Rédactrice technique
- Wade Holmes | Directeur des solutions mondiales
- Zach Seils | Spécialiste en gestion des réseaux