Créer des services de données résilients

Effectué

Votre organisation a plusieurs charges de travail réparties dans différents environnements. Toutes les charges de travail s’appuient sur des données conservées de manière sécurisée et en temps voulu. Vous pouvez prendre diverses mesures pour obtenir la résilience de vos données.

Dans cette unité, vous découvrez comment les groupes de disponibilité Always On peuvent répliquer vos données. Vous voyez comment les sauvegardes automatisées et le basculement automatique dans Azure SQL Database permettent de sécuriser les données. Vous apprenez également à utiliser la fonctionnalité de géoréplication Azure Cosmos DB pour répliquer facilement les données dans d’autres régions et permettre leur accès en lecture et en écriture.

Répliquer des bases de données avec les groupes de disponibilité Always On

Les groupes de disponibilité Always On vous aident à obtenir une haute disponibilité pour les bases de données SQL Server qui s’exécutent sur des machines virtuelles.

Vous pouvez stocker des groupes de bases de données spécifiés dans des réplicas de disponibilité :

  • Votre réplica principal contient les bases de données primaires.
  • Votre réplica secondaire contient des copies secondaires synchronisées de vos bases de données primaires.

En cas de défaillance, le réplica secondaire est la cible de basculement. Votre réplica principal est accessible en lecture et en écriture. Les données sont synchronisées entre la base de données primaire et la base de données secondaire qui lui est associée.

Vous pouvez également définir des réplicas secondaires pour qu’ils soient accessibles en lecture. De cette façon, les clients peuvent accéder aux données de plusieurs bases de données et l’augmentation de la demande est répartie sur plusieurs réplicas.

Les groupes de disponibilité Always On s’exécutent sur un cluster de basculement Windows Server qui se compose d’un groupe de machines fonctionnant à l’unisson. Cette architecture permet une haute disponibilité pour les charges de travail qui s’exécutent sur ces machines. Avec les groupes de disponibilité Always On, chaque nœud (machine) de votre cluster héberge un réplica, principal ou secondaire. Chaque réplica contient un groupe de bases de données.

Vous pouvez configurer des groupes de disponibilité Always On dans Azure en créant deux groupes à haute disponibilité : un pour les nœuds de cluster de basculement Windows Server et l’autre pour les contrôleurs de domaine.

Diagramme montrant un exemple de groupes à haute disponibilité.

Le cluster de basculement Windows Server doit contenir au moins trois machines. Il doit y avoir une machine SQL Server pour le réplica principal et une autre pour le réplica secondaire dans le cluster. Un troisième serveur doit servir de témoin de partage de fichiers, ou vous pouvez utiliser un partage de fichiers Azure comme témoin.

Basculement pour Azure SQL Database

Vous pouvez utiliser des groupes de basculement automatique SQL Database pour configurer le basculement et la réplication de groupes de bases de données sur un serveur SQL Database. Vous pouvez créer des stratégies définies qui peuvent effectuer des basculements en fonction de vos besoins. Si nécessaire, vous pouvez aussi déclencher les basculements manuellement. SQL Database peut basculer automatiquement vos bases de données sur un serveur secondaire dans une région secondaire en cas de défaillance.

Les bases de données secondaires de basculement automatique SQL Database peuvent être utilisées comme des bases de données accessibles en lecture. Vous pouvez utiliser ces bases de données secondaires pour offrir un accès en lecture aux données à tous les clients connectés et répartir l’utilisation et la demande entre les bases de données primaires et secondaires.

Si vous utilisez des stratégies de basculement automatique et qu’une panne survient sur au moins une base de données de votre groupe de bases de données primaires, un basculement automatique est déclenché vers les bases de données secondaires. Vos points de terminaison restent les mêmes lors du basculement. Quand le problème à l’origine de la défaillance a été résolu et que vous êtes prêt, vous pouvez effectuer une restauration automatique dans votre emplacement d’origine. Vous pouvez basculer manuellement vos groupes vers leur emplacement d’origine.

Les bases de données d’un serveur de base de données peuvent être ajoutées au même groupe de basculement automatique. Vous pouvez également placer toutes les bases de données dans un pool élastique au sein d’un même groupe de basculement. Lorsque les bases de données primaires font partie d’un pool élastique, vos bases de données secondaires sont également provisionnées dans un pool élastique. Ce pool secondaire porte le même nom que le pool élastique primaire.

