Konfigurieren der aktiven Georeplikation für Azure Cache for Redis-Enterprise-Instanzen

In diesem Artikel erfahren Sie, wie Sie einen Cache mit aktiver Georeplikation über das Azure-Portal konfigurieren.

Die aktive Georeplikation gruppiert bis zu fünf Azure Cache for Redis-Enterprise-Instanzen in einem einzelnen Cache, der sich über mehrere Azure-Regionen erstreckt. Alle Instanzen fungieren als lokaler primärer Cache. Eine Anwendung entscheidet, welche Instanz bzw. Instanzen für Lese- und Schreibanforderungen verwendet werden sollen.

Hinweis

Die Datenübertragung zwischen Azure-Regionen wird mit den Standardbandbreitensätzen abgerechnet.

Umfang der Verfügbarkeit

Tarif Basic, Standard Premium Enterprise, Enterprise Flash
Verfügbar Nein Nr. Ja

Der Premium-Tarif von Azure Cache for Redis bietet eine Version der Georeplikation, die als passive Georeplikation bezeichnet wird. Passive Georeplikation bietet eine Aktiv/Passiv-Konfiguration.

Voraussetzungen für die aktive Georeplikation

Bei der Verwendung der aktiven Georeplikation gibt es einige Einschränkungen:

  • Nur die Module RediSearch und RedisJSON werden unterstützt.
  • Auf der Ebene Enterprise Flash kann nur die Entfernungsrichtlinie Keine Entfernung verwendet werden. Alle Entfernungsrichtlinien werden auf der Enterprise-Ebene unterstützt.
  • Datenpersistenz wird nicht unterstützt, da die aktive Georeplikation eine hervorragende Erfahrung bietet.
  • Sie können einer Georeplikationsgruppe keinen vorhandenen Cache (d. h. keinen Cache, der ausgeführt wird) hinzufügen. Sie können nur einen Cache zu einer Georeplikationsgruppe hinzufügen, wenn Sie den Cache erstellen.
  • Alle Caches innerhalb einer Georeplikationsgruppe müssen dieselbe Konfiguration aufweisen. Beispielsweise müssen alle Caches dieselbe SKU, Kapazität, Entfernungsrichtlinie, Clusterrichtlinie, TLS-Einstellung und dieselben Module aufweisen.
  • Sie können die Redis-Befehle FLUSHALL und FLUSHDB nicht verwenden, wenn Sie die aktive Georeplikation verwenden. Durch das Verbieten der Befehle wird das unbeabsichtigte Löschen von Daten verhindert. Verwenden Sie stattdessen den Vorgang zum Leeren der Steuerungsebene.

Erstellen von oder Beitreten zu einer aktiven Georeplikationsgruppe

  1. Wenn Sie eine neue Azure Cache for Redis-Ressource erstellen, wählen Sie die Registerkarte Erweitert aus. Füllen Sie den ersten Teil des Formulars aus, einschließlich der Richtlinie für das Clustering. Weitere Informationen zum Auswählen eines Werts für Clusterrichtlinie finden Sie unter Clusterrichtlinie.

  2. Wählen Sie Konfigurieren aus, um die aktive Georeplikation einzurichten.

    Screenshot of advanced tab of create new Redis cache page.

  3. Erstellen Sie eine neue Replikationsgruppe für eine erste Cache-Instanz, oder wählen Sie eine vorhandene Replikationsgruppe aus der Liste aus.

    Screenshot showing replication groups.

  4. Wählen Sie Konfigurieren aus, um den Vorgang abzuschließen.

  5. Warten Sie, bis der erste Cache erfolgreich erstellt wurde. Nach Abschluss des Vorgangs wird die Einstellung Aktive Georeplikation als Konfiguriert angezeigt. Wiederholen Sie die obigen Schritte für jede Cache-Instanz in der Georeplikationsgruppe.

    Screenshot showing active geo-replication is configured.

Entfernen aus einer aktiven Georeplikationsgruppe

Löschen Sie einfach die Instanz, um eine Cache-Instanz aus einer aktiven Georeplikationsgruppe zu entfernen. Die verbleibenden Instanzen konfigurieren sich dann automatisch selbst neu.

Falls einer der Caches in Ihrer Replikationsgruppe aufgrund eines Ausfalls der Region nicht verfügbar ist, können Sie das Entfernen des nicht verfügbaren Cache aus der Replikationsgruppe erzwingen.

