Megosztás a következőn keresztül:


Oktatóanyag: Egyéni események átirányítása hibrid Azure Relay-kapcsolatokhoz az Azure CLI és az Event Grid használatával

A hibrid Azure Relay-kapcsolat az egyik támogatott eseménykezelő. A hibrid kapcsolatok eseménykezelőként való használatára akkor lehet szükség, ha olyan alkalmazásokból kell eseményeket kezelnie, amelyek nem rendelkeznek nyilvános végponttal. A vállalati hálózaton belül is lehetnek ilyen alkalmazások. Ebben a cikkben létrehozunk egy egyéni témakört az Azure CLI-vel, feliratkozunk az egyéni témakörre, majd elindítjuk az eseményt az eredmény megtekintéséhez. Az eseményeket hibrid kapcsolatokba küldjük.

Feljegyzés

Ha még nem ismerkedik az Azure Event Gridszel, tekintse meg az Azure Event Gridet , amely áttekintést nyújt a szolgáltatásról, mielőtt végigvezeti az oktatóanyagon.

Előfeltételek

  • Ez a cikk az Azure CLI 2.0.56-os vagy újabb verzióját igényli. Az Azure Cloud Shell használata esetén a legújabb verzió már telepítve van.

Erőforráscsoport létrehozása

Az Event Grid-témakörök Azure-erőforrások, amelyeket egy Azure-erőforráscsoportba kell helyezni. Az erőforráscsoport egy olyan logikai gyűjtemény, amelyben a rendszer üzembe helyezi és kezeli az Azure-erőforrásokat.

Hozzon létre egy erőforráscsoportot az az group create paranccsal.

A következő példában létrehozunk egy gridResourceGroup nevű erőforráscsoportot a westus2 helyen.

az group create --name gridResourceGroup --location westus2

Egyéni témakör létrehozása

Az Event Grid-témakör egy felhasználó által definiált végpontot biztosít, amelybe az eseményeket közzéteheti. Az alábbi példa az erőforráscsoportban létrehozza az egyéni témakört. A <topic_name> elemet cserélje le az egyéni témakör egyedi nevére. Az Event Grid-témakör nevének egyedinek kell lennie, mert egy DNS-bejegyzés jelöli.

az eventgrid topic create --name <topic_name> -l westus2 -g gridResourceGroup

Feliratkozás egyéni témakörre

Előfizethet egy Event Grid-témakörre, hogy elmondja az Event Gridnek, hogy mely eseményeket szeretné nyomon követni. Az alábbi példa feliratkozik a létrehozott egyéni témakörre, és átadja a végpont hibrid kapcsolatának erőforrás-azonosítóját. A hibrid kapcsolat azonosítója a következő formátumot követi:

/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.Relay/namespaces/<relay-namespace>/hybridConnections/<hybrid-connection-name>

Az alábbi szkript lekéri a Relay-névtér erőforrás-azonosítóját. A hibrid kapcsolat azonosítóját hozza létre, és előfizet egy Event Grid-témakörre. A szkript a végpontot hybridconnection típusúra állítja be, és a hibrid kapcsolat azonosítóját használja végpontként.

relaynsname=<namespace-name>
relayrg=<resource-group-for-relay>
hybridname=<hybrid-name>

relayid=$(az relay namespace show --resource-group $relayrg --name $relaynsname --query id --output tsv)
hybridid="$relayid/hybridConnections/$hybridname"
topicid=$(az eventgrid topic show --name <topic_name> -g gridResourceGroup --query id --output tsv)

az eventgrid event-subscription create \
  --source-resource-id $topicid \
  --name <event_subscription_name> \
  --endpoint-type hybridconnection \
  --endpoint $hybridid \
  --expiration-date "<yyyy-mm-dd>"

Vegye figyelembe, hogy az előfizetéshez lejárati dátum tartozik.

Alkalmazás létrehozása események feldolgozásához

Olyan alkalmazásra van szüksége, amely eseményeket tud lekérni a hibrid kapcsolatból. Ezt a műveletet a Microsoft Azure Event Grid hibrid kapcsolat C# fogyasztói mintája hajtja végre. Már befejezte az előfeltételként felsorolt lépéseket.

  1. Győződjön meg arról, hogy a Visual Studio 2019-et vagy újabb verziót használja.

  2. Klónozza az adattárat a helyi gépre.

  3. Töltse be a HybridConnectionConsumer projektet a Visual Studióban.

  4. A Program.cs fájlban cserélje le a <relayConnectionString> és <hybridConnectionName> elemeket a továbbítási kapcsolat sztringjére és a létrehozott hibrid kapcsolatra.

  5. Fordítsa és futtassa az alkalmazást a Visual Studióból.

Fontos

A kapcsolati sztring használatával hitelesítjük az Azure Relay névterét az oktatóanyag egyszerűségéhez. Javasoljuk, hogy éles környezetben használja a Microsoft Entra ID-hitelesítést. Alkalmazás használatakor engedélyezheti az alkalmazás felügyelt identitását, és hozzárendelheti az identitást egy megfelelő szerepkörhöz (Azure Relay-tulajdonos, Azure Relay-figyelő vagy Azure Relay-küldő) a Relay névtérben. További információ: Felügyelt identitás hitelesítése a Microsoft Entra-azonosítóval az Azure Relay-erőforrások eléréséhez.

Esemény elküldése a témakörbe

Aktiváljunk egy eseményt, és lássuk, hogyan küldi el az üzenetet az Event Grid a végpontnak. Ez a cikk bemutatja, hogyan aktiválhatja az eseményt az Azure CLI használatával. Használhatja az Event Grid közzétételi alkalmazást is.

Először szükségünk lesz az egyéni témakör URL-címére és kulcsára. A <topic_name> helyett használja ismét az egyéni témakör nevét.

endpoint=$(az eventgrid topic show --name <topic_name> -g gridResourceGroup --query "endpoint" --output tsv)
key=$(az eventgrid topic key list --name <topic_name> -g gridResourceGroup --query "key1" --output tsv)

A folyamat leegyszerűsítése érdekében használjon mintául szolgáló eseményadatokat, amelyeket elküldhet az egyéni témakörbe. Egy alkalmazás vagy Azure-szolgáltatás általában eseményadatokat küld el. A CURL egy olyan segédprogram, amely HTTP-kéréseket küld. Ebben a cikkben a CURL használatával küldjük el az eseményt az egyéni témakörbe.

event='[ {"id": "'"$RANDOM"'", "eventType": "recordInserted", "subject": "myapp/vehicles/motorcycles", "eventTime": "'`date +%Y-%m-%dT%H:%M:%S%z`'", "data":{ "make": "Ducati", "model": "Monster"},"dataVersion": "1.0"} ]'
curl -X POST -H "aeg-sas-key: $key" -d "$event" $endpoint

A figyelőalkalmazásnak meg kell kapnia az eseményüzenetet.

Az erőforrások eltávolítása

Ha tovább kívánja használni az eseményt, akkor ne törölje a cikkben létrehozott erőforrásokat. Ellenkező esetben a következő paranccsal törölheti a cikkben létrehozott erőforrásokat.

az group delete --name gridResourceGroup

Következő lépések

Most, hogy megismerkedett vele, hogyan hozhat létre témaköröket és eseményfeliratkozásokat, bővebben is tájékozódhat arról, hogy miben nyújthat segítséget az Event Grid: