Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
In deze zelfstudie gebruikt u een gegevensstroom om berichten van de MQTT-broker door te sturen naar een Event Hub in de Azure Event Hubs-service. De Event Hub kan de gegevens leveren aan andere cloudservices voor opslag en analyse. In de volgende zelfstudie gebruikt u een realtime dashboard om de gegevens te visualiseren.
Vereiste voorwaarden
Voordat u met deze zelfstudie begint, moet u de zelfstudie voltooien : OPC UA-assets toevoegen aan uw Azure IoT Operations-cluster.
Welk probleem gaan we oplossen?
Als u een hulpprogramma zoals Microsoft Fabric Real-Time Dashboard wilt gebruiken om uw OPC UA-gegevens te analyseren, moet u de gegevens verzenden naar een cloudservice zoals Azure Event Hubs. Een gegevensstroom kan zich abonneren op een MQTT-onderwerp en de berichten doorsturen naar een Event Hub in uw Azure Event Hubs-naamruimte. In de volgende zelfstudie ziet u hoe u realtime dashboards gebruikt om uw gegevens te visualiseren en te analyseren.
Uw omgevingsvariabelen instellen
Zorg ervoor dat de volgende omgevingsvariabelen zijn ingesteld in uw shell:
Aanbeveling
Als u de door de gebruiker toegewezen beheerde identiteiten wilt weergeven die u in uw resourcegroep hebt gemaakt, voert u de volgende opdracht uit in uw shell: az identity list -g $RESOURCE_GROUP -o table
# 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>
# The name of the user-assigned managed identity that you created for cloud connections
USER_ASSIGNED_MI_NAME=<cloud-connection-uami>
Een Event Hubs-naamruimte maken
Als u een Event Hubs-naamruimte en een Event Hub wilt maken, voert u de volgende Azure CLI-opdrachten uit in uw shell. Met deze opdrachten maakt u de Event Hubs-naamruimte in dezelfde resourcegroep als uw Kubernetes-cluster:
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
Voer de volgende Azure CLI-opdrachten uit om de Azure IoT Operations-extensie in uw cluster toegang te verlenen tot uw Event Hubs-naamruimte:
EVENTHUBRESOURCE=$(az eventhubs namespace show --resource-group $RESOURCE_GROUP --namespace-name ${CLUSTER_NAME:0:24} --query id -o tsv)
PRINCIPAL=$(az identity show --name $USER_ASSIGNED_MI_NAME --resource-group $RESOURCE_GROUP --query principalId --output tsv)
az role assignment create --role "Azure Event Hubs Data Sender" --assignee $PRINCIPAL --scope $EVENTHUBRESOURCE
Een gegevensstroom maken om berichten naar een Event Hub te verzenden
Gebruik de webgebruikersinterface voor bewerkingen om een gegevensstroom in uw cluster te maken en te configureren die:
- Wijzigt de naam van het
temperatureveld in het binnenkomende bericht inTemperatureF. - Hiermee voegt u een veld
AssetIdtoe dat de naam van de asset bevat. - Stuurt de getransformeerde berichten van het MQTT-onderwerp door naar de Event Hub die u hebt gemaakt.
De gegevensstroom maken:
Navigeer naar de webinterface van de operationele ervaring en zoek uw instantie. Selecteer vervolgens Gegevensstroomeindpunten en selecteer + Nieuw in de tegel Azure Event Hubs:
Voer in het eindpunt nieuwe gegevensstroom maken in: Azure Event Hubs, voer event-hubs-target in als de naam en zoek de Event Hubs-naamruimte die u in het veld Host hebt gemaakt.
Selecteer door de gebruiker toegewezen beheerde identiteit als verificatiemethode. Voeg de client-id en tenant-id toe van de door de gebruiker toegewezen beheerde identiteit die u gebruikt voor cloudverbindingen. Gebruik de volgende CLI-opdracht om de client-id en tenant-id van de door de gebruiker toegewezen beheerde identiteiten in uw resourcegroep weer te geven:
az identity list -g $RESOURCE_GROUP -o tableKlik op Toepassen:
Uw nieuwe gegevensstroomeindpunt wordt gemaakt en wordt weergegeven in de lijst op de pagina Eindpunten van gegevensstroom.
Selecteer Gegevensstromen en selecteer vervolgens + Gegevensstroom maken. Op de <pagina nieuwe gegevensstroom> wordt het volgende weergegeven:
In de gegevensstroomeditor, selecteer Selecteer bron. Selecteer vervolgens de thermostaatasset die u eerder hebt gemaakt en selecteer Doorgaan.
In de gegevensstroomeditor Selecteer doel. Selecteer vervolgens het eindpunt event-hubs-target dat u eerder hebt gemaakt en selecteer Doorgaan.
Voer op de volgende pagina destinationeh in als het onderwerp. Het onderwerp verwijst naar de hub die u hebt gemaakt in de Event Hubs-naamruimte. Selecteer de optie Toepassen. Uw gegevensstroom heeft nu de thermostaatasset als bron en een hub in uw Event Hubs-naamruimte als bestemming.
Als u een transformatie wilt toevoegen, selecteert u Transformatie toevoegen (optioneel).
Als u de naam van het
temperatureveld in het binnenkomende bericht wilt wijzigen, selecteert u + Toevoegen in de tegel Naam wijzigen .Voeg de volgende hernoemingstransformatie toe:
Gegevenspunt Nieuwe gegevenspuntnaam temperatuur. Waarde ThermostaatTemperatuurF Om de asset-ID uit de metagegevens van het bericht te kopiëren, voegt u de volgende hernoemtransformatie toe:
Gegevenspunt Nieuwe gegevenspuntnaam $metadata.user_property.externalAssetId Assetnummer De naamtransformatie ziet eruit als de volgende schermafbeelding.
Selecteer de optie Toepassen.
De gegevensstroomeditor ziet er nu als volgt uit:
Om de gegevensstroom te starten, voert u tutorial-data-flow in als naam en selecteert u Opslaan. Na een paar minuten verandert de inrichtingsstatus in Geslaagd. De gegevensstroom wordt nu uitgevoerd in uw cluster.
Uw gegevensstroom abonneert zich op een MQTT-onderwerp om berichten van de thermostaatasset te ontvangen. De naam van sommige velden in het bericht wordt gewijzigd en de getransformeerde berichten worden doorgestuurd naar de Event Hub die u hebt gemaakt.
Controleren of gegevens stromen
Als u wilt controleren of de gegevens naar de cloud stromen, kunt u uw Event Hubs-exemplaar bekijken in Azure Portal. Mogelijk moet u enkele minuten wachten totdat de gegevensstroom is gestart en berichten naar de Event Hub worden verzonden.
Als berichten naar het exemplaar stromen, ziet u het aantal binnenkomende berichten op de pagina Overzicht van het exemplaar:
Als berichten stromen, kunt u Data Explorer gebruiken om de berichten weer te geven:
Aanbeveling
Mogelijk moet u uzelf toewijzen aan de rol Azure Event Hubs Data Receiver voor de Event Hubs-naamruimte om de berichten weer te geven.
Hoe hebben we het probleem opgelost?
In deze zelfstudie hebt u een gegevensstroom gebruikt om een MQTT-onderwerp te verbinden met een Event Hub in uw Azure Event Hubs-naamruimte. In de volgende zelfstudie gebruikt u Real-Time Intelligence van Microsoft Fabric om de gegevens te visualiseren.
De hulpbronnen opschonen
Als u doorgaat met de volgende tutorial, bewaar al uw resources.
Als u de Implementatie van Azure IoT Operations wilt verwijderen, maar uw cluster wilt behouden, gebruikt u de opdracht az iot ops delete :
az iot ops delete --cluster $CLUSTER_NAME --resource-group $RESOURCE_GROUP
Als u alle resources wilt verwijderen die u voor deze quickstart hebt gemaakt, verwijdert u het Kubernetes-cluster waarin u Azure IoT Operations hebt geïmplementeerd en verwijdert u vervolgens de Azure-resourcegroep die het cluster bevat.
Als u Codespaces voor deze quickstarts hebt gebruikt, verwijdert u uw Codespace uit GitHub.
Opmerking
De resourcegroep bevat de Event Hubs-naamruimte die u in deze zelfstudie hebt gemaakt.