Sauvegardes automatisées avec Azure SQL Database

Azure SQL Database peut faire des sauvegardes de vos bases de données, qu’il stocke entre 7 et 35 jours. SQL Database utilise le stockage géoredondant pour stocker les sauvegardes et fournit un accès en lecture à vos données dans une autre région. Vos bases de données sont sécurisées, même en cas de problème dans un centre de données.

Vous pouvez allonger la durée de conservation des données sauvegardées à jusqu’à 10 ans en établissant des stratégies de conservation des données à long terme pour des bases de données uniques ou des pools élastiques. Toutes les sauvegardes de base de données dans SQL Database sont chiffrées au repos. Toutes les bases de données SQL que vous créez ont le chiffrement transparent des données activé par défaut.

SQL Database effectue automatiquement les sauvegardes en arrière-plan. Il crée des sauvegardes de vos bases de données à différents intervalles, en fonction du type de sauvegarde. Par exemple, il crée les types de sauvegarde suivants :

  • Des sauvegardes des journaux de transactions à un intervalle de 5 à 10 minutes.
  • Des sauvegardes complètes de vos bases de données chaque semaine. La première sauvegarde complète a lieu dès que votre base de données est créée. Le temps nécessaire à SQL Database pour effectuer une sauvegarde complète dépend de la taille de votre base de données.
  • Sauvegardes différentielles toutes les 12 heures pour toutes les données qui ont été modifiées depuis la dernière sauvegarde complète.

SQL Database conserve les sauvegardes dans des blobs de stockage qui fournissent un accès en lecture. Il copie ensuite ces sauvegardes dans un centre de données jumelé.

Les bases de données peuvent être restaurées dans une version sauvegardée. Si vous avez configuré la conservation à long terme, cette sauvegarde peut être disponibles pendant 10 ans maximum. Vous pouvez restaurer les bases de données supprimées jusqu’au moment précédant leur suppression et jusqu’à la date limite de conservation définie dans votre stratégie.

SQL Database peut restaurer des bases de données dans une autre région géographique. Ce processus s’effectue par le biais de la géorestauration, qui permet de récupérer des bases de données d’une région à une autre en cas de problème affectant une région entière.

Effectuer une géoréplication avec Azure Cosmos DB

Azure Cosmos DB est un service de base de données multimodèle à faible latence, qui vous permet de distribuer des données à l’échelle mondiale, et d’effectuer une mise à l’échelle de manière élastique et rapide.

Dans Azure Cosmos DB, toutes les données sont répliquées de façon transparente dans les régions que vous avez définies pour votre compte Azure Cosmos DB. Azure Cosmos DB enregistre les données dans les conteneurs qui composent votre base de données, et tous vos conteneurs sont partitionnés.

Toutes vos partitions sont répliquées dans chacune des régions. Dans chaque région, vos partitions sont copiées avant que chaque copie ne soit distribuée entre les domaines d’erreur.

Vos données sont répliquées au moins quatre fois. Vous pouvez configurer un compte Azure Cosmos DB et configurer votre base de données Azure Cosmos DB pour qu’elle soit distribuée dans cinq régions. Comme vous configurez cette base de données pour cinq régions, Azure Cosmos DB garantit que vous avez au moins 4 x 5 copies de toutes vos données.

Vous devez configurer votre base de données Azure Cosmos DB pour qu’elle s’étende sur au moins deux régions. Plus vous aurez de régions, plus vos données seront résilientes. Vous devez également définir explicitement votre base de données Azure Cosmos DB pour qu’elle ait plusieurs régions d’écriture, afin de pouvoir effectuer des opérations de lecture et d’écriture à partir de toutes vos régions.

Vous pouvez également configurer la redondance de zone pour certaines régions. Avec la redondance de zone, Azure Cosmos DB place des répliques de données à travers plusieurs zones de disponibilité dans n’importe quelle région, pour une résilience supplémentaire.

Vérifiez vos connaissances

1.

Votre organisation doit garantir qu’aucune donnée de base de données SQL transactionnelle ne sera perdue. Toutes les données de base de données SQL doivent toujours être disponibles et accessibles en lecture dans une autre région à des fins de redondance et de conformité. Comment concevoir ce type de résilience ?

2.

Quels sont les avantages de déplacer vos charges de travail de données vers Azure Cosmos DB maintenant que votre magasin en ligne couvre plusieurs régions ?