Włączanie replikacji geograficznej

W tym artykule opisano replikację magazynów aplikacja systemu Azure Configuration. Dowiesz się, jak tworzyć, używać i usuwać replikę w magazynie konfiguracji.

Aby dowiedzieć się więcej na temat koncepcji replikacji geograficznej, zobacz Replikacja geograficzna w konfiguracji aplikacja systemu Azure.

Wymagania wstępne

Tworzenie i wyświetlanie listy replik

Aby utworzyć replikę magazynu konfiguracji w portalu, wykonaj poniższe kroki.

Uwaga

Tworzenie repliki magazynu usługi App Configuration z prywatnymi punktami końcowymi skonfigurowanymi przy użyciu statycznego adresu IP nie jest obsługiwane. Jeśli wolisz prywatny punkt końcowy z konfiguracją statycznego adresu IP, należy utworzyć repliki przed dodaniu dowolnego prywatnego punktu końcowego do magazynu.

  1. W magazynie App Configuration w obszarze Ustawienia wybierz pozycję Replikacja geograficzna.

  2. W obszarze Repliki wybierz pozycję Utwórz. Wybierz lokalizację nowej repliki na liście rozwijanej, a następnie przypisz replikę nazwę. Ta nazwa repliki musi być unikatowa.

    Zrzut ekranu przedstawiający wyróżniony przycisk Replikacja geograficzna oraz przycisk tworzenia repliki.

  3. Wybierz pozycję Utwórz.

  4. Powinna zostać wyświetlona nowa replika wyświetlana w obszarze Repliki. Sprawdź, czy stan repliki to "Powodzenie", co oznacza, że została utworzona pomyślnie.

    Zrzut ekranu przedstawiający listę replik utworzonych dla magazynu konfiguracji.

Usuwanie repliki

Aby usunąć replikę w portalu, wykonaj poniższe kroki.

  1. W magazynie App Configuration w obszarze Ustawienia wybierz pozycję Replikacja geograficzna.

  2. W obszarze Repliki wybierz ikonę ... z prawej strony repliki, którą chcesz usunąć. Wybierz pozycję Usuń z listy rozwijanej.

     Zrzut ekranu przedstawiający trzy kropki po prawej stronie wybranej repliki z wyświetloną opcją usuwania.

  3. Sprawdź nazwę repliki, która ma zostać usunięta, i wybierz przycisk OK , aby potwierdzić.

  4. Po zakończeniu procesu sprawdź listę replik, które zostały usunięte z odpowiedniej repliki.

Skalowanie i przechodzenie w tryb failover przy użyciu replik

Każda utworzona replika ma dedykowany punkt końcowy. Jeśli aplikacja znajduje się w wielu lokalizacjach geograficznych, możesz zaktualizować każde wdrożenie aplikacji w lokalizacji, aby połączyć się z repliką bliżej tej lokalizacji, co pomaga zminimalizować opóźnienie sieci między aplikacją a usługą App Configuration. Ponieważ każda replika ma swój oddzielny limit przydziału żądań, ta konfiguracja ułatwia również skalowalność aplikacji, gdy rośnie do usługi rozproszonej w wielu regionach.

Po włączeniu replikacji geograficznej i niedostępności jednej repliki możesz zezwolić aplikacji na przejście w tryb failover do innej repliki w celu zwiększenia odporności. Biblioteki dostawcy usługi App Configuration mają wbudowaną obsługę trybu failover przez akceptowanie wielu punktów końcowych repliki. Listę punktów końcowych repliki można podać w kolejności najbardziej preferowanego punktu końcowego. Gdy bieżący punkt końcowy nie jest dostępny, biblioteka dostawcy przejdzie w tryb failover do mniej preferowanego punktu końcowego, ale spróbuje nawiązać połączenie z bardziej preferowanymi punktami końcowymi od czasu do czasu. Gdy bardziej preferowany punkt końcowy stanie się dostępny, przełączy się do niego na potrzeby przyszłych żądań.

Zakładając, że masz aplikację korzystającą z aplikacja systemu Azure Configuration, możesz zaktualizować ją jako poniższy przykładowy kod, aby skorzystać z funkcji trybu failover. Możesz podać listę punktów końcowych uwierzytelniania firmy Microsoft Entra lub listę parametry połączenia na potrzeby uwierzytelniania opartego na kluczach dostępu.

Zmodyfikuj wywołanie AddAzureAppConfiguration metody , która jest często znajdowana w program.cs pliku aplikacji.

Połączenie za pomocą identyfikatora Entra firmy Microsoft

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

Połączenie z ciągiem Połączenie ion

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

Uwaga

Obsługa trybu failover jest dostępna, jeśli używasz wersji 6.0.0 lub nowszej dowolnego z następujących pakietów.

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

Przejście w tryb failover może wystąpić, jeśli dostawca usługi App Configuration przestrzega następujących warunków.

  • Odbiera odpowiedzi ze stanem niedostępności usługi (kod stanu HTTP 500 lub nowszy).
  • Doświadczenia z problemami z łącznością sieciową.
  • Żądania są ograniczane (kod stanu HTTP 429).

Tryb failover nie będzie występować w przypadku błędów klienta, takich jak błędy uwierzytelniania.

Automatyczne odnajdywanie replik

Możesz określić jeden lub więcej punktów końcowych magazynu konfiguracji aplikacji z włączoną replikacją geograficzną, z którym aplikacja ma nawiązać połączenie lub przejść w tryb failover. Jeśli jednak żaden z tych punktów końcowych nie jest dostępny, biblioteki dostawcy usługi App Configuration mogą automatycznie odnaleźć wszelkie dodatkowe repliki i spróbować nawiązać z nimi połączenie. Ta funkcja umożliwia korzystanie z replikacji geograficznej bez konieczności zmiany kodu lub ponownego wdrażania aplikacji. Oznacza to, że można włączyć replikację geograficzną lub dodać dodatkowe repliki nawet po wdrożeniu aplikacji.

Automatycznie odnalezione repliki zostaną wybrane i będą używane losowo. Jeśli masz preferencje dotyczące określonych replik, możesz jawnie określić ich punkty końcowe. Ta funkcja jest domyślnie włączona, ale możesz odwołać się do następującego przykładowego kodu, aby ją wyłączyć.

Zmodyfikuj wywołanie AddAzureAppConfiguration metody , która jest często znajdowana w program.cs pliku aplikacji.

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

    // Other changes to options
});

Uwaga

Obsługa automatycznego odnajdywania replik jest dostępna, jeśli używasz wersji 7.1.0 lub nowszej dowolnego z następujących pakietów.

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

Następne kroki