Fiabilité dans Azure Managed Grafana

Azure Managed Grafana fournit des espaces de travail Grafana hébergés pour créer des tableaux de bord et des visualisations. Microsoft gère toutes les infrastructures sous-jacentes, notamment les mises à jour de calcul, de mise en réseau, de stockage et de service.

Lorsque vous utilisez Azure, reliability est une responsabilité partagée. Microsoft offre une gamme de fonctionnalités permettant de 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 Azure Managed Grafana résilient à diverses pannes et problèmes potentiels, notamment les pannes temporaires, les pannes de zone de disponibilité et les pannes de région. Il décrit également comment sauvegarder et récupérer à partir d’autres types de problèmes et met en évidence des informations clés sur le contrat de niveau de service (SLA) Azure Managed Grafana.

Recommandations de déploiement de production pour la fiabilité

Pour augmenter la fiabilité des déploiements de production à l’aide de Azure Managed Grafana, nous vous recommandons d’effectuer les actions suivantes :

  • Activez la redondance de zone lorsque vous créez un espace de travail pour assurer la résilience aux défaillances de zone de disponibilité.

  • Store tableaux de bord et autres ressources Grafana en tant que code, par exemple en les exportant à partir de l’API Grafana ou de l’interface CLI et en les stockant dans un référentiel de contrôle de code source comme GitHub. Utilisez des pipelines d’intégration continue et de livraison continue (CI/CD) pour déployer des tableaux de bord sur Azure Managed Grafana. Cette approche prend en charge les scénarios de récupération. Il permet également le déploiement sur plusieurs instances Grafana, y compris les instances dans différentes régions Azure si nécessaire.

Vue d’ensemble de l’architecture de fiabilité

Cette section décrit certains des aspects importants du fonctionnement du service qui sont les plus pertinents du point de vue de la fiabilité. La section présente l’architecture logique, qui inclut certaines des ressources et fonctionnalités que vous déployez et utilisez. Il traite également de l’architecture physique, qui fournit des détails sur le fonctionnement du service sous les couvertures.

Architecture logique

La ressource Azure principale que vous déployez est un workspace. Après avoir déployé votre espace de travail, vous utilisez le point de terminaison Grafana de l’espace de travail pour configurer et interagir avec les sources de données, les tableaux de bord, les visualisations et d’autres ressources Grafana.

Architecture physique

Lorsque vous créez un espace de travail, en interne, la plateforme Azure provisionne les composants sous-jacents suivants :

  • Serveurs Grafana : Machines virtuelles dédiées qui exécutent l’application Grafana. Par défaut, deux serveurs sont provisionnés pour la haute disponibilité et la redondance. Microsoft gère entièrement ces serveurs. Vous ne les voyez pas dans votre abonnement, vous ne pouvez pas y accéder et vous n’êtes pas responsable de la mise à jour corrective, de la mise à l’échelle ou de la maintenance.

  • Équilibreur de charge : Équilibreur de charge réseau qui distribue les requêtes de navigateur entrantes sur les serveurs Grafana. L’équilibreur de charge surveille l’intégrité du serveur et achemine automatiquement le trafic hors des serveurs défectueux.

  • Backend database : Une base de données Azure Database pour PostgreSQL qui stocke la configuration de l’espace de travail et d’autres données persistantes. Tous les serveurs Grafana dans l’espace de travail partagent cette base de données. Pour plus d’informations sur la résilience de base de données, consultez Reliability in Azure Database pour PostgreSQL.

Vous ne voyez pas ou ne gérez pas ces composants. Microsoft déploie et les gère en votre nom.

L’équilibreur de charge effectue le suivi des serveurs Grafana disponibles. Dans une configuration à double serveur, si un serveur devient défectueux, l’équilibreur de charge envoie toutes les requêtes au serveur restant. Ce serveur récupère les sessions de navigateur que le serveur ayant échoué a précédemment géré, en fonction des informations contenues dans la base de données partagée. Pendant ce temps, Azure Managed Grafana répare ou remplace le serveur défectueux.

Diagram montrant un espace de travail Azure Managed Grafana constitué de deux machines virtuelles et d’un équilibreur de charge déployé par le service.

