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).
Przejdź do witryny Azure Portal.
Na pasku wyszukiwania w temacie wpisz
Event Grid Namespaces
, a następnie wybierz pozycjęEvent Grid Namespaces
z wyników.Na stronie Przestrzenie nazw usługi Event Grid wybierz pozycję + Utwórz na pasku poleceń.
Na stronie Tworzenie przestrzeni nazw wykonaj następujące kroki:
- Wybierz subskrypcję platformy Azure, w której chcesz utworzyć przestrzeń nazw.
- Utwórz nową grupę zasobów, wybierając pozycję Utwórz nową lub wybierając istniejącą grupę zasobów.
- Wprowadź nazwę przestrzeni nazw.
- Wybierz lokalizację, w której chcesz utworzyć grupę zasobów.
- Następnie wybierz pozycję Przegląd + utwórz.
- Na stronie Przeglądanie i tworzenie wybierz pozycję Utwórz.
Na stronie Wdrożenie wybierz pozycję Przejdź do zasobu po pomyślnym wdrożeniu.
Pobieranie klucza dostępu
- Na stronie Przestrzeń nazw usługi Event Grid wybierz pozycję Klucze dostępu w menu po lewej stronie.
- Wybierz przycisk kopiowania obok klucza dostępu.
- 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:
- 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.
- 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.
- 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.
Na stronie Przestrzeń nazw usługi Event Grid wybierz pozycję Tożsamość w menu po lewej stronie.
Na stronie Tożsamość wybierz pozycję Wł. dla pozycji Stan.
Z paska poleceń wybierz opcję Zapisz.
Tworzenie tematu w przestrzeni nazw
Utwórz temat używany do przechowywania wszystkich zdarzeń publikowanych w punkcie końcowym przestrzeni nazw.
- Wybierz pozycję Tematy w menu po lewej stronie.
- Na stronie Tematy wybierz pozycję + Temat na pasku poleceń.
- Na stronie Tworzenie tematu wykonaj następujące kroki:
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.
- Wpisz event hubs na pasku wyszukiwania i wybierz pozycję Event Hubs.
- Na stronie Event Hubs wybierz pozycję + Utwórz na pasku poleceń.
- Na stronie Tworzenie przestrzeni nazw wykonaj następujące kroki:
- Wybierz subskrypcję platformy Azure użytą do utworzenia przestrzeni nazw usługi Event Grid.
- Wybierz używaną wcześniej grupę zasobów.
- Wprowadź nazwę przestrzeni nazw usługi Event Hubs.
- Wybierz tę samą lokalizację , która została użyta dla przestrzeni nazw usługi Event Grid.
- Wybierz pozycję Podstawowa dla warstwy cenowej .
- Wybierz pozycję Przejrzyj i utwórz.
- Na stronie Przegląd wybierz pozycję Utwórz.
- 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
- 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.
- Wybierz pozycję Dodaj -> Dodaj przypisanie roli na pasku poleceń.
- 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.
- Na karcie Członkowie wybierz pozycję Tożsamość zarządzana dla typu, a następnie wybierz pozycję + Wybierz członków.
- 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.
- Na stronie Wybieranie tożsamości zarządzanych wybierz pozycję Wybierz.
- Teraz na stronie Dodawanie przypisania roli wybierz pozycję Przejrzyj i przypisz.
- Na stronie Przeglądanie i przypisywanie wybierz pozycję Przejrzyj i przypisz.
Tworzenie centrum zdarzeń
- Na stronie Przestrzeń nazw usługi Event Hubs wybierz pozycję Event Hubs w menu po lewej stronie.
- Na stronie Event Hubs wybierz pozycję + Centrum zdarzeń na pasku poleceń.
- Na stronie Tworzenie centrum zdarzeń wprowadź nazwę centrum zdarzeń, a następnie wybierz pozycję Przejrzyj i utwórz.
- 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.
- 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.
- Na stronie Przestrzeń nazw usługi Event Grid wybierz pozycję Tematy w menu po lewej stronie.
- Na stronie Tematy wybierz temat utworzony w poprzednim kroku.
- Wybierz pozycję + Subskrypcja na pasku poleceń.
- Na stronie Tworzenie subskrypcji zdarzeń wykonaj następujące kroki:
- Na karcie Podstawowe wprowadź nazwę subskrypcji zdarzeń.
- Wybierz pozycję Wypchnij w trybie dostarczania zdarzeń.
- Upewnij się, że centrum zdarzeń zostało wybrane dla typu punktu końcowego.
- Wybierz pozycję Konfiguruj punkt końcowy.
- Na stronie Wybieranie centrum zdarzeń wykonaj następujące kroki:
- Na stronie Tworzenie subskrypcji wybierz pozycję Przypisane przez system dla typu tożsamości zarządzanej.
- 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.
Uruchom usługę Cloud Shell w witrynie Azure Portal. Przejdź do powłoki Bash.
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
Zadeklaruj zmienną do przechowywania identyfikatora URI operacji publikowania. Zastąp
NAMESPACENAME
ciąg nazwą przestrzeni nazw usługi Event Grid iTOPICNAME
nazwą tematu.publish_operation_uri=https://NAMESPACENAME.eastus-1.eventgrid.azure.net/topics/TOPICNAME:publish?api-version=2023-06-01-preview
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 .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.
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: