Dela via


Snabbstart: Skicka tillgångstelemetri till molnet med hjälp av ett dataflöde

Viktigt!

Förhandsversion av Azure IoT Operations – aktiverad av Azure Arc är för närvarande i förhandsversion. Du bör inte använda den här förhandsgranskningsprogramvaran i produktionsmiljöer.

Du måste distribuera en ny Azure IoT Operations-installation när en allmänt tillgänglig version görs tillgänglig. Du kommer inte att kunna uppgradera en förhandsgranskningsinstallation.

Juridiska villkor för Azure-funktioner i betaversion, förhandsversion eller som av någon annan anledning inte har gjorts allmänt tillgängliga ännu finns i kompletterande användningsvillkor för Microsoft Azure-förhandsversioner.

I den här snabbstarten använder du ett dataflöde för att vidarebefordra meddelanden från MQTT-koordinatorn till en händelsehubb i Azure Event Hubs-tjänsten. Händelsehubben kan leverera data till andra molntjänster för lagring och analys. I nästa snabbstart använder du en realtidsinstrumentpanel för att visualisera data.

Förutsättningar

Innan du påbörjar den här snabbstarten måste du slutföra följande snabbstarter:

Vilket problem kommer vi att lösa?

Om du vill använda ett verktyg som Realtidsinstrumentpanel för att analysera dina OPC UA-data måste du skicka data till en molntjänst som Azure Event Hubs. Ett dataflöde kan prenumerera på ett MQTT-ämne och vidarebefordra meddelandena till en händelsehubb i ditt Azure Event Hubs-namnområde. Nästa snabbstart visar hur du använder realtidsinstrumentpaneler för att visualisera och analysera dina data.

Ange miljövariabler

Om du använder Codespaces-miljön har de miljövariabler som krävs redan angetts och du kan hoppa över det här steget. Annars anger du följande miljövariabler i gränssnittet:

# The name of the resource group where your Kubernetes cluster is deployed
RESOURCE_GROUP=<resource-group-name>

# The name of your Kubernetes cluster
CLUSTER_NAME=<kubernetes-cluster-name>

Skapa ett Event Hubs-namnområde

Om du vill skapa ett Event Hubs-namnområde och en händelsehubb kör du följande Azure CLI-kommandon i gränssnittet. Dessa kommandon skapar Event Hubs-namnområdet i samma resursgrupp som ditt Kubernetes-kluster:

az eventhubs namespace create --name ${CLUSTER_NAME:0:24} --resource-group $RESOURCE_GROUP --disable-local-auth true

az eventhubs eventhub create --name destinationeh --resource-group $RESOURCE_GROUP --namespace-name ${CLUSTER_NAME:0:24} --retention-time 1 --partition-count 1 --cleanup-policy Delete

Om du vill ge Azure IoT Operations-tillägget i klustret åtkomst till event hubs-namnområdet kör du följande Azure CLI-kommandon:

EVENTHUBRESOURCE=$(az eventhubs namespace show --resource-group $RESOURCE_GROUP --namespace-name ${CLUSTER_NAME:0:24} --query id -o tsv)

PRINCIPAL=$(az k8s-extension list --resource-group $RESOURCE_GROUP --cluster-name $CLUSTER_NAME --cluster-type connectedClusters -o tsv --query "[?extensionType=='microsoft.iotoperations'].identity.principalId")

az role assignment create --role "Azure Event Hubs Data Sender" --assignee $PRINCIPAL --scope $EVENTHUBRESOURCE

Skapa ett dataflöde för att skicka telemetri till en händelsehubb

Om du vill skapa och konfigurera ett dataflöde i klustret kör du följande kommandon i gränssnittet. Det här dataflödet:

  • Byter namn på fältet Tag 10 i det inkommande meddelandet till Humidity.
  • Byter namn på fältet temperature i det inkommande meddelandet till Temperature.
  • Lägger till ett fält med namnet AssetId som innehåller värdet för meddelandeegenskapen externalAssetId .
  • Vidarebefordrar de transformerade meddelandena från MQTT-ämnet till den händelsehubb som du skapade.
wget https://raw.githubusercontent.com/Azure-Samples/explore-iot-operations/main/samples/quickstarts/dataflow.yaml
sed -i 's/<NAMESPACE>/'"${CLUSTER_NAME:0:24}"'/' dataflow.yaml

kubectl apply -f dataflow.yaml

Kontrollera att data flödar

Om du vill kontrollera att data flödar till molnet kan du visa din Event Hubs-instans i Azure Portal. Du kan behöva vänta i flera minuter för att dataflödet ska starta och för att meddelanden ska flöda till händelsehubben.

Om meddelanden flödar till instansen kan du se antalet inkommande meddelanden på instansens översiktssida :

Skärmbild som visar översiktssidan för Event Hubs-instansen med inkommande meddelanden.

Om meddelanden flödar kan du använda Datautforskaren för att visa meddelandena:

Skärmbild av sidan Event Hubs-instans **Datautforskaren**.

Dricks

Du kan behöva tilldela dig själv rollen Azure Event Hubs Data Receiver för Event Hubs-namnområdet för att visa meddelandena.

Hur löste vi problemet?

I den här snabbstarten använde du ett dataflöde för att ansluta ett MQTT-ämne till en händelsehubb i ditt Azure Event Hubs-namnområde. I nästa snabbstart använder du Microsoft Fabric Realtidsinformation för att visualisera data.

Rensa resurser

Om du fortsätter till nästa snabbstart behåller du alla dina resurser.

Om du vill ta bort Azure IoT Operations-distributionen men behålla klustret använder du kommandot az iot ops delete :

az iot ops delete --cluster $CLUSTER_NAME --resource-group $RESOURCE_GROUP

Om du vill ta bort alla resurser som du skapade för den här snabbstarten tar du bort Kubernetes-klustret där du distribuerade Azure IoT-åtgärder och tar sedan bort azure-resursgruppen som innehöll klustret.

Om du använde Codespaces för dessa snabbstarter tar du bort ditt Codespace från GitHub.

Kommentar

Resursgruppen innehåller event hubs-namnområdet som du skapade i den här snabbstarten.

Gå vidare

Snabbstart: Hämta insikter från din tillgångstelemetri