Udostępnij za pośrednictwem


Dostarczanie zdarzeń do usługi Azure Event Hubs przy użyciu tematów przestrzeni nazw — Azure Portal

Artykuł zawiera instrukcje krok po kroku dotyczące publikowania zdarzeń w usłudze Azure Event Grid w formacie JSON cloudEvents i dostarczania tych zdarzeń przy użyciu modelu dostarczania wypychanego.

Aby być konkretnym, użyjesz witryny Azure Portal i narzędzia Curl do publikowania zdarzeń w temacie przestrzeni nazw w usłudze Event Grid i wypychania tych zdarzeń z subskrypcji zdarzeń do miejsca docelowego programu obsługi usługi Event Hubs. Aby uzyskać więcej informacji na temat modelu dostarczania wypychanych, zobacz Push delivery overview (Omówienie dostarczania wypychanych).

Jeśli nie masz subskrypcji platformy Azure, przed rozpoczęciem utwórz bezpłatne konto platformy Azure.

Tworzenie przestrzeni nazw usługi Event Grid

Przestrzeń nazw usługi Event Grid udostępnia zdefiniowany przez użytkownika punkt końcowy, do którego są ogłaszane zdarzenia. Poniższy przykład tworzy przestrzeń nazw w grupie zasobów przy użyciu powłoki Bash w usłudze Azure Cloud Shell. Nazwa przestrzeni nazw musi być unikatowa, ponieważ jest częścią wpisu systemu nazw domen (DNS).

  1. Przejdź do witryny Azure Portal.

  2. Na pasku wyszukiwania w temacie wpisz Event Grid Namespaces, a następnie wybierz pozycję Event Grid Namespaces z wyników.

    Zrzut ekranu przedstawiający pasek wyszukiwania w witrynie Azure Portal.

  3. Na stronie Przestrzenie nazw usługi Event Grid wybierz pozycję + Utwórz na pasku poleceń. Zrzut ekranu przedstawiający stronę Przestrzenie nazw usługi Event Grid z wybranym przyciskiem Utwórz na pasku poleceń.

  4. Na stronie Tworzenie przestrzeni nazw wykonaj następujące kroki:

    1. Wybierz subskrypcję platformy Azure, w której chcesz utworzyć przestrzeń nazw.
    2. Utwórz nową grupę zasobów, wybierając pozycję Utwórz nową lub wybierając istniejącą grupę zasobów.
    3. Wprowadź nazwę przestrzeni nazw.
    4. Wybierz lokalizację, w której chcesz utworzyć grupę zasobów.
    5. Następnie wybierz pozycję Przegląd + utwórz.
      Zrzut ekranu przedstawiający stronę Tworzenie przestrzeni nazw.
    6. Na stronie Przeglądanie i tworzenie wybierz pozycję Utwórz.
  5. Na stronie Wdrożenie wybierz pozycję Przejdź do zasobu po pomyślnym wdrożeniu.

Pobieranie klucza dostępu

  1. Na stronie Przestrzeń nazw usługi Event Grid wybierz pozycję Klucze dostępu w menu po lewej stronie.
  2. Wybierz przycisk kopiowania obok klucza dostępu. Zrzut ekranu przedstawiający stronę Przestrzenie nazw usługi Event Grid z wybraną kartą Klucze dostępu.
  3. Zapisz klucz dostępu gdzieś. Użyjesz go w dalszej części tego przewodnika Szybki start.

Włączanie tożsamości zarządzanej dla przestrzeni nazw usługi Event Grid

Włącz tożsamość zarządzaną przypisaną przez system w przestrzeni nazw usługi Event Grid. Aby dostarczać zdarzenia do centrów zdarzeń w przestrzeni nazw usługi Event Hubs przy użyciu tożsamości zarządzanej, wykonaj następujące kroki:

  1. Włącz tożsamość zarządzaną przypisaną przez system lub przypisaną przez użytkownika: przestrzenie nazw. Przejdź do następnej sekcji, aby dowiedzieć się, jak włączyć tożsamość zarządzaną przy użyciu interfejsu wiersza polecenia platformy Azure.
  2. Dodaj tożsamość do roli Nadawca danych usługi Azure Event Hubs w przestrzeni nazw usługi Event Hubs, kontynuuj czytanie do następnej sekcji, aby dowiedzieć się, jak dodać przypisanie roli.
  3. Skonfiguruj subskrypcję zdarzeń, która używa centrum zdarzeń jako punktu końcowego do używania tożsamości zarządzanej przypisanej przez system lub przypisanej przez użytkownika.

W tej sekcji włączysz tożsamość zarządzaną przypisaną przez system w przestrzeni nazw. W dalszej części tego przewodnika Szybki start wykonasz inne kroki.

  1. Na stronie Przestrzeń nazw usługi Event Grid wybierz pozycję Tożsamość w menu po lewej stronie.

  2. Na stronie Tożsamość wybierz pozycję Wł. dla pozycji Stan.

  3. Z paska poleceń wybierz opcję Zapisz.

    Zrzut ekranu przedstawiający kartę Tożsamość na stronie Przestrzenie nazw usługi Event Grid.

