Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
En Azure IoT Operations, el conector para HTTP/REST permite el acceso a los datos de los puntos de conexión REST expuestos por los servicios HTTP.
Un recurso en Azure IoT Operations es una entidad lógica que se crea para representar un recurso físico o dispositivo. Un recurso de Azure IoT Operations puede tener propiedades personalizadas, puntos de datos, flujos y eventos que describen su comportamiento y características. Un recurso está asociado a uno o varios dispositivos. Azure IoT Operations almacena definiciones de recursos en Azure Device Registry.
Un dispositivo de Azure IoT Operations es una entidad lógica que define las conexiones a recursos físicos o dispositivos. Sin un dispositivo, los datos no pueden fluir desde un dispositivo o activo físico al agente MQTT. Al configurar un dispositivo y un recurso, se establece una conexión al recurso físico o al dispositivo y a los valores de punto de datos, eventos y flujos que llegan a la instancia de Azure IoT Operations. Un dispositivo tiene uno o varios puntos de conexión de entrada. Azure IoT Operations almacena definiciones de dispositivo en Azure Device Registry.
El conector para HTTP/REST admite las siguientes características:
- Reintentos automáticos cuando se producen errores de muestreo. Informa de un estado de fallo para errores que no se pueden reintentar.
- Integración con OpenTelemetry.
- Uso de puntos de conexión y recursos de dispositivo.
- Opcionalmente, puede transformar los datos entrantes mediante módulos WASM.
- Validación del punto de conexión del dispositivo y la definición de recursos para la compatibilidad con REST.
- Varios métodos de autenticación:
- Autenticación HTTP básica de nombre de usuario y contraseña
- Certificados de cliente x509
- Acceso anónimo con fines de prueba
- Para establecer una conexión TLS al punto de conexión HTTP, puede configurar una lista de confianza de certificados para el conector.
Para cada conjunto de datos configurado, el conector para HTTP/REST:
- Realiza una solicitud GET a la dirección especificada en el punto de conexión del dispositivo y anexa el origen de datos del conjunto de datos del recurso.
- Genera un esquema de mensaje para cada conjunto de datos en función de los datos que recibe y los registra con el Registro de esquemas y el Registro de dispositivos de Azure.
- Reenvía los datos al destino especificado.
En este artículo se explica cómo usar el conector para HTTP/REST para realizar tareas como:
- Defina los dispositivos que conectan orígenes HTTP a la instancia de Operaciones de IoT de Azure.
- Agregue recursos y defina los puntos de datos para habilitar el flujo de datos desde el origen HTTP al corredor MQTT o el almacén de estado de corredor.
Prerrequisitos
Para configurar dispositivos y recursos, necesita una instancia en ejecución de Operaciones de IoT de Azure.
Para iniciar sesión en la experiencia de operaciones, necesita una cuenta de Id. de Microsoft Entra con al menos permisos de colaborador para el grupo de recursos que contiene la instancia de Kubernetes - Azure Arc. No puede iniciar sesión con una cuenta Microsoft (MSA). Para obtener más información, consulte Solución de problemas de acceso a la interfaz de usuario web de la experiencia de operaciones.
El administrador de TI debe configurar el conector para la plantilla HTTP/REST para la instancia de Azure IoT Operations en Azure Portal.
Necesita las credenciales necesarias para acceder al origen HTTP. Si el origen HTTP requiere autenticación, debe crear un secreto de Kubernetes que contenga el nombre de usuario y la contraseña del origen HTTP.
Implementación del conector para HTTP/REST
Al implementar Azure IoT Operations, la implementación incluye varios conectores. Para poder usar los conectores (como ONVIF, medios y HTTP/REST) en la interfaz de usuario web de la experiencia de operaciones, un administrador debe agregar instancias de plantilla de conector a la instancia de Azure IoT Operations.
Todos los conectores pueden publicar los datos capturados en el broker MQTT.
Para agregar una instancia de plantilla de conector a la instancia de Operaciones de IoT de Azure:
En Azure Portal, vaya a la instancia de Operaciones de IoT de Azure, seleccione Plantillas de conector y luego seleccione Agregar instancias de plantilla de conector:
En la primera página del Asistente para agregar una plantilla de conector de Akri , seleccione el tipo y la versión de la plantilla de conector que desea agregar, como ONVIF, Media, HTTP/REST, SSE o MQTT. A continuación, seleccione Metadatos.
En la página Metadatos, acepte los valores predeterminados y luego seleccione Tipo de punto de conexión de entrada del dispositivo.
En la página Tipo de punto de conexión entrante del dispositivo, acepte los valores predeterminados y luego seleccione Configuraciones de diagnóstico.
En la página Configuraciones de diagnóstico, acepte los valores predeterminados y luego seleccione Configuración en runtime.
En la página Configuración en tiempo de ejecución, acepte los valores predeterminados y seleccione Revisar.
En la página Revisar, revise los detalles de la instancia de plantilla del conector y luego seleccione Crear para crear la instancia de plantilla del conector.
Un usuario de OT ya puede utilizar la interfaz de usuario web de experiencia operativa para crear un dispositivo con un punto de conexión de conector.
Crear un dispositivo
Para configurar el conector para HTTP/REST, cree primero un dispositivo que defina la conexión al origen HTTP. El dispositivo incluye la dirección URL del origen HTTP y las credenciales que necesita para acceder al origen HTTP:
En la interfaz de usuario web de experiencia operativa, seleccione Dispositivos en el panel de navegación izquierdo. A continuación, seleccione Crear nuevo.
Escriba un nombre para su dispositivo, como
http-connector. Para agregar el punto de conexión para el conector para HTTP/REST, seleccione Nuevo en el icono Microsoft.Http .Agregue los detalles del punto de conexión para el conector para HTTP/REST, incluidas las credenciales de autenticación:
Seleccione Aplicar para guardar el punto de conexión.
En la página Detalles del dispositivo, seleccione Siguiente para continuar.
En la página Agregar propiedades personalizadas , agregue cualquier otra propiedad que quiera asociar al dispositivo. Por ejemplo, puede agregar una propiedad para indicar el fabricante de la cámara. Después, seleccione Siguiente para continuar.
En la página Resumen, revise los detalles del dispositivo y seleccione Crear para crear el recurso.
Una vez creado el dispositivo, puede verlo en la lista Dispositivos :
Configuración de un dispositivo para usar un nombre de usuario y una contraseña
En el ejemplo anterior se usa el modo de autenticación Anonymous. Este modo no requiere un nombre de usuario ni una contraseña.
Para usar el modo de autenticación Username password, complete los pasos siguientes:
Siga los pasos descritos en Administración de secretos para la implementación de Azure IoT Operations para agregar secretos para el nombre de usuario y la contraseña en Azure Key Vault, proyectarlos en el clúster de Kubernetes y hacer referencia a ellos desde la configuración del dispositivo.
Configuración de un dispositivo para usar un certificado X.509
Para usar el X509 certificate modo de autenticación, siga los pasos descritos en Administración de certificados para comunicaciones externas para agregar secretos para certificados en Azure Key Vault, proyectarlos en el clúster de Kubernetes y hacer referencia a ellos desde la configuración del dispositivo.
Configuración de una lista de confianza de certificados para un dispositivo que se va a usar
Para administrar la lista de certificados de confianza para el conector para HTTP/REST, consulte Administración de certificados para comunicaciones externas.
Creación de un recurso
Para definir un recurso que publica puntos de datos desde el punto de conexión HTTP, siga estos pasos:
En la interfaz de usuario web de la experiencia de operaciones, seleccione Recursos en el panel de navegación izquierdo. A continuación, seleccione Crear recurso.
Seleccione el punto de conexión de entrada para el conector para HTTP/REST que creó en la sección anterior.
Escriba un nombre para el recurso, como
my-http-source.Agregue las propiedades personalizadas que quiera asociar al recurso. Por ejemplo, puede agregar una propiedad para indicar el fabricante de la cámara. Seleccione Next (Siguiente) para continuar.
Un conjunto de datos define dónde envía el conector los datos que recopila de una colección de puntos de datos. Un recurso HTTP/REST puede tener varios conjuntos de datos. Para crear un conjunto de datos:
Seleccione Crear conjunto de datos.
Escriba los detalles del conjunto de datos, como su nombre, el origen de datos, el intervalo de muestreo y el destino. En el caso de los recursos HTTP/REST, el origen de datos es la ruta de acceso en el punto de conexión REST. Para los recursos HTTP/REST, el destino es un tema MQTT o una clave del almacén de estado del bróker. Por ejemplo:
Para transformar los datos entrantes, agregue la dirección URL de un módulo WebAssembly (WASM) en el campo Transformar . Para más información, consulte Transformación de datos entrantes.
Seleccione Crear y siguiente para crear el conjunto de datos.
Sugerencia
Use la opción Administrar valores predeterminados para configurar los valores predeterminados del conjunto de datos, como el intervalo de muestreo.
En la página Revisar, revise los detalles del recurso y seleccione Crear para crear el recurso. Después de unos minutos, el recurso aparece en la página Recursos:
Transformación de datos entrantes
Para transformar los datos entrantes mediante un módulo WASM, complete los pasos siguientes:
Desarrolle un módulo WASM para realizar la transformación personalizada. Para obtener más información, consulte Desarrollo de módulos y definiciones de grafos de WebAssembly (WASM).
Configure el gráfico de transformación. Para obtener más información, vea Configurar definiciones de grafos de WebAssembly (WASM).
Implemente tanto el módulo como el grafo. Para obtener más información, vea Usar WebAssembly (WASM).
Nota:
Debe implementar al menos un grafo de flujo de datos para habilitar el procesamiento de grafos WASM, pero esta característica no usa el grafo de otro modo.
Configure el conjunto de datos con la dirección URL del grafo WASM desplegado en el campo Transform:
Una transformación de datos en el conector HTTP/REST solo requiere un único operador de mapa, pero los gráficos WASM son totalmente compatibles con las restricciones siguientes:
- El gráfico debe tener un solo
sourcenodo y un solosinknodo. - El gráfico debe consumir y emitir el tipo de
DataModel::Messagedatos. - El gráfico debe estar sin estado. Actualmente, esta restricción implica que no se admiten operadores acumulativos.