Avvio rapido: Configurare il cluster

In questo avvio rapido si configurano le risorse seguenti nel cluster di Operazioni di Azure IoT:

  • Dispositivo che definisce una connessione a un server OPC PLC simulato che simula un forno in un panificio.
  • Un asset che rappresenta il forno e definisce i punti dati esposti dal forno.
  • Un flusso di dati che manipola i messaggi dal forno simulato.

Nel contesto delle operazioni di Azure IoT, un asset è una rappresentazione logica di un dispositivo fisico o di un sistema che si vuole monitorare o controllare.

I server OPC UA sono applicazioni software che comunicano con gli asset. I punti dati OPC UA sono valori esposti dai server OPC UA. I punti dati OPC UA possono fornire dati in tempo reale o cronologici sullo stato, le prestazioni, la qualità o la condizione degli asset.

In questo avvio rapido si usa un file Bicep per configurare l'istanza di Operazioni di Azure IoT.

Suggerimento

Se si preferisce un'esercitazione più lunga che illustra gli stessi passaggi in modo più approfondito e include dettagli aggiuntivi, ad esempio la configurazione della sicurezza, vedere Esercitazione: Aggiungere asset OPC UA al cluster operazioni IoT di Azure.

Prerequisiti

Disporre di un'istanza di Operazioni di Azure IoT distribuite in un cluster Kubernetes. L'avvio rapido: Eseguire Operazioni di Azure IoT in GitHub Codespaces con K3s fornisce istruzioni semplici per distribuire un'istanza di Operazioni di IoT Azure che è possibile usare per gli avvii rapidi.

Se non specificato diversamente, è possibile eseguire i comandi della console in questo avvio rapido in un ambiente Bash o PowerShell.

Quale problema si risolverà?

I dati esposti dai server OPC UA possono avere una struttura complessa e possono essere difficili da comprendere. Le operazioni IoT di Azure consentono di modellare gli asset OPC UA come punti dati, eventi e azioni. Questa modellazione semplifica la comprensione dei dati e l'uso in processi downstream, ad esempio il broker MQTT e i flussi di dati. I flussi di dati consentono di modificare e instradare i dati ai servizi cloud, ad esempio Hub eventi di Azure. In questo avvio rapido, il flusso di dati modifica i nomi di alcuni campi nel payload e aggiunge un ID risorsa ai messaggi.

Distribuire il simulatore OPC PLC

Questo avvio rapido usa il simulatore OPC PLC per generare dati di esempio. Per distribuire il simulatore OPC PLC, usare il comando seguente:

kubectl apply -f https://raw.githubusercontent.com/Azure-Samples/explore-iot-operations/main/samples/quickstarts/opc-plc-deployment.yaml

Attenzione

Questa configurazione usa un certificato di istanza dell'applicazione autofirmato. Non usare questa configurazione in un ambiente di produzione. Per altre informazioni, vedere Configurare l'infrastruttura di certificati OPC UA per il connettore per OPC UA.


Impostare le variabili di ambiente

Se si usa l'ambiente Codespaces, le variabili di ambiente necessarie sono già impostate ed è possibile ignorare questo passaggio. In caso contrario, impostare le variabili di ambiente seguenti nella shell:

# Your subscription ID
SUBSCRIPTION_ID=<subscription-id>

# 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>

Configurare il cluster

Usare i comandi seguenti per scaricare ed eseguire il file Bicep che configura l'istanza di Operazioni di Azure IoT. Il file Bicep:

  • Aggiunge un dispositivo che si connette al simulatore OPC PLC.
  • Aggiunge un asset che rappresenta il forno e definisce i punti dati esposti dal forno.
  • Aggiunge un flusso di dati che manipola i messaggi dal forno simulato.
  • Crea un'istanza di Hub eventi di Azure per ricevere i dati.
wget https://raw.githubusercontent.com/Azure-Samples/explore-iot-operations/main/samples/quickstarts/quickstart.bicep -O quickstart.bicep

AIO_EXTENSION_NAME=$(az k8s-extension list -g $RESOURCE_GROUP --cluster-name $CLUSTER_NAME --cluster-type connectedClusters --query "[?extensionType == 'microsoft.iotoperations'].id" -o tsv | awk -F'/' '{print $NF}')
AIO_INSTANCE_NAME=$(az iot ops list -g $RESOURCE_GROUP --query "[0].name" -o tsv)
CUSTOM_LOCATION_NAME=$(az iot ops list -g $RESOURCE_GROUP --query "[0].extendedLocation.name" -o tsv | awk -F'/' '{print $NF}')

