Antes de empezar este post deberíamos tener configurado un dispositivo Iot de Azure como por ejemplo algunos que hemos visto como puede ser una Raspberry Pi 3 , un ESP8266 o incluso un dispositivo simulado.
En todos los dispositivos de Azure IoT hub comentados debemos implementar una aplicación de ejemplo para ejecutar en estos dispositivos, la cual enviará datos que los sensores recogen del mundo físico ( humedad , temperatura, presencia, etc ) a su hub de IoT.
Ahora ,una vez que tenemos un dispositivo IoT enviando mensajes de telemetría a la nube de Azure Iot Edge, toca crear una cuenta de Azure storage y una aplicación Azure para poder almacenar los mensajes de hub de IoT en el almacenamiento blob, pero como comentamos al principio , como requisito previo, necesitamos tener configurado su dispositivo de Iot para cubrir los siguientes requisitos:
- Una suscripción activa de Azure
- Un centro de IoT bajo su suscripción
- Una aplicación que envíe mensajes a su hub de IoT
Si su dispositivo de IoT ya esta enviando mensajes al Hub de Iot excepto que haya instalado en una maquina Linux el explorador de mensajes de Azure olo haga desde la consola no podrá ver el contenido de esos mensajes. Precisamente para solucionar este problema, podemos conectar el sistema de almacenamiento de Azure con los mensajes del dispositivo para que sean almacenados como BLOB’s en el la nube de Azure, veamos qué pasos necesitamos para lograr tal objetivo:
1-Crear una cuenta de Azure storage
- En el portal de Azure, haga clic en crear un recurso > almacenamiento > cuenta de almacenamiento > crear.
- Introduzca la información necesaria para la cuenta de almacenamiento de información:
- Nombre: el nombre de la cuenta de almacenamiento. El nombre que se introduzca debe ser un nombre único en el sistema .
- Suscripción: para pruebas seleccionar Evaluacion gratuita
- Grupo de recursos:Se debe utilizar el mismo grupo de recursos que utiliza el hub de IoT, para lo cual pinchar en el check «Usar existente» y seleccionar el que corresponda
- Anclar al panel: Seleccione esta opción para acceder a su centro de IoT desde el panel de Azure.
- Haga clic en crear.
- Una vez haya concluido el proceso en unos minutos , finalmente en el panel central debería tener al menos dos recursos : Azure IoT Hub (cuya creación vimos en posts anteriores) y un nuevo acceso al almacenamiento en nube de Azure recién creado.
2-Preparación del Hub de IoT para enrutar los mensajes hacia el almacenamiento de Azure
IoT Hub soporta de forma nativa enrutamiento de mensajes a almacenamiento Azure como blobs,para ello necesitamos agregar una ruta de almacenamiento de información como un punto de conexión personalizado.
Para conseguirlo ,puede seguir los siguientes pasos para ello:
- Vaya a su hub de IoT en el portal de Azure.
- Busque en la parte Inferior «Mensajería«
- Haga clic en Punto de conexión > añadir.
- Ahora escriba un nombre para el punto de conexión ( no admite caracteres especiales ) y seleccione el Contenedor de almacenamiento de Azure como tipo extremo.
- Utilice el selector para seleccionar la cuenta de almacenamiento que creó en la sección anterior.
- Cree un contenedor de almacenamiento pinchando en el aspa + Contenedor. Solo tendrá que introducir un nuevo nombre y un nivel de acceso ( por defecto ) y aceptar el cambio :
- Ahora seleccionar el nuevo contenedor y luego haga clic en Aceptar.
Acaba de crear un punto de conexión del tipo Azure Storage Container para su Iot Hub. Dado que estamos utilizando una version gratuita en el momento de crearlo nos avisara que hemos alcanzado el máximo numero de punto de conexión permitidos( es decir uno):
Ahora necesitaremos añadir una ruta a la ruta de datos para almacenamiento . Para conseguirlo, puede seguir los siguientes pasos para ello:
- Vaya a su hub de IoT en el portal de Azure.
- Busque en la parte Inferior «Mensajería«
- Haga clic en Rutas > Añadir e introduzca un nuevo nombre para la ruta.
- Seleccione Mensajes de dispositivo como el origen de datos
- Seleccione como punto de conexión de almacenamiento de información el que acaba de crear como el punto final en la ruta.
- En la cadena de consulta escriba «true» en caso estar vacía la caja de dialogo
- Puede probar la ruta
- A continuación finalmente haga clic en Guardar.
Agregar una ruta para telemetría de ruta caliente (opcional)
Puede omitir este paso si no va a hacer más procesamiento en los mensajes de telemetría.
Por defecto, IoT Hub enruta todos los mensajes que no coinciden con ninguna de otras rutas al extremo incorporado. Desde ahora,Azure también permite de forma gratuita que todos los mensajes de telemetría usen una nueva la regla para que sean dirigidos al almacenamiento de información, para los usted necesitará agregar otra ruta para que los mensajes se escriban en el extremo incorporado.
Podemos pues añadir una ruta de telemetría de ruta caliente(opcional ) a la ruta de datos para almacenamiento . Para conseguirlo, puede seguir los siguientes pasos para ello:
- Vaya a su hub de IoT en el portal de Azure.
- Busque en la parte Inferior «Mensajería«
- Haga clic en Rutas > Añadir e introduzca un nuevo nombre para la ruta.
- Seleccione Mensajes de dispositivo como el origen de datos
- Seleccione como punto de conexión eventos
- En la cadena de consulta escriba «true» en caso estar vacía la caja de dialogo
- Puede probar la ruta donde deberían aparecer ya los diferentes elementos de telemetría que vaya a gestionar ( en el ejemplo weather y temperature)
- A continuación finalmente haga clic en Guardar.
3-Verificar su mensaje en su contenedor de almacenamiento
- Ejecute la aplicación de muestra en el dispositivo para enviar mensajes a su hub de IoT.
- Descargar e instalar el explorador de almacenamiento de Azure.
- Abra el explorador de almacenamiento, haga clic en Agregar una cuenta de Azure > registrarse y luego iniciar sesión en su cuenta azul.
- Haga clic en la suscripción de Azure > Almacenamiento cuentas > cuenta de almacenamiento > Blob contenedores > su contenedor.Debería ver mensajes enviados desde el dispositivo a su hub de IoT en el contenedor de blob.
Mas información en https://docs.microsoft.com/en-gb/azure/iot-hub/iot-hub-store-data-in-azure-table-storage
Debe estar conectado para enviar un comentario.