Diagramme d’architecture montrant un espace de travail Azure Managed Grafana derrière une passerelle partagée. Un équilibreur de charge distribue le trafic à deux serveurs Grafana qui se connectent à une base de données partagée.

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 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.

Vous pouvez créer des applications clientes pour interagir avec votre espace de travail Grafana via l’API Grafana. Assurez-vous que ces applications suivent les directives de nouvelle tentative d'Azure pour les demandes ayant échoué.

Résilience aux échecs de zone de disponibilité

Zones d’indisponibilité 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.

Azure Managed Grafana espaces de travail supportent la redondance par zone dans les régions Azure qui le permettent. Lorsque la redondance de zone est activée, les serveurs Grafana de l’espace de travail sont répartis entre plusieurs zones de disponibilité. Microsoft sélectionne les zones que votre espace de travail utilise. D’autres ressources, telles que l’équilibreur de charge réseau, la base de données et la passerelle partagée, sont également configurées pour utiliser plusieurs zones de disponibilité.

Diagram montrant un espace de travail Azure Managed Grafana avec deux instances, chacune dans une zone de disponibilité distincte et un équilibreur de charge redondant interzone.

Diagramme d’architecture montrant un espace de travail Azure Managed Grafana déployé sur trois zones de disponibilité. Un équilibreur de charge achemine le trafic vers les serveurs Grafana dans la zone 1 et 2 et une base de données partagée qui s’étend sur toutes les zones.

Si vous n’activez pas la redondance de zone, l’espace de travail est non zonal ou régional, ce qui signifie que les serveurs et autres composants peuvent être placés dans n'importe quelle zone de disponibilité au sein de la région ou dans une même zone spécifique. Si une zone de disponibilité dans la région a un problème, votre espace de travail peut rencontrer des temps d’arrêt.

Spécifications

Prise en charge de la région : La prise en charge de la redondance de zone est disponible dans les régions suivantes.

Americas Europe Asie-Pacifique
USA Est Europe Nord Australie Est
États-Unis - partie centrale méridionale Asie de l’Est
Ouest des États-Unis 3

Coûts

La redondance de zone ajoute un coût supplémentaire. Pour plus d’informations, consultez Azure Managed Grafana tarification.

Configurez la prise en charge des zones de disponibilité

  • Créer un nouvel espace de travail avec les zones de disponibilité activées : Activer la redondance de zone lors de la création de l’espace de travail via le portail Azure, les modèles Azure CLI, Bicep ou Azure Resource Manager (modèles ARM).

    Pour plus d’informations, consultez Activer la redondance de zone dans Azure Managed Grafana.

  • Configurez la redondance de zone sur un espace de travail existant : Vous ne pouvez pas activer ou désactiver la redondance de zone sur un espace de travail existant. Au lieu de cela, vous devez créer un espace de travail qui utilise votre configuration de redondance de zone souhaitée, migrer vos tableaux de bord et votre configuration, puis supprimer l’espace de travail existant.

Comportement lorsque toutes les zones sont saines

Cette section décrit ce qu’il faut attendre lorsque vous configurez un espace de travail de manière à ce qu’il soit redondant interzone et que toutes les zones de disponibilité sont opérationnelles.

  • Routage du trafic entre les zones : L’équilibreur de charge redondant interzone distribue automatiquement les requêtes entrantes sur les serveurs Grafana. Les deux serveurs peuvent traiter le trafic.

  • Réplication des données entre les zones : Les modifications apportées aux données de l’espace de travail sont répliquées de manière synchrone dans plusieurs zones de disponibilité. Azure Database pour PostgreSQL effectue la réplication des données. Pour plus d’informations, consultez Reliability in Azure Database pour PostgreSQL. Azure Managed Grafana n'implémente pas une logique de réplication personnalisée supplémentaire au-delà de ce que fournit la plateforme de base de données.

Comportement lors d’une défaillance de zone

