Udostępnij za pośrednictwem


Migrowanie istniejących przestrzeni nazw usługi Azure Service Bus z warstwy Standardowa do warstwy Premium

Wcześniej usługa Azure Service Bus oferowała przestrzenie nazw tylko w warstwie Standardowa. Przestrzenie nazw to wielodostępne konfiguracje zoptymalizowane pod kątem niskiej przepływności i środowisk deweloperskich. Warstwa Premium oferuje dedykowane zasoby na przestrzeń nazw w celu przewidywalnego opóźnienia i zwiększonej przepływności przy stałej cenie. Warstwa Premium jest zoptymalizowana pod kątem wysokiej przepływności i środowisk produkcyjnych, które wymagają dodatkowych funkcji przedsiębiorstwa.

W tym artykule opisano sposób migrowania istniejących przestrzeni nazw warstwy Standardowa do warstwy Premium.

Ostrzeżenie

Migracja jest przeznaczona do uaktualnienia standardowych przestrzeni nazw usługi Service Bus do warstwy Premium. Narzędzie do migracji nie obsługuje obniżania poziomu. Podczas migracji ze standardu do poziomu premium zostanie utworzony wskaźnik DNS, który może służyć do uzyskiwania dostępu do standardowej magistrali usług. Należy pamiętać, że podczas migracji zostanie utworzona nazwa_alternatywna reprezentująca wskaźnik do przestrzeni nazw DNS starej magistrali usług i nie można cofnąć operacji. Wszelkiego rodzaju testy powinny być wykonywane w środowisku testowym.

Niektóre z punktów, które należy zwrócić uwagę:

  • Ta migracja ma nastąpić, co oznacza, że istniejące aplikacje nadawcy i odbiorcy nie wymagają żadnych zmian w kodzie ani konfiguracji. Istniejący parametry połączenia automatycznie wskaże nową przestrzeń nazw Premium.
  • Jeśli używasz istniejącej nazwy Premium, przestrzeń nazw w warstwie Premium nie powinna mieć w niej żadnych jednostek , aby migracja zakończyła się pomyślnie i nie powinna mieć włączonej partycjonowania.
  • Wszystkie jednostki w standardowej przestrzeni nazw są kopiowane do przestrzeni nazw Premium podczas procesu migracji.
  • Migracja obsługuje 1000 jednostek na jednostkę obsługi komunikatów w warstwie Premium. Aby określić liczbę potrzebnych jednostek obsługi komunikatów, zacznij od liczby jednostek w bieżącej standardowej przestrzeni nazw.
  • Nie można bezpośrednio przeprowadzić migracji z warstwy Podstawowa do warstwy Premium, ale możesz to zrobić pośrednio, migrując najpierw z warstwy Podstawowa do warstwy Standardowa, a następnie od warstwy Standardowa do warstwy Premium w następnym kroku.
  • Ustawienia kontroli dostępu opartej na rolach (RBAC) nie są migrowane, dlatego należy dodać je ręcznie po migracji.

Kroki migracji

Niektóre warunki są skojarzone z procesem migracji. Zapoznaj się z poniższymi krokami, aby zmniejszyć prawdopodobieństwo wystąpienia błędów. Te kroki przedstawiają proces migracji, a szczegółowe informacje krok po kroku znajdują się w poniższych sekcjach.

  1. Utwórz nową przestrzeń nazw Premium. Następne trzy kroki należy wykonać, wykonując następujące instrukcje dotyczące interfejsu wiersza polecenia lub witryny Azure Portal w tym artykule.
  2. Połącz ze sobą standardowe i premium przestrzenie nazw.
  3. Synchronizowanie (kopiowanie) jednostek ze standardu do przestrzeni nazw w warstwie Premium.
  4. Zatwierdź migrację.
  5. Opróżnianie jednostek w standardowej przestrzeni nazw przy użyciu nazwy po migracji przestrzeni nazw.
  6. Usuń standardową przestrzeń nazw.

Ważne

Po zatwierdzeniu migracji uzyskaj dostęp do starej standardowej przestrzeni nazw i opróżnij kolejki i subskrypcje. Po opróżnieniu komunikatów mogą one być wysyłane do nowej przestrzeni nazw Premium, która ma zostać przetworzona przez aplikacje odbiorcy. Po opróżnieniu kolejek i subskrypcji zalecamy usunięcie starej standardowej przestrzeni nazw.

Migrowanie przy użyciu interfejsu wiersza polecenia platformy Azure lub programu PowerShell