Tworzenie tematu w przestrzeni nazw

Utwórz temat używany do przechowywania wszystkich zdarzeń publikowanych w punkcie końcowym przestrzeni nazw.

  1. Wybierz pozycję Tematy w menu po lewej stronie.
  2. Na stronie Tematy wybierz pozycję + Temat na pasku poleceń. Zrzut ekranu przedstawiający stronę Tematy.
  3. Na stronie Tworzenie tematu wykonaj następujące kroki:
    1. Wprowadź nazwę tematu.
    2. Wybierz pozycję Utwórz.
      Zrzut ekranu przedstawiający stronę Tworzenie tematu.

Tworzenie przestrzeni nazw usługi Event Hubs

Utwórz zasób usługi Event Hubs, który jest używany jako miejsce docelowe programu obsługi dla subskrypcji dostarczania wypychanego tematu przestrzeni nazw. Wykonaj te kroki na osobnej karcie przeglądarki internetowej lub w osobnym oknie. Przejdź do witryny Azure Portal i zaloguj się przy użyciu tych samych poświadczeń, które były używane wcześniej i tej samej subskrypcji platformy Azure.

  1. Wpisz event hubs na pasku wyszukiwania i wybierz pozycję Event Hubs.
  2. Na stronie Event Hubs wybierz pozycję + Utwórz na pasku poleceń.
  3. Na stronie Tworzenie przestrzeni nazw wykonaj następujące kroki:
    1. Wybierz subskrypcję platformy Azure użytą do utworzenia przestrzeni nazw usługi Event Grid.
    2. Wybierz używaną wcześniej grupę zasobów.
    3. Wprowadź nazwę przestrzeni nazw usługi Event Hubs.
    4. Wybierz tę samą lokalizację , która została użyta dla przestrzeni nazw usługi Event Grid.
    5. Wybierz pozycję Podstawowa dla warstwy cenowej .
    6. Wybierz pozycję Przejrzyj i utwórz. Zrzut ekranu przedstawiający stronę Tworzenie przestrzeni nazw usługi Event Hubs.
    7. Na stronie Przegląd wybierz pozycję Utwórz.
  4. Na stronie Wdrożenie wybierz pozycję Przejdź do zasobu po pomyślnym wdrożeniu.

Dodawanie tożsamości zarządzanej usługi Event Grid do roli nadawcy danych usługi Event Hubs

  1. Na stronie Przestrzeń nazw usługi Event Hubs wybierz pozycję Kontrola dostępu (Zarządzanie dostępem i tożsamościami) w menu po lewej stronie.
  2. Wybierz pozycję Dodaj -> Dodaj przypisanie roli na pasku poleceń. Zrzut ekranu przedstawiający stronę Przestrzeni nazw usługi Event Hubs z wybraną kartą Kontrola dostępu.
  3. Na stronie Dodawanie przypisania roli wyszukaj pozycję Nadawca danych usługi Event Hubs i wybierz pozycję Nadawca danych usługi Azure Event Hubs z listy ról, a następnie wybierz pozycję Dalej. Zrzut ekranu przedstawiający stronę Dodawanie przypisania roli.
  4. Na karcie Członkowie wybierz pozycję Tożsamość zarządzana dla typu, a następnie wybierz pozycję + Wybierz członków. Zrzut ekranu przedstawiający kartę Członkowie na stronie Dodawanie przypisania roli.
  5. Na stronie Wybieranie tożsamości zarządzanych wybierz pozycję Przestrzeń nazw usługi Event Grid dla tożsamości zarządzanej, a następnie wybierz tożsamość zarządzaną o tej samej nazwie co przestrzeń nazw usługi Event Grid. Zrzut ekranu przedstawiający stronę Wybieranie tożsamości zarządzanych.
  6. Na stronie Wybieranie tożsamości zarządzanych wybierz pozycję Wybierz. Zrzut ekranu przedstawiający wybraną tożsamość zarządzaną.
  7. Teraz na stronie Dodawanie przypisania roli wybierz pozycję Przejrzyj i przypisz. Zrzut ekranu przedstawiający stronę Dodawanie przypisania roli z wybraną tożsamością zarządzaną.
  8. Na stronie Przeglądanie i przypisywanie wybierz pozycję Przejrzyj i przypisz.

Tworzenie centrum zdarzeń

  1. Na stronie Przestrzeń nazw usługi Event Hubs wybierz pozycję Event Hubs w menu po lewej stronie.
  2. Na stronie Event Hubs wybierz pozycję + Centrum zdarzeń na pasku poleceń. Zrzut ekranu przedstawiający stronę usługi Event Hubs z wybraną pozycją + Centrum zdarzeń.
  3. Na stronie Tworzenie centrum zdarzeń wprowadź nazwę centrum zdarzeń, a następnie wybierz pozycję Przejrzyj i utwórz. Zrzut ekranu przedstawiający stronę Tworzenie centrum zdarzeń.
  4. Na stronie Przeglądanie i tworzenie wybierz pozycję Utwórz.

