Partager via


Fiabilité dans les machines virtuelles Azure

Les machines virtuelles Azure fournissent des ressources de calcul évolutives à la demande. En tant que service d’infrastructure de base, il est conçu pour fournir une fiabilité et une disponibilité de niveau entreprise pour les charges de travail stratégiques.

Lorsque vous utilisez Azure, la fiabilité est une responsabilité partagée. Microsoft fournit une gamme de fonctionnalités pour prendre en charge la résilience et la récupération. Vous êtes responsable de comprendre le fonctionnement de ces fonctionnalités dans tous les services que vous utilisez et de sélectionner les fonctionnalités dont vous avez besoin pour atteindre vos objectifs métier et vos objectifs de temps d’activité.

Cet article explique comment rendre les machines virtuelles résilientes à diverses pannes et problèmes potentiels, notamment les erreurs temporaires, les pannes de zone de disponibilité, les pannes de région et la maintenance du service. Il décrit également comment utiliser des sauvegardes pour récupérer à partir d’autres types de problèmes et met en évidence certaines informations clés sur le contrat de niveau de service des machines virtuelles (SLA).

Important

Lorsque vous envisagez la fiabilité d’une machine virtuelle, vous devez également prendre en compte la fiabilité de vos disques, infrastructure réseau et applications qui s’exécutent sur vos machines virtuelles. L’amélioration de la résilience de la machine virtuelle seule peut avoir un impact limité si les autres composants ne sont pas tout aussi résilients. Selon vos besoins de résilience, vous devrez peut-être apporter des modifications de configuration dans plusieurs domaines.

Recommandations concernant le déploiement de production

Pour plus d’informations sur le déploiement de machines virtuelles pour prendre en charge les exigences de fiabilité de votre solution et sur la façon dont la fiabilité affecte d’autres aspects de votre architecture, consultez les meilleures pratiques d’architecture pour les machines virtuelles et les groupes identiques dans Azure Well-Architected Framework.

Vue d’ensemble de l’architecture de fiabilité

Les machines virtuelles sont l’unité de calcul fondamentale dans Azure, que vous approvisionniez les machines virtuelles vous-même ou utilisez d’autres services de calcul Azure qui approvisionnent et gèrent les machines virtuelles de manière transparente pour vous.

Une machine virtuelle individuelle est également appelée machine virtuelle à instance unique. Il s’exécute sur un hôte spécifique, qui est un serveur physique. La plupart des machines virtuelles partagent leur hôte avec d’autres machines virtuelles.

Lorsque vous créez vos machines virtuelles, vous pouvez influencer l’endroit où elles s’exécutent dans l’infrastructure sous-jacente. En règle générale, vous prenez des décisions de placement en fonction de vos besoins en matière de fiabilité, de latence et d’isolation. Azure fournit plusieurs options de configuration qui affectent la façon dont vos machines virtuelles sont placées.

  • Région: Vous pouvez sélectionner la région Azure dans laquelle votre machine virtuelle doit s’exécuter. Une région est une zone géographique qui peut contenir plusieurs centres de données, chacun avec un grand nombre d’hôtes.

  • Zone de disponibilité : les zones de disponibilité sont des groupes physiquement distincts de centres de données au sein de chaque région Azure. Dans les régions qui prennent en charge les zones de disponibilité, vous pouvez sélectionner la zone dans laquelle la machine virtuelle s’exécute. Pour plus d’informations, consultez Résilience aux échecs de zone de disponibilité.

  • Groupes à haute disponibilité : Un groupe à haute disponibilité est un regroupement logique de machines virtuelles qui permet à Azure de comprendre comment votre application est conçue pour fournir une redondance et une disponibilité.

    Lorsque vous utilisez des ensembles de disponibilité, Azure distribue un groupe de machines virtuelles entre différents domaines de défaillance. Cette distribution réduit le risque de défaillances matérielles localisées en regroupant les machines virtuelles qui partagent une source d’alimentation commune et un commutateur réseau.

    Les groupes à haute disponibilité peuvent également placer différentes machines virtuelles dans différents domaines de mise à jour, qui contrôle la façon dont la plateforme Azure déploie les mises à jour de la plateforme. En utilisant des domaines de mise à jour, vous pouvez vous assurer que seul un sous-ensemble de vos machines virtuelles est redémarré pour les mises à jour à la fois.

  • Groupes de placement de proximité : Pour les charges de travail qui doivent atteindre la latence la plus faible possible entre les machines virtuelles, vous pouvez utiliser un groupe de placement de proximité pour vous assurer qu’Azure place les machines virtuelles physiquement près les unes des autres. Toutefois, le placement de proximité signifie qu’une panne du centre de données peut affecter toutes les machines virtuelles du groupe. Pour obtenir une fiabilité élevée, vous devrez peut-être approvisionner plusieurs groupes de placement de proximité dans différentes zones de disponibilité.

  • Hôtes dédiés : Vous pouvez utiliser l’hôte dédié Azure pour provisionner votre propre serveur physique qui exécute une ou plusieurs machines virtuelles, par exemple pour des exigences de conformité strictes. Toutefois, lorsque vous approvisionnez un hôte dédié, une panne dans son centre de données peut affecter toutes les machines virtuelles sur cet hôte. Pour obtenir une fiabilité élevée, vous devrez peut-être approvisionner plusieurs hôtes dédiés dans différentes zones de disponibilité.