Aby przeprowadzić migrację standardowej przestrzeni nazw usługi Service Bus do warstwy Premium przy użyciu interfejsu wiersza polecenia platformy Azure lub narzędzia programu PowerShell, wykonaj następujące kroki.

  1. Utwórz nową przestrzeń nazw usługi Service Bus w warstwie Premium. Możesz odwołać się do szablonów usługi Azure Resource Manager lub użyć witryny Azure Portal. Pamiętaj, aby wybrać pozycję Premium dla parametru serviceBusSku .

  2. Ustaw następujące zmienne środowiskowe, aby uprościć polecenia migracji. Identyfikator usługi Azure Resource Manager dla przestrzeni nazw w warstwie Premium można uzyskać, przechodząc do przestrzeni nazw w witrynie Azure Portal i kopiując część adresu URL, która wygląda następująco: /subscriptions/00000000-0000-0000-0000-00000000000000/resourceGroups/contosoresourcegroup/providers/Microsoft.ServiceBus/namespaces/contosopremiumnamespace.

    resourceGroup = <resource group for the standard namespace>
    standardNamespace = <standard namespace to migrate>
    premiumNamespaceArmId = <Azure Resource Manager ID of the premium namespace to migrate to>
    postMigrationDnsName = <post migration DNS name entry to access the standard namespace>
    

    Ważne

    Alias/nazwa po migracji (post_migration_dns_name) będzie używany do uzyskiwania dostępu do starej standardowej przestrzeni nazw po migracji. Użyj tej opcji, aby opróżnić kolejki i subskrypcje, a następnie usunąć przestrzeń nazw.

  3. Połącz standardowe i premium przestrzenie nazw i rozpocznij synchronizację przy użyciu następującego polecenia:

    az servicebus migration start --resource-group $resourceGroup --name $standardNamespace --target-namespace $premiumNamespaceArmId --post-migration-name $postMigrationDnsName
    
  4. Sprawdź stan migracji przy użyciu następującego polecenia:

    az servicebus migration show --resource-group $resourceGroup --name $standardNamespace
    

    Migracja jest uważana za ukończoną po wyświetleniu następujących wartości:

    • MigrationState = "Active"
    • pendingReplicationsOperationsCount = 0
    • provisioningState = "Succeeded"

    To polecenie wyświetla również konfigurację migracji. Sprawdź, czy wartości są ustawione poprawnie. Sprawdź również przestrzeń nazw Premium w portalu, aby upewnić się, że zostały utworzone wszystkie kolejki i tematy oraz że są zgodne z tym, co istniało w standardowej przestrzeni nazw.

  5. Zatwierdź migrację, wykonując następujące pełne polecenie:

    az servicebus migration complete --resource-group $resourceGroup --name $standardNamespace
    

Migrowanie przy użyciu witryny Azure Portal

Migracja przy użyciu witryny Azure Portal ma taki sam przepływ logiczny, jak migracja przy użyciu poleceń. Wykonaj następujące kroki, aby przeprowadzić migrację przy użyciu witryny Azure Portal.

  1. W menu Nawigacji w okienku po lewej stronie wybierz pozycję Migruj do warstwy Premium. Wybierz przycisk Rozpocznij, aby przejść do następnej strony. Obraz przedstawiający stronę Migracja do warstwy Premium.

  2. Zostanie wyświetlona następująca strona Konfigurowanie przestrzeni nazw .

    Obraz przedstawiający stronę Konfigurowanie przestrzeni nazw.

  3. Na stronach Konfigurowanie przestrzeni nazw wykonaj jedną z następujących czynności:

    1. W przypadku wybrania pozycji Utwórz nową przestrzeń nazw Premium:
      1. Na stronie Tworzenie przestrzeni nazw wprowadź nazwę przestrzeni nazw, a następnie wybierz pozycję Przejrzyj i utwórz.

      2. Na stronie Przeglądanie i tworzenie wybierz pozycję Utwórz.

        Obraz przedstawiający stronę Tworzenie przestrzeni nazw.

    2. W przypadku wybrania pozycji Wybierz istniejącą pustą przestrzeń nazw Premium:
      1. Wybierz subskrypcję platformy Azure i grupę zasobów, która ma przestrzeń nazw.

      2. Następnie wybierz przestrzeń nazw Premium.

      3. Następnie kliknij pozycję Wybierz.

        Obraz przedstawiający wybór istniejącej przestrzeni nazw Premium.

  4. Wprowadź nazwę po migracji, a następnie wybierz przycisk Dalej. Użyjesz tej nazwy, aby uzyskać dostęp do standardowej przestrzeni nazw po zakończeniu migracji.

    Obraz przedstawiający nazwę po migracji dla standardowej przestrzeni nazw.

  5. Wybierz pozycję Rozpocznij synchronizację , aby zsynchronizować jednostki między przestrzeniami nazw w warstwie Standardowa i Premium.

    Obraz przedstawiający przycisk Rozpocznij synchronizację.

  6. Wybierz pozycję Tak w oknie dialogowym, aby potwierdzić i uruchomić synchronizację. Poczekaj na ukończenie synchronizacji. Następnie wybierz Dalej.

    Ważne

    Jeśli z jakiegoś powodu musisz przerwać migrację, zapoznaj się z przepływem przerwania w sekcji Często zadawane pytania w tym dokumencie.

  7. Wybierz pozycję Ukończ migrację na stronie Przełącz .

    Obraz przedstawiający stronę **Przełącz** kreatora migracji.

  8. Wybierz pozycję Tak , aby potwierdzić przełączenie standardowej przestrzeni nazw na premium. Po zakończeniu przełączania nazwa DNS standardowej przestrzeni nazw będzie wskazywać przestrzeń nazw w warstwie Premium. Nie można cofnąć tej operacji. Po zakończeniu migracji zostanie wyświetlona strona Powodzenie .

    Obraz przedstawiający stronę Powodzenie.

