Verschieben von Azure Event Grid-Systemthemen in eine andere Region
In diesem Artikel werden die empfohlenen Vorgehensweisen, Richtlinien und Methoden zum Verschieben von Event Grid-Systemthemas in eine andere Region behandelt.
Es gibt verschiedene mögliche Gründe, warum Sie Ihre vorhandenen Azure-Ressourcen aus einer Region in eine andere verschieben möchten. Möglicherweise möchten Sie Folgendes ausführen:
- Nutzen Sie die Vorteile einer neuen Azure-Region.
- Stellen Sie Features oder Dienste bereit, die nur in bestimmten Regionen verfügbar sind.
- Erfüllen Sie interne Richtlinien- und Governanceanforderungen.
- Ausrichtung an Unternehmenszusammenschlüssen und -übernahmen
- Um die Anforderungen an die Kapazitätsplanung zu erfüllen.
Folgende allgemeine Schritte werden in diesem Artikel behandelt:
- Exportieren der Ressourcengruppe, die das Azure Storage-Konto enthält, und des zugehörigen Systemthemas in eine Resource Manager-Vorlage. Sie können auch eine Vorlage nur für das Systemthema exportieren. Wenn Sie sich für diesen Weg entscheiden, denken Sie daran, die Azure-Ereignisquelle (in diesem Beispiel ein Azure Storage-Konto) in die andere Region zu verschieben, bevor Sie das Systemthema verschieben. Aktualisieren Sie dann in der exportierten Vorlage für das Systemthema die externe ID für das Speicherkonto in der Zielregion.
- Ändern der Vorlage, um die
endpointUrl
-Eigenschaft hinzuzufügen, um auf einen Webhook zu verweisen, der das Systemthema abonniert. Beim Exportieren des Systemthemas wird das zugehörige Abonnement (in diesem Fall ein Webhook) ebenfalls in die Vorlage exportiert, aber dieendpointUrl
-Eigenschaft wird nicht eingeschlossen. Daher müssen Sie sie aktualisieren, um auf den Endpunkt zu verweisen, der das Thema abonniert. Aktualisieren Sie außerdem den Wert derlocation
-Eigenschaft auf den neuen Speicherort oder die neue Region. Für andere Typen von Ereignishandlern müssen Sie nur den Speicherort aktualisieren. - Verwenden der Vorlage zum Bereitstellen von Ressourcen in der Zielregion. Sie geben Namen für das Speicherkonto und das Systemthema an, das in der Zielregion erstellt werden soll.
- Überprüfen der Bereitstellung. Vergewissern Sie sich, dass der Webhook aufgerufen wird, wenn Sie eine Datei in den Blobspeicher in der Zielregion hochladen.
- Um den Verschiebevorgang abzuschließen, löschen Sie Ressourcen (Ereignisquelle und Systemthema) aus der Quellregion.
Voraussetzungen
- Schließen Sie den Schnellstart: Weiterleiten von Blob Storage-Ereignissen an einen Webendpunkt über das Azure-Portal in der Quellregion ab. Dieser Schritt ist optional. Führen Sie ihn aus, um die Schritte in diesem Artikel zu testen. Behalten Sie das Speicherkonto in einer separaten Ressourcengruppe vom App Service und App Service-Plan bei.
- Stellen Sie sicher, dass der Event Grid-Dienst in der Zielregion verfügbar ist. Weitere Informationen finden Sie unter Verfügbare Produkte nach Region.
Vorbereiten
Exportieren Sie als ersten Schritt eine Resource Manager-Vorlage für die Ressourcengruppe, die die Systemereignisquelle (Azure Storage-Konto) und das zugehörige Systemthema enthält.
Melden Sie sich beim Azure-Portal an.
Wählen Sie im linken Menü die Option Ressourcengruppen aus. Wählen Sie anschließend die Ressourcengruppe aus, die die Ereignisquelle enthält, für die das Systemthema erstellt wurde. Im folgenden Beispiel handelt es sich um das Azure Storage-Konto. Die Ressourcengruppe enthält das Speicherkonto und das zugehörige Systemthema.
Wählen Sie im Menü auf der linken Seite Vorlage exportieren unter Einstellungen aus, und wählen Sie dann Herunterladen auf der Symbolleiste aus.
Suchen Sie die aus dem Portal heruntergeladene ZIP-Datei, und entpacken Sie sie in einen Ordner Ihrer Wahl. Diese ZIP-Datei enthält die JSON-Dateien mit Vorlagen und Parametern.
Öffnen Sie die Datei template.json in einem Editor Ihrer Wahl.
Die URL für den Webhook wird nicht in die Vorlage exportiert. Führen Sie daher die folgenden Schritte aus:
Suchen Sie in der Vorlagendatei nach WebHook.
Fügen Sie im Abschnitt Properties (Eigenschaften) am Ende der letzten Zeile ein Komma (
,
) hinzu. In diesem Beispiel lautet er"preferredBatchSizeInKilobytes": 64
.Fügen Sie die
endpointUrl
-Eigenschaft mit dem Wert hinzu, der auf Ihre Webhook-URL festgelegt ist, wie im folgenden Beispiel gezeigt."destination": { "properties": { "maxEventsPerBatch": 1, "preferredBatchSizeInKilobytes": 64, "endpointUrl": "https://mysite.azurewebsites.net/api/updates" }, "endpointType": "WebHook" }
Hinweis
Für andere Typen von Ereignishandlern werden alle Eigenschaften in die Vorlage exportiert. Sie müssen die nur
location
-Eigenschaft in die Zielregion aktualisieren, wie im nächsten Schritt gezeigt.
Aktualisieren Sie
location
für die Speicherkontoressource in die Zielregion oder den Zielspeicherort. Informationen zum Abrufen von Standortcodes finden Sie unter Azure-Standorte. Der Code für eine Region ist der Name der Region ohne Leerzeichen, z. B. istWest US
gleichwestus
."type": "Microsoft.Storage/storageAccounts", "apiVersion": "2019-06-01", "name": "[parameters('storageAccounts_spegridstorage080420_name')]", "location": "westus",
Wiederholen Sie den Schritt zum Aktualisieren von
location
für die Systemthemaressource in der Vorlage."type": "Microsoft.EventGrid/systemTopics", "apiVersion": "2020-04-01-preview", "name": "[parameters('systemTopics_spegridsystopic080420_name')]", "location": "westus",
Speichern Sie die Vorlage.
Erneute Bereitstellung
Stellen Sie die Vorlage zum Erstellen eines Speicherkontos und eines Systemthemas für das Speicherkonto in der Zielregion bereit.
- Klicken Sie im Azure-Portal auf Ressource erstellen.
- Geben Sie in Marketplace durchsuchen den Begriff Vorlagenbereitstellung ein, und drücken Sie dann die EINGABETASTE.
- Wählen Sie Vorlagenbereitstellung aus.
- Klicken Sie auf Erstellen.
- Wählen Sie Eigene Vorlage im Editor erstellen.
- Wählen Sie Datei laden aus, und befolgen Sie dann die Anweisungen zum Laden der Datei template.json, die Sie im vorherigen Abschnitt heruntergeladen haben.
- Wählen Sie Speichern aus, um die Vorlage zu speichern.
- Gehen Sie auf der Seite Benutzerdefinierte Bereitstellung wie folgt vor.
Wählen Sie ein Azure-Abonnement aus.
Wählen Sie eine vorhandene Ressourcengruppe in der Zielregion aus, oder erstellen Sie eine Ressourcengruppe.
Wählen als Region die Zielregion aus. Wenn Sie eine vorhandene Ressourcengruppe ausgewählt haben, ist diese Einstellung schreibgeschützt.
Geben Sie als Systemthemanamen einen Namen für das Systemthema ein, der dem Speicherkonto zugeordnet wird.
Geben Sie als Speicherkontonamen einen Namen für das Speicherkonto ein, das in der Zielregion erstellt werden soll.
Wählen Sie am unteren Rand der Seite die Option Bewerten + erstellen aus.
Überprüfen Sie die Einstellungen auf der Seite Überprüfen und erstellen, und wählen Sie Erstellen aus.
Überprüfung
- Wählen Sie nach der erfolgreichen Bereitstellung Zu Ressourcengruppe wechseln aus.
- Überprüfen Sie auf der Seite Ressourcengruppe, ob die Ereignisquelle (in diesem Beispiel das Azure Storage-Konto) und das Systemthema erstellt wurden.
- Laden Sie eine Datei in einen Container in Azure Blob Storage hoch, und bestätigen Sie, dass der Webhook das Ereignis empfangen hat. Weitere Informationen finden Sie unter Senden eines Ereignisses an Ihren Endpunkt.
Verwerfen oder Bereinigen
Um den Verschiebevorgang abzuschließen, löschen Sie die Ressourcengruppe, die das Speicherkonto und das zugehörige Systemthema in der Quellregion enthält.
Wenn Sie von vorn beginnen möchten, löschen Sie die Ressourcengruppe in der Zielregion, und wiederholen Sie die Schritte in den Abschnitten Vorbereiten und Neu erstellen dieses Artikels.
So löschen Sie eine Ressourcengruppe (Quelle oder Ziel) im Azure-Portal:
Geben Sie im Suchfenster oben im Azure-Portal Ressourcengruppen ein, und wählen Sie in den Suchergebnissen Ressourcengruppen aus.
Wählen Sie die zu löschende Ressourcengruppe und dann auf der Symbolleiste Löschen aus.
Geben Sie auf der Bestätigungsseite den Namen der Ressourcengruppe ein, und wählen Sie Löschen aus.