Share via


Habilitación de la replicación geográfica

En este artículo se describe la replicación de los almacenes de Azure App Configuration. Aprenderá a crear, usar y eliminar una réplica en el almacén de configuración.

Para más información sobre el concepto de replicación geográfica, vea Replicación geográfica en Azure App Configuration.

Prerrequisitos

Creación y enumeración de una réplica

Para crear una réplica del almacén de configuración en el portal, siga estos pasos.

Nota

No se admite la creación de una réplica para un almacén de App Configuration con puntos de conexión privados configurados con IP estática. Si prefiere un punto de conexión privado con configuración de IP estática, las réplicas deben crearse antes de que se agregue cualquier punto de conexión privado a un almacén.

  1. En el almacén de App Configuration, en Configuración, seleccione Replicación geográfica.

  2. En Réplicas, seleccione Crear. Elija la ubicación de la nueva réplica en la lista desplegable y, después, asigne un nombre a la réplica. Este nombre de réplica debe ser único.

    Captura de pantalla del botón Replicación geográfica resaltado y el botón Crear para una réplica.

  3. Seleccione Crear.

  4. Ahora debería ver la nueva réplica enumerada en Réplicas. Compruebe que el estado de la réplica es "Correcto", lo que indica que se ha creado correctamente.

    Captura de pantalla de la lista de réplicas que se ha creado para el almacén de configuración.

Eliminación de una réplica

Para eliminar una réplica en el portal, siga estos pasos.

  1. En el almacén de App Configuration, en Configuración, seleccione Replicación geográfica.

  2. En Réplicas, seleccione ... a la derecha de la réplica que quiera eliminar. Seleccione Eliminar en el menú desplegable.

     Captura de pantalla en la que se muestran los tres puntos a la derecha de la réplica seleccionada y la opción Eliminar.

  3. Compruebe el nombre de la réplica que se va a eliminar y seleccione Aceptar para confirmar.

  4. Una vez que se complete el proceso, compruebe en la lista de réplicas que se ha eliminado la réplica correcta.

Escalado y conmutación por error con réplicas

Cada réplica que cree tiene su punto de conexión dedicado. Si la aplicación reside en varias geolocalizaciones, puede actualizar cada implementación de la aplicación en una ubicación para conectarse a la réplica más cercana a esa ubicación, lo que ayuda a minimizar la latencia de red entre la aplicación y App Configuration. Dado que cada réplica tiene su cuota de solicitudes independiente, esta configuración también ayuda a la escalabilidad de la aplicación mientras crece para convertirse en un servicio distribuido de varias regiones.

Cuando la replicación geográfica está habilitada y una réplica no es accesible, puede permitir que la aplicación conmute por error a otra réplica para mejorar la resistencia. Las bibliotecas de proveedores de App Configuration tienen compatibilidad integrada con la conmutación por error al aceptar varios puntos de conexión de réplica. Puede proporcionar una lista de los puntos de conexión de réplica de mayor a menor preferencia. Cuando el punto de conexión actual no sea accesible, la biblioteca de proveedores conmutará por error a un punto de conexión con menos preferencia, pero, de vez en cuando, intentará conectarse a los puntos de conexión con más preferencia. Cuando un punto de conexión con más preferencia esté disponible, se cambiará a él para futuras solicitudes.

Suponiendo que tiene una aplicación que usa Azure App Configuration, puede actualizarla como en el código de ejemplo siguiente para aprovechar la característica de conmutación por error. Puede proporcionar una lista de puntos de conexión para la autenticación de Microsoft Entra o una lista de cadenas de conexión para la autenticación basada en claves de acceso.

Edite la llamada al método AddAzureAppConfiguration, que a menudo se encuentra en el archivo program.cs de la aplicación.

Conexión con 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
});

Conexión con una cadena de conexión

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
});

Nota

La compatibilidad con la conmutación por error está disponible si usa la versión 6.0.0 o posterior de cualquiera de los siguientes paquetes.

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

La conmutación por error puede producirse si el proveedor de App Configuration cumple las condiciones siguientes.

  • Recibe respuestas con estado de servicio no disponible (código de estado HTTP 500 o superior).
  • Experiencias con problemas de conectividad de red.
  • Las solicitudes se limitan (código de estado HTTP 429).

La conmutación por error no se producirá en caso de errores del cliente, como los errores de autenticación.

Detección automática de réplicas

Puede especificar uno o varios puntos de conexión de un almacén de App Configuration habilitado para replicación geográfica al que desea que la aplicación se conecte o conmute por error. Sin embargo, si ninguno de estos puntos de conexión es accesible, las bibliotecas del proveedor de App Configuration pueden detectar automáticamente las réplicas adicionales e intentar conectarse a ellos. Esta característica le permite beneficiarse de la replicación geográfica sin tener que cambiar el código ni volver a implementar la aplicación. Esto significa que puede habilitar la replicación geográfica o agregar réplicas adicionales incluso después de implementar la aplicación.

Las réplicas detectadas automáticamente se seleccionarán y usarán aleatoriamente. Si tiene una preferencia para réplicas específicas, puede especificar explícitamente sus puntos de conexión. Esta característica está habilitada de forma predeterminada, pero puede hacer referencia al código de ejemplo siguiente para deshabilitarla.

Edite la llamada al método AddAzureAppConfiguration, que a menudo se encuentra en el archivo program.cs de la aplicación.

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

    // Other changes to options
});

Nota:

La compatibilidad con la detección automática de réplicas está disponible si usa la versión 7.1.0 o posterior de cualquiera de los siguientes paquetes.

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

Pasos siguientes