Entfernen Sie den nicht verfügbaren Cache, da die verbleibenden Caches in der Replikationsgruppe damit beginnen, die Metadaten zu speichern, die nicht für den nicht verfügbaren Cache freigegeben wurden. In diesem Fall kann es sein, dass für die verfügbaren Caches in Ihrer Replikationsgruppe nicht genügend Arbeitsspeicher verfügbar ist.

  1. Wechseln Sie zum Azure-Portal, und wählen Sie einen der Caches in der Replikationsgruppe aus, der noch verfügbar ist.

  2. Wählen Sie im Menü „Ressource“ auf der linken Seite die Option Aktive Georeplikation aus, um die Einstellungen im Arbeitsbereich anzuzeigen.

    Screenshot of active geo-replication group.

  3. Wählen Sie den Cache aus, für den Sie das Aufheben der Verknüpfung erzwingen müssen, indem Sie das Kontrollkästchen aktivieren.

  4. Wählen Sie Aufheben der Verknüpfung erzwingen und dann OK aus, um dies zu bestätigen.

    Screenshot of unlinking in active geo-replication.

  5. Nachdem die Verfügbarkeit der betroffenen Region wiederhergestellt wurde, müssen Sie den betroffenen Cache löschen und neu erstellen, um ihn ihrer Replikationsgruppe wieder hinzuzufügen.

Einrichten der aktiven Georeplikation mithilfe der Azure CLI oder PowerShell

Azure CLI

Verwenden Sie die Azure CLI zum Erstellen eines neuen Caches und einer neuen Georeplikationsgruppe oder zum Hinzufügen eines neuen Caches zu einer vorhandenen Georeplikationsgruppe. Weitere Informationen finden Sie unter az redisenterprise create.

Erstellen einer neuen Enterprise-Instanz in einer neuen Georeplikationsgruppe mit Azure CLI

In diesem Beispiel wird eine neue Azure Cache for Redis Enterprise E10-Cache-Instanz namens Cache1 in der Region „USA, Osten“ erstellt. Anschließend wird der Cache zu einer neuen aktiven Georeplikationsgruppe namens replicationGroup hinzugefügt:

az redisenterprise create --location "East US" --cluster-name "Cache1" --sku "Enterprise_E10" --resource-group "myResourceGroup" --group-nickname "replicationGroup" --linked-databases id="/subscriptions/34b6ecbd-ab5c-4768-b0b8-bf587aba80f6/resourceGroups/myResourceGroup/providers/Microsoft.Cache/redisEnterprise/Cache1/databases/default"

Um die aktive Georeplikation ordnungsgemäß zu konfigurieren, muss die ID der erstellten Cache-Instanz mit dem --linked-databases-Parameter hinzugefügt werden. Das Format der ID ist:

/subscriptions/<your-subscription-ID>/resourceGroups/<your-resource-group-name>/providers/Microsoft.Cache/redisEnterprise/<your-cache-name>/databases/default

Erstellen einer neuen Enterprise-Instanz in einer vorhandenen Georeplikationsgruppe mit Azure CLI

In diesem Beispiel wird eine neue Enterprise E10-Cache-Instanz namens Cache2 in der Region „USA, Westen“ erstellt. Anschließend fügt das Skript den Cache der aktiven Georeplikationsgruppe replicationGroup hinzu, die in einer vorherigen Prozedur erstellt wurde. Auf diese Weise wird sie in einer Aktiv/Aktiv-Konfiguration mit Cache1 verknüpft.

az redisenterprise create --location "West US" --cluster-name "Cache2" --sku "Enterprise_E10" --resource-group "myResourceGroup" --group-nickname "replicationGroup" --linked-databases id="/subscriptions/34b6ecbd-ab5c-4768-b0b8-bf587aba80f6/resourceGroups/myResourceGroup/providers/Microsoft.Cache/redisEnterprise/Cache1/databases/default" --linked-databases id="/subscriptions/34b6ecbd-ab5c-4768-b0b8-bf587aba80f6/resourceGroups/myResourceGroup/providers/Microsoft.Cache/redisEnterprise/Cache2/databases/default"

Wie zuvor müssen Sie sowohl Cache1 als auch Cache2 mithilfe des --linked-databases-Parameters auflisten.

Azure PowerShell