Si vous créez un ensemble de machines virtuelles qui exécutent des fonctions similaires, envisagez d’utiliser des groupes de machines virtuelles identiques Azure pour créer et gérer les machines virtuelles en tant que groupe. Les ensembles d'échelle fournissent également des options de fiabilité supplémentaires, telles que répartir les machines virtuelles sur plusieurs zones de disponibilité.

Pour plus d’informations sur la disponibilité des machines virtuelles, consultez les options de disponibilité des machines virtuelles.

Résilience aux erreurs temporaires

Les erreurs temporaires sont des défaillances courtes et intermittentes dans les composants. Elles se produisent fréquemment dans un environnement distribué comme le cloud, et font partie intégrante des opérations ordinaires. Les erreurs temporaires se corrigent après une courte période de temps. Il est important que vos applications puissent gérer les erreurs temporaires, généralement en réessayant les requêtes affectées.

Toutes les applications hébergées dans le cloud doivent suivre les instructions de gestion des erreurs temporaires Azure lorsqu’elles communiquent avec toutes les API, bases de données et autres composants hébergés dans le cloud. Pour plus d’informations, consultez Recommandations pour la gestion des erreurs temporaires.

Les applications qui s’exécutent sur vos machines virtuelles doivent implémenter des stratégies de gestion des erreurs appropriées pour s’assurer que les interruptions temporaires du service n’affectent pas votre charge de travail.

Résilience aux échecs de zone de disponibilité

Les zones de disponibilité sont des groupes physiquement distincts de centres de données au sein d’une région Azure. Lorsqu'une zone tombe en panne, les services peuvent basculer vers l'une des zones restantes.

Une machine virtuelle individuelle peut être déployée dans une configuration zonale , ce qui signifie qu’elle est épinglée à une seule zone de disponibilité que vous sélectionnez. Par lui-même, une machine virtuelle zonale n’est pas résiliente aux pannes de zone. Toutefois, vous pouvez créer plusieurs machines virtuelles et les placer dans différentes zones de disponibilité, puis répartir vos applications et données entre les instances de machine virtuelle. Vous pouvez également utiliser des ensembles évolutifs de machines virtuelles pour déployer un ensemble de machines virtuelles sur plusieurs zones de disponibilité.

Si vous ne configurez pas une machine virtuelle pour qu’elle soit zonale, elle est considérée comme nonzonale ou régionale. Les machines virtuelles nonzonales peuvent être placées dans n’importe quelle zone de disponibilité de la région. Si une zone de disponibilité dans la région subit une panne, les machines virtuelles nonzonales peuvent se trouver dans la zone affectée et peuvent rencontrer des temps d’arrêt.

Soutien régional

Les machines virtuelles zonales peuvent être déployées dans n’importe quelle région prenant en charge les zones de disponibilité.

Toutefois, certains types et tailles de machine virtuelle sont disponibles uniquement dans des régions spécifiques ou dans des zones spécifiques au sein d’une région. Pour vérifier quelles régions et zones prennent en charge les types de machines virtuelles dont vous avez besoin, utilisez les ressources suivantes :

Coûts

Il n’existe aucune différence de coût entre une machine virtuelle zonale et nonzonale.

Configurez la prise en charge des zones de disponibilité

Cette section explique comment configurer la prise en charge des zones de disponibilité pour votre instance de machine virtuelle.

