Uwaga
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
W tym artykule opisano zalecane podejście, wytyczne i rozwiązania dotyczące przenoszenia tematów dotyczących systemu usługi Event Grid do innego regionu.
Istnieją różne powody, dla których możesz chcieć przenieść istniejące zasoby platformy Azure z jednego regionu do innego. Możesz chcieć:
- Skorzystać z nowego regionu platformy Azure.
- Wdrożyć funkcje lub usługi dostępne tylko w określonych regionach.
- Spełnić wewnętrzne wymagania dotyczące zasad i zarządzania.
- Dostosować się do fuzji i przejęć firm.
- Spełnić wymagania dotyczące planowania pojemności.
Poniżej przedstawiono ogólne kroki opisane w tym artykule:
- Wyeksportuj grupę zasobów zawierającą konto usługi Azure Storage i skojarzony z nim temat systemowy do szablonu usługi Resource Manager. Można również wyeksportować szablon tylko dla tematu systemowego. Jeśli przejdziesz tą trasą, pamiętaj, aby przenieść źródło zdarzeń platformy Azure (w tym przykładzie konto usługi Azure Storage) do innego regionu przed przeniesieniem tematu systemowego. Następnie w wyeksportowanym szablonie tematu systemowego zaktualizuj identyfikator zewnętrzny konta magazynu w regionie docelowym.
-
Zmodyfikuj szablon ,
endpointUrl
aby dodać właściwość , aby wskazywała element webhook, który subskrybuje temat systemowy. Po wyeksportowaniu tematu systemowego jego subskrypcja (w tym przypadku element webhook) jest również eksportowana do szablonu, aleendpointUrl
właściwość nie jest uwzględniana. Dlatego należy zaktualizować go, aby wskazać punkt końcowy, który subskrybuje temat. Ponadto zaktualizuj wartośćlocation
właściwości do nowej lokalizacji lub regionu. W przypadku innych typów procedur obsługi zdarzeń należy zaktualizować tylko lokalizację. - Użyj szablonu, aby wdrożyć zasoby w regionie docelowym. Określisz nazwy konta magazynu i tematu systemowego, który ma zostać utworzony w regionie docelowym.
- Zweryfikuj wdrożenie. Sprawdź, czy element webhook jest wywoływany podczas przekazywania pliku do magazynu obiektów blob w regionie docelowym.
- Aby ukończyć przenoszenie, usuń zasoby (źródło zdarzeń i temat systemu) z regionu źródłowego.
Wymagania wstępne
- Ukończ szybki start Szybki start: kierowanie zdarzenia usługi Blob Storage do internetowego punktu końcowego za pomocą portalu Azure w regionie źródłowym. Ten krok jest opcjonalny. Zrób to, aby przetestować kroki opisane w tym artykule. Zachowaj konto magazynowe w odrębnej grupie zasobów od usługi App Service i planu usługi App Service.
- Upewnij się, że usługa Event Grid jest dostępna w regionie docelowym. Zobacz Dostępność produktów według regionów.
Przygotuj się
Aby rozpocząć, wyeksportuj szablon usługi Resource Manager dla grupy zasobów zawierającej źródło zdarzeń systemowych (konto usługi Azure Storage) i skojarzony z nim temat systemowy.
Zaloguj się do witryny Azure Portal.
Wybierz pozycję Grupy zasobów w menu po lewej stronie. Następnie wybierz grupę zasobów zawierającą źródło zdarzeń, dla którego utworzono temat systemowy. W poniższym przykładzie to konto usługi Azure Storage. Grupa zasobów zawiera konto pamięci masowej oraz przypisany do niego temat systemowy.
W menu po lewej stronie wybierz pozycję Eksportuj szablon w obszarze Ustawienia, a następnie wybierz pozycję Pobierz na pasku narzędzi.
Znajdź plik .zip pobrany z portalu i rozpakuj ten plik do wybranego folderu. Ten plik zip zawiera pliki JSON szablonu i parametrów.
Otwórz template.json w wybranym edytorze.
Adres URL dla webhooka nie jest eksportowany do szablonu. W związku z tym wykonaj następujące czynności:
W pliku szablonu wyszukaj element WebHook.
W sekcji Właściwości dodaj znak przecinka (
,
) na końcu ostatniego wiersza. W tym przykładzie jest to"preferredBatchSizeInKilobytes": 64
.Dodaj właściwość
endpointUrl
i ustaw wartość na adres URL swojego webhooku, jak pokazano w poniższym przykładzie."destination": { "properties": { "maxEventsPerBatch": 1, "preferredBatchSizeInKilobytes": 64, "endpointUrl": "https://mysite.azurewebsites.net/api/updates" }, "endpointType": "WebHook" }
Uwaga
W przypadku innych typów procedur obsługi zdarzeń wszystkie właściwości są eksportowane do szablonu. Wystarczy zaktualizować
location
właściwość do regionu docelowego, jak pokazano w następnym kroku.
Zaktualizuj
location
zasób konta magazynu do regionu docelowego lub lokalizacji. Aby uzyskać kody lokalizacji, zobacz Lokalizacje platformy Azure. Kod regionu to nazwa regionu bez spacji, na przykład jestWest US
równawestus
."type": "Microsoft.Storage/storageAccounts", "apiVersion": "2019-06-01", "name": "[parameters('storageAccounts_spegridstorage080420_name')]", "location": "westus",
Powtórz krok, aby zaktualizować
location
zasób tematu systemowego w szablonie."type": "Microsoft.EventGrid/systemTopics", "apiVersion": "2020-04-01-preview", "name": "[parameters('systemTopics_spegridsystopic080420_name')]", "location": "westus",
Zapisz szablon.
Ponownie wdroż
Wdróż szablon, aby utworzyć konto magazynu i temat systemowy dla tego konta magazynu w docelowym regionie.
- W witrynie Azure Portal wybierz polecenie Utwórz zasób.
- W Wyszukaj w Marketplace, wpisz wdrożenie szablonu, a następnie naciśnij ENTER.
- Wybierz pozycję Wdrożenie szablonu.
- Wybierz Utwórz.
- Wybierz pozycję Utwórz własny szablon w edytorze.
- Wybierz pozycję Załaduj plik, a następnie postępuj zgodnie z instrukcjami, aby załadować plik template.json pobrany w ostatniej sekcji.
- Wybierz pozycję Zapisz , aby zapisać szablon.
-
Na stronie Niestandardowe wdrożenie wykonaj następujące kroki.
Wybierz subskrypcję platformy Azure.
Wybierz istniejącą grupę zasobów w regionie docelowym lub utwórz grupę zasobów.
W obszarze Region wybierz region docelowy. Jeśli wybrano istniejącą grupę zasobów, to ustawienie jest tylko do odczytu.
W polu nazwa tematu systemowego wprowadź nazwę tematu systemowego, który zostanie skojarzony z kontem magazynu.
W polu Nazwa konta magazynu wprowadź nazwę konta magazynu, które ma zostać utworzone w regionie docelowym.
Wybierz pozycję Przejrzyj i utwórz w dolnej części strony.
Na stronie Przeglądanie + tworzenie przejrzyj ustawienia i wybierz pozycję Utwórz.
Weryfikacja
- Po pomyślnym wdrożeniu wybierz pozycję Przejdź do grupy zasobów.
- Na stronie Grupy zasobów sprawdź, czy źródło zdarzeń (w tym przykładzie konto usługi Azure Storage) i temat systemowy zostały utworzone.
- Prześlij plik do kontenera w usłudze Azure Blob Storage i sprawdź, czy webhook otrzymał zdarzenie. Aby uzyskać więcej informacji, zobacz Wysyłanie zdarzenia do punktu końcowego.
Odrzucanie lub czyszczenie
Aby zakończyć proces przenoszenia, usuń grupę zasobów zawierającą konto magazynu i związany z nim temat systemowy w regionie źródłowym.
Jeśli chcesz zacząć od nowa, usuń grupę zasobów w regionie docelowym i powtórz kroki opisane w sekcjach Przygotowywanie i ponowne tworzenie w tym artykule.
Aby usunąć grupę zasobów (źródło lub element docelowy) przy użyciu witryny Azure Portal:
W oknie wyszukiwania w górnej części witryny Azure Portal wpisz Grupy zasobów i wybierz pozycję Grupy zasobów z wyników wyszukiwania.
Wybierz grupę zasobów do usunięcia, a następnie wybierz pozycję Usuń na pasku narzędzi.
Na stronie potwierdzenia wprowadź nazwę grupy zasobów, a następnie wybierz pozycję Usuń.