Manufactura industrial
Internet industrial de las cosas | Materiales industriales | Mantenimiento y reparación de equipos | Programación industrial |
home  MfgRobots >> Manufactura industrial >  >> Industrial Internet of Things >> Tecnología de Internet de las cosas

Actualización y configuración de dispositivos IoT con AWS Jobs: Guía práctica

Amazon Web Services (AWS) se encuentra entre las plataformas cloud líderes para Internet de las Cosas (IoT), rivalizada solo por Microsoft Azure y Google Cloud IoT. Los dispositivos inteligentes se conectan a AWS a través de Internet, típicamente usando el protocolo MQTT, e interactúan con un rico conjunto de servicios cloud. Más allá de la comunicación de dispositivos, AWS ofrece almacenamiento de datos robusto, analítica (incluyendo IA), control de acceso y muchas otras capacidades que potencian soluciones IoT end-to-end.

Para persistencia de datos, AWS provee Simple Storage Service (S3), un sistema de archivos escalable y jerárquico. Cada objeto en S3 puede direccionarse con una URL única que, con los permisos adecuados, es accesible públicamente vía navegador web. Cuando un objeto contiene una página HTML, el JavaScript embebido puede invocar APIs de AWS, permitiendo dashboards interactivos y control directo de dispositivos desde el navegador.

Funciones Lambda

Lambda permite ejecutar código sin provisionar servidores. Puedes escribir funciones en Python, Java, C# o Node.js, almacenarlas en la nube, y activarlas por peticiones HTTP, otras llamadas Lambda, o mensajes MQTT desde dispositivos. Lambda actúa como middleware, traduciendo datos de dispositivos a operaciones de base de datos, o renderizando respuestas a interfaces de usuario (ver Figura 1).

clic para imagen ampliada
Actualización y configuración de dispositivos IoT con AWS Jobs: Guía práctica
Figura 1. Arquitectura de interacción de componentes AWS (Fuente: Auriga)

AWS impone límites a Lambda: tiempo máximo de ejecución por petición, uso de memoria y tamaño de paquete. Si una función excede cualquier límite, la ejecución se termina, y los límites pueden configurarse durante el despliegue pero nunca superar los topes duros establecidos por AWS.

Los dispositivos IoT típicamente establecen una conexión TCP al endpoint AWS IoT Core. TCP garantiza integridad de datos y buffering, asegurando que los mensajes se envíen incluso sobre enlaces intermitentes. AWS construye sobre TCP su propia lógica de reconexión, así el dispositivo se reconecta automáticamente tras una interrupción de red.

Como MQTT es unidireccional para comandos, los contratiempos de conectividad rara vez impactan invocaciones Lambda. Un Lambda puede publicar un comando MQTT a un dispositivo y retornar inmediatamente; cualquier respuesta es manejada por un Lambda separado que se suscribe al tópico del dispositivo.

AWS Jobs

AWS Jobs es un servicio diseñado para programar, lanzar y monitorizar tareas de larga duración en uno o muchos dispositivos IoT. Aunque más nuevo que muchos servicios AWS, se integra perfectamente con la consola y SDKs.

Operaciones del lado del dispositivo se exponen sobre MQTT. Funciones como GetPendingJobExecutions, StartNextPendingJobExecution, UpdateJobExecution y DescribeJobExecution permiten a un dispositivo sondear trabajos pendientes, reconocer progreso y reportar finalización.

Operaciones administrativas usan HTTPS y están destinadas a clientes web, código Lambda, o uso interactivo. Estas incluyen CreateJob, DeleteJob, DescribeJob, ListJobs y ListJobExecutionsForThing.

Cada job se define por un documento de trabajo JSON que se transmite al dispositivo objetivo. El documento típicamente contiene un nombre de operación y una o más URLs apuntando a parámetros del trabajo. Estas URLs pueden ser pre-firmadas por un usuario AWS, concediendo al dispositivo acceso temporal y acotado a objetos que de otro modo no podría recuperar. Las URLs pre-firmadas expiran automáticamente, mejorando la seguridad.

Un documento de trabajo puede crearse dinámicamente cuando se define el job o almacenarse como objeto S3, referenciado durante la creación del job.

Atributos del job

Durante la ejecución, un job sigue una máquina de estados finita. Estados válidos incluyen QUEUED, IN_PROGRESS, FAILED, SUCCESS, CANCELED, REJECTED y REMOVED. El dispositivo actualiza el estado vía UpdateJobExecution, o un administrador puede cambiarlo usando llamadas API como CancelJob. Típicamente, un job transiciona a IN_PROGRESS durante ejecución, luego a SUCCESS o FAILED al completarse.

clic para imagen ampliada
Actualización y configuración de dispositivos IoT con AWS Jobs: Guía práctica
Figura 2. Diagrama de estados durante ejecución de AWS Jobs (Fuente: Auriga)

Tecnología de Internet de las cosas

  1. Procesadores impulsan la integración seamless de IoT e IA
  2. Impacto Global del IoT: Impulsando Crecimiento Económico, Conservación, Salud y Educación
  3. Dispositivos IoT sin configurar: la amenaza oculta para tu hogar inteligente
  4. Salvaguardar la Adopción IoT: Estrategias Comprobadas de Ciberseguridad y Privacidad para Empresas
  5. La adopción empresarial de IoT se dispara — Por qué los riesgos de seguridad crecen
  6. 7 pasos esenciales para asegurar su red IoT doméstica
  7. Asegurando el futuro de 6 billones $: Por qué importan los estándares y regulación IoT
  8. Mitigando los riesgos cibernéticos de IoT: Estrategias y soluciones de seguros
  9. Cómo IoT impulsa la eficiencia industrial y la resiliencia económica en un mundo post-COVID
  10. Memphis se vuelve inteligente: Protegiendo el IoT, la visibilidad y el control para una ciudad resiliente
  11. IoT y Ciberseguridad: Guía práctica para proteger su negocio