Inicio rápido: Configuración del clúster
En este inicio rápido, configurará los siguientes recursos en el clúster de Operaciones de IoT de Azure:
- Un punto de conexión de recurso que define una conexión a un servidor OPC PLC simulado que simula un horno en una panadería.
- Un recurso que representa el horno y define los puntos de datos que expone el horno.
- Flujo de datos que manipula los mensajes del horno simulado.
Un recurso es un dispositivo físico o una entidad lógica que representa un dispositivo, una máquina, un sistema o un proceso. Por ejemplo, un recurso físico podría ser una bomba, un motor, un tanque o una línea de producción. Un recurso lógico que usted define puede tener propiedades y telemetría de flujo o generar eventos.
Los servidores OPC UA son aplicaciones de software que se comunican con recursos. Las etiquetas de OPC UA son puntos de datos que los servidores OPC UA exponen. Las etiquetas de OPC UA pueden proporcionar datos históricos o en tiempo real sobre el estado, el rendimiento, la calidad o la condición de los recursos.
En este inicio rápido, usará un archivo de Bicep para configurar la instancia de Azure IoT Operations.
Requisitos previos
Debe tener una instancia de Operaciones de IoT de Azure implementada en un clúster de Kubernetes. El inicio rápido: Ejecución de Operaciones de IoT de Azure en GitHub Codespaces con K3s proporciona instrucciones sencillas para implementar una instancia de Operaciones de IoT de Azure que se puede usar para los inicios rápidos.
A menos que se indique lo contrario, puede ejecutar los comandos de la consola en este inicio rápido en un entorno de Bash o PowerShell.
¿Qué problema resolveremos?
Los datos que los servidores OPC UA exponen pueden tener una estructura compleja y ser difíciles de entender. Operaciones de IoT de Azure proporciona una manera de modelar los recursos de OPC UA, como las etiquetas, los eventos y las propiedades. Este modelado facilita la comprensión de los datos y su uso en procesos de bajada, como el corredor MQTT y las canalizaciones del procesador de datos. Los flujos de datos permiten manipular y enrutar datos a servicios en la nube, como Azure Event Hubs. En este inicio rápido, el flujo de datos cambia los nombres de algunos campos de la carga y agrega un identificador de recurso a los mensajes.
Implementación del simulador de OPC PLC
Este inicio rápido usa el simulador de OPC PLC para generar datos de ejemplo. Para implementar el simulador de OPC PLC, ejecute el siguiente comando:
kubectl apply -f https://raw.githubusercontent.com/Azure-Samples/explore-iot-operations/main/samples/quickstarts/opc-plc-deployment.yaml
Precaución
Esta configuración usa un certificado de instancia de aplicación autofirmado. No uses esta configuración en un entorno de producción. Para obtener más información, consulte Configurar la infraestructura de los certificados de OPC UA para el conector para OPC UA.
Establecimiento de las variables de entorno
Si usa el entorno Codespaces, las variables de entorno necesarias ya están establecidas y puede omitir este paso. De lo contrario, establezca las siguientes variables de entorno en el 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>
Configuración del clúster
Ejecute los siguientes comandos para descargar y ejecutar el archivo de Bicep que configura la instancia de Operaciones de IoT de Azure. El archivo de Bicep:
- Agrega un punto de conexión de recurso que se conecta al simulador de OPC PLC.
- Agrega un recurso que representa el horno y define los puntos de datos que expone el horno.
- Agrega un flujo de datos que manipula los mensajes del horno simulado.
- Crea una instancia de Azure Event Hubs para recibir los datos.
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
Revisión de la configuración
El archivo bicep configuró los siguientes recursos:
- Un punto de conexión de recurso que se conecta al simulador de OPC PLC.
- Un recurso que representa el horno y define los puntos de datos que expone el horno.
- Dos flujos de datos que procesan los mensajes del horno simulado.
- Un espacio de nombres de Azure Event Hubs que contiene un centro de destino para los flujos de datos.
Para ver el punto de conexión del recurso, el recurso y los flujos de datos, vaya a la interfaz de usuario de la experiencia de operaciones en el explorador e inicie sesión con sus credenciales de Microsoft Entra ID. Dado que está trabajando con una nueva implementación, aún no hay sitios. Para encontrar el clúster que creó en el inicio rápido anterior, seleccione Ver instancias sin asignar. En la experiencia de operaciones, una instancia representa un clúster donde implementó Operaciones de IoT de Azure.
El punto de conexión del recurso define la conexión al simulador de OPC PLC:
El recurso del horno define los puntos de datos que expone el horno:
Los flujos de datos definen cómo se procesan y enrutan los mensajes del horno simulado a Event Hubs en la nube:
En el recorte de pantalla siguiente se muestra cómo se configura el flujo de datos de conversión de temperatura:
Comprobación de que los datos fluyen a Event Hubs
Para comprobar que los datos fluyen a la nube, puede ver la instancia de Event Hubs en Azure Portal. Es posible que tenga que esperar varios minutos para que el flujo de datos se inicie y para que los mensajes fluyan al centro de eventos.
La configuración de Bicep que aplicó anteriormente creó un espacio de nombres y un centro de Event Hubs que el flujo de datos usa como destino. Para ver el espacio de nombres y el centro, vaya al grupo de recursos en Azure Portal que contiene la instancia de IoT Operations y, a continuación, seleccione el espacio de nombres de Event Hubs.
Si los mensajes fluyen a la instancia, puede ver el recuento de mensajes entrantes en la página Información general de la instancia:
Si los mensajes fluyen, puede usar el Explorador de datos para ver los mensajes:
Sugerencia
Es posible que tenga que asignarse al rol Receptor de datos de Azure Event Hubs para el espacio de nombres de Event Hubs para ver los mensajes.
¿Cómo solucionamos el problema?
En este inicio rápido, ha usado un archivo bicep para configurar la instancia de Azure IoT Operations con un punto de conexión de recurso, un recurso y un flujo de datos. La configuración procesa y enruta los datos desde un horno simulado. El flujo de datos de la configuración enruta los mensajes a una instancia de Azure Event Hubs.
Limpieza de recursos
Si va a continuar con la siguiente guía de inicio rápido, conserve todos los recursos.
Si quiere eliminar la implementación de Operaciones de IoT de Azure, pero quiere mantener el clúster, use el comando az iot ops delete:
az iot ops delete --cluster $CLUSTER_NAME --resource-group $RESOURCE_GROUP
Si quiere eliminar todos los recursos que ha creado para este inicio rápido, elimine el clúster de Kubernetes donde ha implementado Operaciones de IoT de Azure y quite el grupo de recursos de Azure que contenía el clúster.
Si usó Codespaces para estas guías de inicio rápido, elimine Codespace de GitHub.
Paso siguiente
Si desea obtener información sobre cómo crear un panel de Microsoft Fabric para obtener información de los datos del horno, consulte Tutorial: Obtener información de los datos procesados.