Verwenden Sie Azure PowerShell zum Erstellen einer neuen Cache- und Georeplikationsgruppe oder zum Hinzufügen eines neuen Caches zu einer vorhandenen Georeplikationsgruppe. Weitere Informationen finden Sie unter New-AzRedisEnterpriseCache.

Erstellen einer neuen Enterprise-Instanz in einer neuen Georeplikationsgruppe mit PowerShell

In diesem Beispiel wird eine neue Azure Cache for Redis Enterprise E10-Cache-Instanz namens Cache1 in der Region „USA, Osten“ erstellt. Anschließend wird der Cache zu einer neuen aktiven Georeplikationsgruppe namens replicationGroup hinzugefügt:

New-AzRedisEnterpriseCache -Name "Cache1" -ResourceGroupName "myResourceGroup" -Location "East US" -Sku "Enterprise_E10" -GroupNickname "replicationGroup" -LinkedDatabase '{id:"/subscriptions/34b6ecbd-ab5c-4768-b0b8-bf587aba80f6/resourceGroups/myResourceGroup/providers/Microsoft.Cache/redisEnterprise/Cache1/databases/default"}'

Um die aktive Georeplikation ordnungsgemäß zu konfigurieren, muss die ID der erstellten Cache-Instanz mit dem -LinkedDatabase-Parameter hinzugefügt werden. Das Format der ID ist:

/subscriptions/<your-subscription-ID>/resourceGroups/<your-resource-group-name>/providers/Microsoft.Cache/redisEnterprise/<your-cache-name>/databases/default

Erstellen einer neuen Enterprise-Instanz in einer vorhandenen Georeplikationsgruppe mit PowerShell

In diesem Beispiel wird eine neue Enterprise E10-Cache-Instanz namens Cache2 in der Region „USA, Westen“ erstellt. Anschließend fügt das Skript den Cache der aktiven Georeplikationsgruppe „replicationGroup“ hinzu, die in der vorherigen Prozedur erstellt wurde. So werden die beiden Caches Cache1 und Cache2 in einer Aktiv/Aktiv-Konfiguration verknüpft.

New-AzRedisEnterpriseCache -Name "Cache2" -ResourceGroupName "myResourceGroup" -Location "West US" -Sku "Enterprise_E10" -GroupNickname "replicationGroup" -LinkedDatabase '{id:"/subscriptions/34b6ecbd-ab5c-4768-b0b8-bf587aba80f6/resourceGroups/myResourceGroup/providers/Microsoft.Cache/redisEnterprise/Cache1/databases/default"}', '{id:"/subscriptions/34b6ecbd-ab5c-4768-b0b8-bf587aba80f6/resourceGroups/myResourceGroup/providers/Microsoft.Cache/redisEnterprise/Cache2/databases/default"}'

Wie zuvor müssen Sie sowohl Cache1 als auch Cache2 mithilfe des -LinkedDatabase-Parameters auflisten.

Leerung

Aufgrund der Möglichkeit eines versehentlichen Datenverlusts können Sie die Redis-Befehle FLUSHALL und FLUSHDB nicht für eine Cache-Instanz verwenden, die sich in einer Georeplikationsgruppe befindet. Verwenden Sie stattdessen die Schaltfläche Caches leeren oben im Arbeitsbereich Aktive Georeplikation.

Screenshot showing Active geo-replication selected in the Resource menu and the Flush cache feature has a red box around it.

Leeren von Caches mit der Azure CLI oder PowerShell

Die Azure CLI und PowerShell können auch verwendet werden, um einen Leerungsvorgang auszulösen. Weitere Informationen zur Verwendung der Azure CLI finden Sie unter az redisenterprise database flush. Weitere Informationen zur Verwendung von PowerShell finden Sie unter Invoke-AzRedisEnterpriseCacheDatabaseFlush.

Wichtig

Seien Sie vorsichtig, wenn Sie das Feature Caches leeren verwenden. Wenn Sie die Schaltfläche auswählen, werden alle Daten aus dem aktuellen Cache und aus ALLEN verknüpften Caches in der Georeplikationsgruppe entfernt.

Verwalten Sie den Zugriff auf die Funktion mithilfe der rollenbasierten Zugriffssteuerung in Azure. Nur autorisierten Benutzer*innen sollte Zugriff zum Leeren aller Caches gewährt werden.

Nächste Schritte

Erfahren Sie mehr über Azure Cache for Redis-Features.