az deployment group create --subscription $SUBSCRIPTION_ID --resource-group $RESOURCE_GROUP --template-file quickstart.bicep --parameters clusterName=$CLUSTER_NAME customLocationName=$CUSTOM_LOCATION_NAME aioExtensionName=$AIO_EXTENSION_NAME aioInstanceName=$AIO_INSTANCE_NAME adrNamespaceName=myqsnamespace

Rivedere la configurazione

Il file Bicep ha configurato le risorse seguenti:

  • Un dispositivo che si connette al simulatore OPC PLC.
  • Un asset che rappresenta il forno e definisce i punti dati esposti dal forno.
  • Due flussi di dati che elaborano i messaggi dal forno simulato.
  • Spazio dei nomi Hub eventi di Azure che contiene un hub di destinazione per i flussi di dati.

Per visualizzare il dispositivo, l'asset e i flussi di dati, passare all'interfaccia utente dell'esperienza operativa nel browser e accedere con le credenziali dell'ID Microsoft Entra. Poiché si usa una nuova distribuzione, non sono ancora presenti siti. È possibile trovare il cluster creato nell'avvio rapido precedente selezionando Visualizza istanze non assegnate. Nell'esperienza operativa, un'istanza rappresenta un cluster in cui sono state distribuite le Operazioni di Azure IoT.

Screenshot nell'esperienza di Operazioni che mostra le istanze non assegnate.

Prima di continuare, assicurarsi che tutte le risorse siano nello stato Disponibile . La creazione e la visualizzazione delle risorse come disponibili nell'interfaccia utente potrebbero richiedere alcuni minuti.

Schermata nell'interfaccia operativa che mostra tutte le risorse come disponibili.

Il dispositivo opc-ua-connector definisce la connessione al simulatore OPC PLC:

Screenshot nell'esperienza di Operazioni che mostra un elenco di dispositivi.

L'asset del forno definisce i punti dati esposti dal forno:

Screenshot nell'esperienza di Operazioni che mostra un elenco di asset.

I flussi di dati definiscono il modo in cui i messaggi del forno simulato vengono elaborati e indirizzati a Hub eventi nel cloud:

Screenshot nell'esperienza di Operazioni che mostra un elenco di flussi di dati.

Lo screenshot seguente mostra come viene configurato il flusso di dati di conversione della temperatura:

Screenshot nell'esperienza di Operazioni che mostra il calcolo della conversione della temperatura.

Verificare che i dati vengano trasmessi a Hub eventi

Per verificare che i dati vengano trasmessi al cloud, è possibile visualizzare l'istanza di Hub eventi nel portale di Azure. Potrebbe essere necessario attendere alcuni minuti prima che il flusso di dati venga avviato e che i messaggi vengano trasmessi all'hub eventi.

La configurazione Bicep applicata in precedenza ha creato un hub e uno spazio dei nomi di Hub eventi usati come destinazione dal flusso di dati. Per visualizzare lo spazio dei nomi e l'hub, passare al gruppo di risorse nel portale di Azure che contiene l'istanza di Operazioni IoT e quindi selezionare lo spazio dei nomi di Hub eventi.

Se i messaggi vengono trasmessi all'istanza, è possibile visualizzare il conteggio dei messaggi in arrivo nella pagina Panoramica dell'istanza:

Screenshot che mostra la pagina di panoramica dell'istanza di Hub eventi con i messaggi in arrivo.

Se i messaggi vengono trasmessi, è possibile usare Esplora dati per visualizzare i messaggi:

Screenshot della pagina **Esplora dati** dell'istanza di Hub eventi.

Suggerimento

Potrebbe essere necessario assegnare a se stessi il ruolo Ricevitore di dati di Hub eventi di Azure per lo spazio dei nomi di Hub eventi per visualizzare i messaggi.

Come è stato risolto il problema?

In questo avvio rapido, è stato usato un file bicep per configurare l'istanza di Operazioni di Azure IoT con un dispositivo, un asset e un flusso di dati. La configurazione elabora e instrada i dati da un forno simulato. Il flusso di dati nella configurazione instrada i messaggi a un'istanza di Hub eventi di Azure.

Pulire le risorse

Se si continua con l'avvio rapido successivo, mantenere tutte le risorse.

Se si fa una pausa prima di passare alla guida rapida successiva, si consiglia di arrestare il codespace per evitare costi inutili. Per altre informazioni, vedere Arresto e avvio di uno spazio di codice.

Per eliminare tutte le risorse create per questa guida introduttiva, rimuovere il gruppo di risorse Azure che contiene il cluster connesso Azure Arc e altre risorse usate in questa guida introduttiva. Quindi elimina il tuo codespace e i segreti che hai creato per esso da GitHub. Per eliminare lo spazio di codice e i segreti, vedere Eliminazione di uno spazio di codice ed Eliminazione di segreti.

Passaggio successivo