Note

Lorsque vous sélectionnez les zones de disponibilité à utiliser, vous sélectionnez en fait la zone de disponibilité logique. Si vous déployez d’autres composants de charge de travail dans un autre abonnement Azure, ils peuvent utiliser un autre numéro de zone de disponibilité logique pour accéder à la même zone de disponibilité physique. Pour plus d’informations, consultez Zones de disponibilité physiques et logiques.

Comportement lorsque toutes les zones sont saines

Cette section décrit ce à quoi s’attendre lorsque les instances de machine virtuelle sont configurées avec la prise en charge des zones de disponibilité et que toutes les zones de disponibilité sont opérationnelles.

  • Routage du trafic entre les zones : Vous êtes responsable du routage du trafic entre les machines virtuelles, y compris les machines virtuelles qui se trouvent dans différentes zones de disponibilité. Les approches courantes incluent Azure Load Balancer et Azure Application Gateway. Pour plus d’informations, consultez les options d’équilibrage de charge.

  • Réplication des données entre les zones : Vous êtes responsable de toute réplication de données qui doit se produire entre les machines virtuelles, y compris entre les machines virtuelles dans différentes zones de disponibilité. Les bases de données et d’autres applications avec état similaires qui s’exécutent sur des machines virtuelles fournissent souvent des fonctionnalités pour répliquer des données.

Comportement lors d’une défaillance de zone

Cette section décrit ce à quoi s’attendre lorsque les instances de machine virtuelle sont configurées avec la prise en charge des zones de disponibilité et qu’il existe une panne dans leurs zones de disponibilité.

  • Détection et réponse : Vous êtes responsable de la détection et de la réponse aux défaillances de zone qui affectent vos machines virtuelles.

  • Notification : utilisez Azure Resource Health pour détecter les défaillances de zone et déclencher des processus de basculement.

  • Demandes actives : Toutes les demandes actives ou tout autre travail qui se produit sur la machine virtuelle pendant l’échec de la zone sont susceptibles d’être arrêtés.

  • Perte de données attendue : Les disques de machine virtuelle zonal peuvent ne pas être disponibles lors d’une défaillance de zone.

    Si vous utilisez des disques de stockage redondant interzone (ZRS) et qu’une panne affecte votre machine virtuelle, vous pouvez forcer le détachement de vos disques ZRS de la machine virtuelle ayant échoué. Cette approche vous permet d’attacher les disques ZRS à une autre machine virtuelle.

  • Temps d’arrêt attendu : Les machines virtuelles restent en panne jusqu’à ce que la zone de disponibilité récupère.

  • Réacheminement du trafic : Vous êtes responsable de la réacheminement du trafic vers d’autres machines virtuelles dans des zones saines.

    Si vous configurez un équilibreur de charge résilient à une zone et qu’il effectue des vérifications d’intégrité, l’équilibreur de charge détecte généralement les machines virtuelles ayant échoué et peut acheminer le trafic vers d’autres instances de machine virtuelle dans des zones saines.

Récupération de la zone

Une fois la zone saine, les machines virtuelles de la zone redémarrent. Vous êtes responsable des procédures de récupération de zone et de la synchronisation des données dont vos charges de travail ont besoin.

Tester les pannes de zone

Vous pouvez utiliser Azure Chaos Studio pour simuler la perte d’une machine virtuelle dans le cadre d’une expérience. Chaos Studio fournit des erreurs intégrées pour les machines virtuelles, notamment la possibilité d’arrêter une machine virtuelle. Vous pouvez utiliser ces fonctionnalités pour simuler des défaillances au niveau de la zone et tester vos processus de basculement.

Solutions multizones personnalisées pour la résilience

Lorsque vous déployez plusieurs machines virtuelles dans différentes zones, vous êtes responsable de la configuration et de la gestion de la réplication, de l’équilibrage de charge, du basculement et des processus de restauration automatique.

Certaines applications fournissent des fonctionnalités intégrées qui peuvent vous aider lorsque vous déployez sur plusieurs machines virtuelles. Par exemple, SQL Server sur des machines virtuelles Azure fournit un ensemble de fonctionnalités pour simplifier vos processus de configuration et de gestion dans les zones de disponibilité.