Cette section décrit ce qu’il faut attendre lorsque vous configurez un espace de travail pour qu’il soit redondant interzone et qu’il existe une panne dans l’une des zones.

  • Detection et response : La plateforme Azure détecte et répond à une défaillance dans une zone de disponibilité. Vous n’avez pas besoin de lancer un basculement de zone.
  • Notification : Microsoft ne vous avertit pas automatiquement lorsqu'une zone est en panne. Toutefois, vous pouvez utiliser Azure Resource Health pour surveiller l’intégrité d’une ressource individuelle et configurer des alertes Resource Health pour vous avertir des problèmes. Vous pouvez également utiliser Azure Service Health pour comprendre l’intégrité globale du service, y compris les défaillances de zone, et vous pouvez configurer des alertes d’intégrité Service Health pour vous avertir des problèmes.
  • Perte de données attendue : Aucune perte de données n’est attendue lors d’une panne de zone de disponibilité.

  • Temps d’arrêt attendu : Votre espace de travail peut rencontrer un petit temps d’arrêt, généralement limité à quelques secondes, tandis que le trafic est redirigé vers des serveurs sains. Assurez-vous que les applications clientes peuvent gérer les erreurs temporaires de manière appropriée pour réduire les effets du temps d’arrêt.

  • Réacheminement du trafic : Le trafic entrant est automatiquement acheminé vers le serveur dans la zone saine. Le service s’exécute avec une capacité réduite pendant la panne dans la zone. Les serveurs de remplacement ne sont pas provisionnés dans des zones saines pendant la panne.

Récupération de la zone

Microsoft gère automatiquement la récupération de zone, notamment la restauration de la capacité du service lorsque la zone affectée devient saine à nouveau.

Tester les pannes de zone

La plateforme Azure gère le routage du trafic, le basculement et la restauration automatique pour les espaces de travail redondants interzone. Cette fonctionnalité est entièrement gérée. Vous n’avez donc pas besoin de lancer ou de valider les processus d’échec de zone de disponibilité.

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

Azure Managed Grafana est un service à région unique. Si la région n’est pas disponible, votre espace de travail n’est pas disponible également.

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

Pour obtenir une résilience aux pannes régionales, vous pouvez déployer plusieurs espaces de travail Grafana dans différentes régions. Dans ce type de solution, vous êtes responsable des opérations suivantes :

  • Réplication des tableaux de bord et de la configuration entre les régions. Par exemple, vous pouvez appliquer une configuration cohérente sur plusieurs espaces de travail à l’aide du contrôle CI/CD et du contrôle de code source.

  • Implémentation du routage et du basculement du trafic au niveau de l’application ou du client.

Sauvegarde et restauration

Azure Managed Grafana ne fournit pas de fonctionnalité de sauvegarde ou de restauration intégrée pour les tableaux de bord ou d'autres entités de plan de données. Pour vous protéger contre la suppression accidentelle ou la corruption :

  • Utilisez l’API Grafana ou l’interface CLI pour exporter des tableaux de bord et d’autres configurations Grafana.

  • Stockez les tableaux de bord exportés dans un référentiel de contrôle de code source, tel que GitHub.

  • Utilisez des pipelines d’automatisation ou CI/CD pour redéployer des tableaux de bord et d’autres configurations Grafana.

Pour la plupart des solutions, vous ne devez pas vous appuyer exclusivement sur les sauvegardes. Utilisez plutôt les autres fonctionnalités décrites dans ce guide pour prendre en charge vos exigences de résilience. Toutefois, les sauvegardes protègent contre certains risques que d’autres approches ne le font pas. Pour plus d’informations, consultez Que sont la redondance, la réplication et la sauvegarde ?.

Résilience à la maintenance du service

Microsoft applique régulièrement les mises à jour de service et effectue d’autres maintenances. La plateforme Azure gère automatiquement ces activités, ce qui garantit que la maintenance est sans accrocs et transparente pour vous. Pendant les opérations de maintenance, vous pouvez observer de brèves interruptions. En règle générale, ces interruptions durent quelques secondes. Assurez-vous que les applications clientes sont configurées pour gérer les erreurs temporaires afin qu’elles soient résilientes aux brèves interruptions.

Contrat de niveau de service

Le contrat de niveau de service (SLA) pour Azure services 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 ALS pour les services en ligne.