Zastrzeżenia

Niektóre funkcje udostępniane przez warstwę Standardowa usługi Azure Service Bus nie są obsługiwane przez warstwę Premium usługi Azure Service Bus. Są one projektowane, ponieważ warstwa Premium oferuje dedykowane zasoby w celu przewidywalnej przepływności i opóźnień.

Poniżej przedstawiono omówienie funkcji, które nie są obsługiwane przez usługę Premium i ich środki zaradcze.

Jednostki ekspresowe

Jednostki ekspresowe, które nie zatwierdzają żadnych danych komunikatów do magazynu, nie są obsługiwane w warstwie Premium . Zasoby dedykowane zapewniają znaczną poprawę przepływności przy jednoczesnym zapewnieniu, że dane są utrwalane zgodnie z oczekiwaniami w każdym systemie obsługi komunikatów przedsiębiorstwa.

Podczas migracji każda z jednostek ekspresowych w przestrzeni nazw w warstwie Standardowa zostanie utworzona w przestrzeni nazw Premium jako jednostka nie ekspresowa.

Jeśli używasz szablonów usługi Azure Resource Manager, upewnij się, że z konfiguracji wdrożenia usunięto flagę "enableExpress", aby automatyczne przepływy pracy były wykonywane bez błędów.

Ustawienia kontroli dostępu opartej na rolach

Ustawienia kontroli dostępu opartej na rolach (RBAC) w przestrzeni nazw nie są migrowane do przestrzeni nazw Premium. Należy je dodać ręcznie po migracji.

Często zadawane pytania

Co się stanie po zatwierdzeniu migracji?

Po zatwierdzeniu migracji parametry połączenia wskazująca na przestrzeń nazw w warstwie Premium będzie wskazywać przestrzeń nazw w warstwie Premium.

Aplikacje nadawcy i odbiorcy będą automatycznie odłączać się od standardowej przestrzeni nazw i ponownie łączyć się z przestrzenią nazw Premium.

Jeśli używasz identyfikatora usługi Azure Resource Manager do konfiguracji, a nie parametry połączenia (np. jako miejsca docelowego subskrypcji usługi Event Grid), musisz zaktualizować identyfikator usługi Azure Resource Manager tak, aby był to przestrzeń nazw Premium.

Co zrobić po zakończeniu migracji standardowej do warstwy Premium?

Standardowa migracja do warstwy Premium zapewnia, że metadane jednostki, takie jak tematy, subskrypcje i filtry, są kopiowane ze standardowej przestrzeni nazw do przestrzeni nazw w warstwie Premium. Dane komunikatu zatwierdzone do standardowej przestrzeni nazw nie są kopiowane ze standardowej przestrzeni nazw do przestrzeni nazw w warstwie Premium.

Standardowa przestrzeń nazw może zawierać niektóre komunikaty, które zostały wysłane i zatwierdzone podczas migracji w toku. Ręczne opróżnianie tych komunikatów ze standardowej przestrzeni nazw i ręczne wysyłanie ich do przestrzeni nazw Premium. Aby ręcznie opróżnić komunikaty, użyj aplikacji konsolowej lub skryptu, który opróżnia standardowe jednostki przestrzeni nazw przy użyciu nazwy DNS po migracji określonej w poleceniach migracji. Wyślij te komunikaty do przestrzeni nazw Premium, aby mogły być przetwarzane przez odbiorniki.

Po opróżnieniu komunikatów usuń standardową przestrzeń nazw.