Vous pouvez envisager d’utiliser la récupération d’urgence de zone à zone Azure Site Recovery lorsque votre application s’exécute dans une seule zone à la fois et que vous n’avez pas besoin d’un basculement quasi instantané entre les zones. La continuité des opérations entre zones de récupération d’urgence présente certaines limitations importantes, donc examinez attentivement vos besoins.

Résilience aux défaillances à l’échelle de la région

Les machines virtuelles sont des ressources localisées dans une seule région. Si la région devient indisponible, votre machine virtuelle n’est pas disponible.

Solutions multirégions personnalisées pour la résilience

Vous pouvez déployer plusieurs machines virtuelles dans différentes régions, mais vous devez implémenter la réplication, l’équilibrage de charge et les processus de basculement.

Site Recovery est un service qui permet la récupération après sinistre par la réplication de machines virtuelles et de leurs données dans une région secondaire. Vous pouvez sélectionner presque n’importe quelle région Azure comme région secondaire, y compris les combinaisons de régions non souhaitées. Pour plus d’informations, consultez l’architecture Azure vers Azure DR.

Certaines applications créent des clusters ou d’autres constructions pour répliquer des données et distribuer le travail sur plusieurs machines virtuelles, notamment dans différentes régions. Ces applications peuvent simplifier la configuration d’une solution multirégion.

Pour obtenir un exemple d’architecture illustrant l’utilisation de machines virtuelles dans plusieurs régions, consultez l’équilibrage de charge multirégion avec Azure Traffic Manager, pare-feu Azure et Application Gateway.

Résilience à la maintenance du service

Azure effectue une maintenance périodique régulière sur des machines virtuelles pour garantir la fiabilité. Il existe plusieurs façons de garantir que vos charges de travail restent opérationnelles pendant les activités de maintenance :

  • Lorsque vous utilisez des groupes à haute disponibilité ou des groupes à grande échelle de machines virtuelles, vous pouvez configurer des domaines de mise à jour. Les domaines de mise à jour aident à distribuer les activités de maintenance entre différentes machines virtuelles à différents moments, de sorte que vos machines virtuelles ne redémarrent pas simultanément.

  • Vous pouvez personnaliser le minutage de l’application de la maintenance à vos machines virtuelles à l’aide du contrôle de maintenance. Vous pouvez utiliser des configurations de maintenance pour les programmer à un moment qui convient à votre charge de travail.

  • Vous pouvez recevoir des notifications concernant les prochaines activités de maintenance.

Pour plus d’informations, consultez la vue d’ensemble des mises à jour invitées et de la maintenance de l’hôte.

Sauvegarde et restauration

Les machines virtuelles prennent en charge la sauvegarde en mode natif via Sauvegarde Azure. Sauvegarde Azure fournit une solution native pour protéger les machines virtuelles en créant et en gérant des sauvegardes, avec une protection cohérente pour l’ensemble de la machine virtuelle, y compris tous les disques attachés. Cette approche est idéale lorsque vous avez besoin d’une sauvegarde coordonnée de plusieurs disques ou sauvegardes prenant en charge les applications. Pour les charges de travail de base de données, envisagez des solutions de sauvegarde spécifiques à l’application qui fournissent une protection cohérente des transactions et des options de récupération plus rapides.

Vous pouvez personnaliser la fréquence de sauvegarde, la durée de rétention et la configuration de stockage en fonction de vos besoins. Pour plus d’informations, consultez Sauvegarde Azure pour machines virtuelles.

La sauvegarde prend également en charge les disques attachés aux machines virtuelles. Pour plus d’informations, consultez Vue d’ensemble de la sauvegarde de disque Azure.

Contrat de niveau de service

Le contrat de niveau de service (SLA) pour les services Azure décrit la disponibilité attendue de chaque service et les conditions que votre solution doit respecter pour atteindre cette attente de disponibilité. Pour plus d’informations, consultez les contrats SLA pour les services en ligne.

Pour les machines virtuelles, le contrat SLA fournit un niveau de disponibilité de base. Le pourcentage de temps d’activité défini dans le contrat SLA augmente lorsque vous avez deux machines virtuelles ou plus et que vous effectuez les actions suivantes :

  • Configurez ces machines virtuelles à déployer sur deux zones de disponibilité ou plus.
  • Configurez ces machines virtuelles à déployer dans un groupe à haute disponibilité.

Pour plus d’informations, consultez les contrats SLA pour les services en ligne.

Étapes suivantes