Activer la géoréplication

Cet article traite de la réplication des magasins Azure App Configuration. Vous découvrirez comment créer, utiliser et supprimer un réplica dans votre magasin de configuration.

Pour en savoir plus sur le concept de géoréplication, consultez Géoréplication dans Azure App Configuration.

Prérequis

Créer et répertorier un réplica

Pour créer un réplica de votre magasin de configuration dans le portail, suivez les étapes ci-dessous.

Notes

La création d’un réplica pour un magasin App Configuration, dont les points de terminaison privés sont configurés avec une adresse IP statique, n’est pas prise en charge. Si vous préférez un point de terminaison privé avec une configuration IP statique, des réplicas doivent être créés avant l’ajout d’un point de terminaison privé à un magasin.

  1. Dans votre magasin App Configuration, sous Paramètres, sélectionnez Géoréplication.

  2. Sous Réplicas, sélectionnez Créer. Choisissez l’emplacement de votre nouveau réplica dans la liste déroulante, puis affectez le nom du réplica. Ce nom doit être unique.

    Capture d'écran du bouton de géoréplication mis en surbrillance ainsi que du bouton de création d'un réplica.

  3. Sélectionnez Create (Créer).

  4. Vous devez maintenant voir votre nouveau réplica répertorié sous Réplicas. Vérifiez que l’état du réplica est « Réussi », ce qui indique qu’il a été créé avec succès.

    Capture d'écran de la liste des réplicas qui ont été créées pour le magasin de configuration.

Supprimer un réplica

Pour supprimer un réplica dans le portail, suivez les étapes ci-dessous.

  1. Dans votre magasin App Configuration, sous Paramètres, sélectionnez Géoréplication.

  2. Sous Réplicas, sélectionnez le ... à droite du réplica que vous souhaitez supprimer. Sélectionnez Supprimer dans le menu déroulant.

     Capture d'écran montrant les trois points à droite du réplica sélectionné, vous montrant l'option de suppression.

  3. Vérifiez le nom du réplica à supprimer et sélectionnez OK pour confirmer.

  4. Une fois le processus terminé, vérifiez la liste des réplicas que le réplica correct a été supprimé.

Mettre à l’échelle et effectuer un basculement avec des réplicas

Chaque réplica que vous créez a son point de terminaison dédié. Si votre application réside dans plusieurs emplacements géographiques, vous pouvez mettre à jour chaque déploiement de votre application dans un emplacement pour vous connecter au réplica le plus proche de cet emplacement, ce qui permet de réduire la latence réseau entre votre application et App Configuration. Étant donné que chaque réplica dispose de son quota de requêtes distinct, cette configuration favorise également la scalabilité de votre application pendant qu’elle s’étend à un service distribué multirégion.

Lorsque la géoréplication est activée, et si un réplica n’est pas accessible, vous pouvez laisser votre application basculer vers un autre réplica pour améliorer la résilience. Les bibliothèques de fournisseurs App Configuration offrent une prise en charge intégrée du basculement en acceptant plusieurs points de terminaison de réplica. Vous pouvez fournir une liste de vos points de terminaison de réplica, classés par ordre de préférence. Lorsque le point de terminaison actuel n’est pas accessible, la bibliothèque de fournisseurs bascule vers un point de terminaison moins préféré, mais elle tentera de temps en temps de se connecter aux points de terminaison placés plus haut dans la liste de préférence. Lorsqu’un point de terminaison plus préféré devient disponible, elle basculera vers celui-ci pour les requêtes ultérieures.

En supposant que vous disposez d’une application qui utilise Azure App Configuration, vous pouvez la mettre à jour en tant qu’exemple de code suivant pour tirer parti de la fonctionnalité de basculement. Vous pouvez fournir une liste de points de terminaison pour l’authentification Microsoft Entra ou une liste de chaînes de connexion pour une authentification basée sur une clé d’accès.

Modifiez l’appel à la méthode AddAzureAppConfiguration, qui se trouve souvent dans le fichier program.cs de votre application.

Se connecter avec Microsoft Entra ID

configurationBuilder.AddAzureAppConfiguration(options =>
{
    // Provide an ordered list of replica endpoints
    var endpoints = new Uri[] {
        new Uri("<first-replica-endpoint>"),
        new Uri("<second-replica-endpoint>") };
    
    // Connect to replica endpoints using Microsoft Entra authentication
    options.Connect(endpoints, new DefaultAzureCredential());

    // Other changes to options
});

Se connecter avec une chaîne de connexion

configurationBuilder.AddAzureAppConfiguration(options =>
{
    // Provide an ordered list of replica connection strings
    var connectionStrings = new string[] {
        Environment.GetEnvironmentVariable("FIRST_REPLICA_CONNECTION_STRING"),
        Environment.GetEnvironmentVariable("SECOND_REPLICA_CONNECTION_STRING") };
    
    // Connect to replica endpoints using connection strings
    options.Connect(connectionStrings);

    // Other changes to options
});

Notes

La prise en charge du basculement est disponible si vous utilisez la version 6.0.0 ou ultérieure de l’un des packages suivants.

  • Microsoft.Extensions.Configuration.AzureAppConfiguration
  • Microsoft.Azure.AppConfiguration.AspNetCore
  • Microsoft.Azure.AppConfiguration.Functions.Worker

Le basculement peut se produire si le fournisseur App Configuration respecte les conditions suivantes.

  • Réception de réponses avec l’état Service non disponible (code d’état HTTP 500 ou plus)
  • Problèmes de connectivité réseau
  • Les requêtes sont limitées (code d’état HTTP 429)

Le basculement ne se produit pas pour les erreurs du client telles que les échecs d’authentification.

Détection automatique de réplicas

Vous pouvez spécifier un ou plusieurs points de terminaison d’un magasin App Configuration avec géoréplication auquel vous souhaitez que votre application se connecte ou vers lequel elle doit basculer. Toutefois, si aucun de ces points de terminaison n’est accessible, les bibliothèques de fournisseurs App Configuration peuvent détecter automatiquement les réplicas supplémentaires et tenter de s’y connecter. Cette fonctionnalité vous permet de bénéficier de la géoréplication sans modifier votre code ou redéployer votre application. Cela signifie que vous pouvez activer la géoréplication ou ajouter des réplicas supplémentaires même après le déploiement de votre application.

Les réplicas détectés automatiquement seront sélectionnés et utilisés de manière aléatoire. Si vous avez une préférence pour des réplicas spécifiques, vous pouvez en spécifier explicitement les points de terminaison. Cette fonctionnalité est activée par défaut, mais vous pouvez faire référence à l’exemple de code suivant pour la désactiver.

Modifiez l’appel à la méthode AddAzureAppConfiguration, qui se trouve souvent dans le fichier program.cs de votre application.

configurationBuilder.AddAzureAppConfiguration(options =>
{
    // Disable automatic replica discovery
    options.ReplicaDiscoveryEnabled = false;

    // Other changes to options
});

Remarque

La prise en charge de la découverte automatique de réplicas est disponible si vous utilisez la version 7.1.0 ou ultérieure d’un des packages suivants.

  • Microsoft.Extensions.Configuration.AzureAppConfiguration
  • Microsoft.Azure.AppConfiguration.AspNetCore
  • Microsoft.Azure.AppConfiguration.Functions.Worker

Étapes suivantes