Tworzenie subskrypcji zdarzeń

Utwórz subskrypcję zdarzeń ustawiając tryb dostarczania na Wypychanie, która obsługuje dostarczanie wypychane.

  1. Przejdź do karty lub okna ze stroną Przestrzeń nazw usługi Event Grid otwartą na karcie lub w oknie z otwartą stroną Przestrzeń nazw usługi Event Hubs.
  2. Na stronie Przestrzeń nazw usługi Event Grid wybierz pozycję Tematy w menu po lewej stronie.
  3. Na stronie Tematy wybierz temat utworzony w poprzednim kroku.
  4. Wybierz pozycję + Subskrypcja na pasku poleceń. Zrzut ekranu przedstawiający stronę Temat z wybranym przyciskiem Utwórz subskrypcję.
  5. Na stronie Tworzenie subskrypcji zdarzeń wykonaj następujące kroki:
    1. Na karcie Podstawowe wprowadź nazwę subskrypcji zdarzeń.
    2. Wybierz pozycję Wypchnij w trybie dostarczania zdarzeń.
    3. Upewnij się, że centrum zdarzeń zostało wybrane dla typu punktu końcowego.
    4. Wybierz pozycję Konfiguruj punkt końcowy. Zrzut ekranu przedstawiający stronę Tworzenie subskrypcji z wybraną pozycją Wypychanie w trybie dostarczania.
    5. Na stronie Wybieranie centrum zdarzeń wykonaj następujące kroki:
      1. Wybierz subskrypcję platformy Azure i grupę zasobów, która ma centrum zdarzeń.
      2. Wybierz przestrzeń nazw usługi Event Hubs i centrum zdarzeń.
      3. Następnie wybierz pozycję Potwierdź wybór. Zrzut ekranu przedstawiający stronę Wybieranie centrum zdarzeń.
    6. Na stronie Tworzenie subskrypcji wybierz pozycję Przypisane przez system dla typu tożsamości zarządzanej. Zrzut ekranu przedstawiający stronę Tworzenie subskrypcji z zestawem Przypisane przez system dla typu tożsamości zarządzanej.
    7. Wybierz pozycję Utwórz.

Wysyłanie zdarzeń do tematu

Teraz wyślij przykładowe zdarzenie do tematu przestrzeni nazw, wykonując kroki opisane w tej sekcji.

  1. Uruchom usługę Cloud Shell w witrynie Azure Portal. Przejdź do powłoki Bash.

    Zrzut ekranu przedstawiający usługę Cloud Shell.

  2. W usłudze Cloud Shell uruchom następujące polecenie, aby zadeklarować zmienną do przechowywania klucza dostępu dla przestrzeni nazw. Wcześniej w tym przewodniku Szybki start zanotowano klucz dostępu.

    key=ACCESSKEY
    
  3. Zadeklaruj zmienną do przechowywania identyfikatora URI operacji publikowania. Zastąp NAMESPACENAME ciąg nazwą przestrzeni nazw usługi Event Grid i TOPICNAME nazwą tematu.

    publish_operation_uri=https://NAMESPACENAME.eastus-1.eventgrid.azure.net/topics/TOPICNAME:publish?api-version=2023-06-01-preview
    
  4. Utwórz przykładowe zdarzenie zgodne z rozwiązaniem CloudEvents :

    event=' { "specversion": "1.0", "id": "'"$RANDOM"'", "type": "com.yourcompany.order.ordercreatedV2", "source" : "/mycontext", "subject": "orders/O-234595", "time": "'`date +%Y-%m-%dT%H:%M:%SZ`'", "datacontenttype" : "application/json", "data":{ "orderId": "O-234595", "url": "https://yourcompany.com/orders/o-234595"}} '
    

    Element data to ładunek zdarzenia. W tym polu można umieścić dowolną poprawnie sformułowaną zawartość JSON. Aby uzyskać więcej informacji na temat właściwości (nazywanych również atrybutami kontekstu), które mogą przejść w zdarzeniu, zobacz specyfikacje CloudEvents .

  5. Użyj narzędzia CURL, aby wysłać zdarzenie do tematu. CURL to narzędzie, które wysyła żądania HTTP.

    curl -X POST -H "Content-Type: application/cloudevents+json" -H "Authorization:SharedAccessKey $key" -d "$event" $publish_operation_uri
    

    Przejdź do strony Przestrzeń nazw usługi Event Hubs w witrynie Azure Portal, odśwież stronę i sprawdź, czy licznik komunikatów przychodzących na wykresie wskazuje, że zdarzenie zostało odebrane.

    Zrzut ekranu przedstawiający stronę centrum zdarzeń z wykresem przedstawiającym odebrane zdarzenie.

Następne kroki

W tym artykule utworzono i skonfigurowano przestrzeń nazw usługi Event Grid oraz zasoby usługi Event Hubs. Aby uzyskać instrukcje krok po kroku dotyczące odbierania zdarzeń z centrum zdarzeń, zobacz następujące samouczki: