Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Industrial Internet of Things >> Интернет вещей

Обновление и конфигурация IoT устройств с AWS Jobs: практическое руководство

Amazon Web Services (AWS) входит в число ведущих облачных платформ для Интернета вещей (IoT), соперничая только с Microsoft Azure и Google Cloud IoT. Умные устройства подключаются к AWS через Интернет, обычно используя протокол MQTT, и взаимодействуют с богатым набором облачных сервисов. За пределами коммуникации устройств, AWS предлагает надежное хранилище данных, аналитику (включая AI), контроль доступа и многие другие возможности, усиливающие end-to-end IoT решения.

Для персистентности данных AWS предоставляет Simple Storage Service (S3), масштабируемую иерархическую файловую систему. Каждый объект в S3 может быть адресован уникальным URL, который, с правильными разрешениями, публично доступен через веб-браузер. Когда объект содержит HTML-страницу, встроенный JavaScript может вызывать AWS API, позволяя интерактивные панели и прямое управление устройством из браузера.

Lambda-функции

Lambda позволяет запускать код без провижининга серверов. Вы можете писать функции на Python, Java, C# или Node.js, хранить их в облаке и запускать по HTTP запросам, другим вызовам Lambda или MQTT сообщениям от устройств. Lambda выступает как middleware, преобразуя данные устройств в операции с базой данных или рендеря ответы пользовательским интерфейсам (см. Рисунок 1).

нажмите для увеличения
Обновление и конфигурация IoT устройств с AWS Jobs: практическое руководство
Рисунок 1. Архитектура взаимодействия компонентов AWS (Источник: Auriga)

AWS накладывает ограничения на Lambda: максимальное время выполнения на запрос, использование памяти и размер пакета. Если функция превышает любой лимит, выполнение прекращается, и лимиты могут быть настроены при развертывании, но никогда не превысят жесткие потолки, установленные AWS.

IoT-устройства обычно устанавливают TCP-соединение с конечной точкой AWS IoT Core. TCP гарантирует целостность данных и буферизацию, обеспечивая отправку сообщений даже при прерывистых связях. AWS строит на TCP свою логику переподключения, поэтому устройство автоматически переподключается после сетевого сбоя.

Поскольку MQTT однонаправленен для команд, сбои связи редко влияют на вызовы Lambda. Lambda может опубликовать MQTT-команду на устройство и сразу вернуть управление; любой ответ обрабатывается отдельной Lambda, подписанной на топик устройства.

AWS Jobs

AWS Jobs — сервис для планирования, запуска и мониторинга длительных задач на одном или множестве IoT-устройств. Хотя он новее многих сервисов AWS, он бесшовно интегрируется с консолью и SDK.

Операции на стороне устройства экспонируются через MQTT. Функции вроде GetPendingJobExecutions, StartNextPendingJobExecution, UpdateJobExecution и DescribeJobExecution позволяют устройству опрашивать ожидающие задания, подтверждать прогресс и сообщать о завершении.

Административные операции используют HTTPS и предназначены для веб-клиентов, кода Lambda или интерактивного использования. К ним относятся CreateJob, DeleteJob, DescribeJob, ListJobs и ListJobExecutionsForThing.

Каждая задача определяется JSON job document, передаваемым на целевое устройство. Документ обычно содержит имя операции и один или несколько URL, указывающих на параметры задания. Эти URL могут быть предварительно подписаны пользователем AWS, предоставляя устройству временный, ограниченный доступ к объектам, которые оно иначе не могло бы получить. Предподписанные URL автоматически истекают, повышая безопасность.

Документ задания может быть создан динамически при определении задания или сохранен как объект S3, на который ссылаются при создании задания.

Атрибуты задания

Во время выполнения задание следует конечному автомату состояний. Допустимые состояния включают QUEUED, IN_PROGRESS, FAILED, SUCCESS, CANCELED, REJECTED и REMOVED. Устройство обновляет состояние через UpdateJobExecution, или администратор может изменить его через API вызовы вроде CancelJob. Обычно задание переходит в IN_PROGRESS во время выполнения, затем в SUCCESS или FAILED при завершении.

нажмите для увеличения
Обновление и конфигурация IoT устройств с AWS Jobs: практическое руководство
Рисунок 2. Диаграмма состояний при выполнении AWS Jobs (Источник: Auriga)

Интернет вещей

  1. Процессоры обеспечивают бесшовную интеграцию IoT и ИИ
  2. Глобальное влияние IoT: Драйв экономического роста, сохранения, здравоохранения и образования
  3. Неконфигурированные IoT-устройства: скрытая угроза вашему умному дому
  4. Защита внедрения IoT: проверенные стратегии кибербезопасности и приватности для предприятий
  5. Enterprise IoT адопшн скакает — почему растут риски безопасности
  6. 7 основных шагов для защиты вашей домашней IoT-сети
  7. Защита будущего в $6 трлн: почему стандарты и регулирование IoT критичны
  8. Снижение киберрисков IoT: стратегии и страховые решения
  9. Как IoT движет промышленной эффективностью и экономической устойчивостью в пост-COVID мире
  10. Мемфис становится умным: защита IoT, видимость и контроль для устойчивого города