Ważne

Po opróżnieniu komunikatów ze standardowej przestrzeni nazw usuń standardową przestrzeń nazw. Jest to ważne, ponieważ parametry połączenia, który początkowo odwołuje się do standardowej przestrzeni nazw, odwołuje się teraz do przestrzeni nazw w warstwie Premium. Nie potrzebujesz już standardowej przestrzeni nazw. Usunięcie zmigrowanej standardowej przestrzeni nazw pomaga zmniejszyć późniejsze zamieszanie.

Ile przestoju oczekuję?

Proces migracji ma na celu zmniejszenie oczekiwanego przestoju aplikacji. Przestój jest zmniejszany przy użyciu parametry połączenia, za pomocą których aplikacje nadawcy i odbiorcy wskazują nową przestrzeń nazw Premium.

Przestój, który występuje w aplikacji, jest ograniczony do czasu aktualizacji wpisu DNS, aby wskazać przestrzeń nazw Premium. Przestój trwa około 5 minut.

Czy muszę wprowadzić jakiekolwiek zmiany konfiguracji podczas migracji?

Nie, nie ma żadnych zmian w kodzie ani konfiguracji wymaganych do przeprowadzenia migracji. Nazwa DNS standardowej przestrzeni nazw będzie wskazywać przestrzeń nazw w warstwie Premium. Parametry połączenia używane przez aplikacje nadawcy i odbiorcy w celu uzyskania dostępu do standardowej przestrzeni nazw jest automatycznie mapowane jako alias dla przestrzeni nazw Premium.

Jak mogę przerwać migrację?

Migrację można przerwać za pomocą Abort polecenia lub przy użyciu witryny Azure Portal.

Interfejs wiersza polecenia platformy Azure

az servicebus migration abort --resource-group $resourceGroup --name $standardNamespace

Azure Portal

Wybierz pozycję Przerwij na stronie Jednostki synchronizacji.

Obraz przedstawiający stronę Przerwanie.

Po zakończeniu zostanie wyświetlona następująca strona:

Obraz przedstawiający ukończoną stronę Przerwanie.

Co się stanie po przerwaniu migracji?

Po przerwaniu procesu migracji przerywa proces kopiowania jednostek (tematów, subskrypcji i filtrów) ze standardu do przestrzeni nazw Premium i przerywa parowanie.

Parametry połączenia nie jest aktualizowana tak, aby wskazywała przestrzeń nazw w warstwie Premium. Istniejące aplikacje nadal działają tak, jak przed rozpoczęciem migracji.

Nie usuwa jednak jednostek w przestrzeni nazw Premium ani nie usuwa przestrzeni nazw premium. Usuń jednostki ręcznie, jeśli nie chcesz kontynuować migracji.

Ważne

Jeśli zdecydujesz się przerwać migrację, usuń przestrzeń nazw w warstwie Premium aprowizowaną na potrzeby migracji, aby nie były naliczane opłaty za zasoby.

Nie chcę opróżniać wiadomości. Co należy zrobić?

Mogą istnieć komunikaty wysyłane przez aplikacje nadawcy i zatwierdzone do magazynu w standardowej przestrzeni nazw podczas migracji i tuż przed zatwierdzeniu migracji.

Podczas migracji rzeczywiste dane/ładunek komunikatu nie są kopiowane ze standardu do przestrzeni nazw Premium. Komunikaty muszą być opróżniane ręcznie, a następnie wysyłane do przestrzeni nazw Premium.

Jeśli jednak możesz przeprowadzić migrację podczas zaplanowanej konserwacji/okna obsługi i nie chcesz ręcznie opróżniać i wysyłać komunikatów, wykonaj następujące kroki:

  1. Zatrzymaj aplikacje nadawcy. Aplikacje odbiorcy będą przetwarzać komunikaty, które znajdują się obecnie w standardowej przestrzeni nazw i opróżnią kolejkę.

  2. Po opróżnieniu kolejek i subskrypcji w standardowej przestrzeni nazw wykonaj procedurę opisaną wcześniej, aby wykonać migrację ze standardu do przestrzeni nazw Premium.

  3. Po zakończeniu migracji można ponownie uruchomić aplikacje nadawcy.

  4. Nadawcy i odbiorcy będą teraz automatycznie łączyć się z przestrzenią nazw Premium.

    Uwaga

    Nie trzeba zatrzymywać aplikacji odbiorcy na potrzeby migracji.

    Po zakończeniu migracji aplikacje odbiorcy rozłączą się ze standardową przestrzenią nazw i automatycznie nawiązują połączenie z przestrzenią nazw Premium.

Następne kroki