Общие вопросы

Что такое AWS Greengrass?

AWS Greengrass – программное решение для безопасного выполнения таких задач, как локальные вычисления, передача сообщений, синхронизация, кэширование данных, а также формирование выводов с использованием машинного обучения (ML Inference) на подключенных устройствах. AWS Greengrass позволяет подключенным устройствам выполнять функции AWS Lambda, формировать прогнозы на основе моделей машинного обучения, синхронизировать данные устройств и безопасно взаимодействовать с другими устройствами даже без подключения к Интернету.

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

Для получения дополнительной информации о возможностях AWS Greengrass щелкните здесь.

ML Inference – это функция AWS Greengrass, которая позволяет локально формировать на устройствах Greengrass выводы с использованием машинного обучения, применяя модели, созданные и обученные в облаке. Для регистрации на предварительный просмотр возможностей функции ML Inference щелкните здесь.

Как начать работу с Greengrass?

Чтобы просмотреть Руководство по началу работы с Greengrass, щелкните здесь. Щелкните здесь для приобретения Raspberry Pi либо ознакомьтесь ниже со списком других поддерживаемых устройств и подробным сводом технических зависимостей.

Вопрос: В каких регионах AWS доступен сервис AWS Greengrass?

В настоящее время сервис AWS Greengrass доступен в следующих регионах AWS.

• Восток США (Северная Вирджиния)
• Запад США (Орегон)
• ЕС (Франкфурт)
• Азия и Тихий океан (Сидней)
• Азия и Тихий океан (Токио)

При наличии доступа к одному из указанных выше регионов AWS использовать AWS Greengrass можно независимо от своего местоположения.

Каковы главные компоненты программного обеспечения AWS Greengrass? Какие функции выполняет каждый компонент?

AWS Greengrass состоит из трех программных дистрибутивов – базового компонента AWS Greengrass, SDK AWS IoT для устройств и AWS Greengrass SDK. В приведенной ниже схеме сравниваются эти три программных дистрибутива.

AWS Greengrass также поддерживает совместную работу с Amazon FreeRTOS. Дополнительные сведения о Greengrass и Amazon FreeRTOS см. в разделе вопросов и ответов «Подключение Greengrass к Amazon FreeRTOS и другим устройствам».

  Цель Место работы
Базовый компонент AWS Greengrass Предоставляет локальные сервисы (вычисления, передача сообщений, состояние, безопасность) и локально взаимодействует с устройствами, на которых установлен SDK AWS IoT для устройств. Устройства на базе ЦПУ (x86 или ARM), на которых установлена операционная система общего назначения (например, Linux)
SDK AWS IoT для устройств Позволяет устройствам локально взаимодействовать с базовым компонентом Greengrass Практически любое устройство, поддерживающее C++ или Python 2.7.  Также входит в состав Amazon FreeRTOS
AWS Greengrass SDK Позволяет функциям Lambda взаимодействовать с локальными сервисами базового компонента Greengrass В функции Lambda, развернутой на базовом компоненте Greengrass

Какие языки разработки Lambda поддерживает AWS Greengrass?

Greengrass поддерживает функции Lambda, созданные с помощью следующих языков:

  • Python 2.7;
  • Node.JS 6.10;
  • Java 8.

Какие версии Lambda можно развертывать в Greengrass?

В базовом компоненте Greengrass можно развертывать любые версии Lambda, использующие среды выполнения Lambda Python 2.7, Node.JS 6.10 или Java 8. Версии Lambda, развернутые в Greengrass, должны быть упакованы вместе с Greengrass Core SDK. Кроме того, чтобы упростить взаимодействие с сервисами AWS, например DynamoDB, можно опционально добавить в пакет Lambda AWS SDK.

Обратите внимание: некоторые облачные сервисы, необходимые для работы Lambda (например, DynamoDB), будут недоступны для функций Lambda, когда базовый компонент Greengrass находится в автономном режиме. Вызовы API к этим сервисам не будут работать в автономном режиме. Кроме того, для функций Lambda необходимо подходящее пространство имен для каждого Greengrass Core SDK и AWS SDK, если оба SDK включены в один пакет.

Доступ к локальным ресурсам

Что такое локальный ресурс Greengrass?

Локальный ресурс – это шины и периферийные устройства, физически присутствующие в узле Greengrass, или том с файловой системой в операционной системе узла Greengrass. Например, для связи с устройствами, подключенными по протоколу Modbus/CANBUS, функции Greengrass Lambda потребуется доступ к последовательному порту устройства. Локальный ресурс определяется в области группы Greengrass; все функции Lambda в группе Greengrass могут использовать определенные локальные ресурсы.

Когда осуществляется доступ к локальному ресурсу?

Локальные ресурсы Greengrass позволяют функциям Lambda безопасно взаимодействовать с оборудованием (например, датчиками и приводами). Например, функция Lambda может считывать видеопоток с камеры устройства или посылать команды и управляющие сигналы через интерфейс ввода-вывода общего назначения.

Функция доступа к локальным ресурсам бесплатна?

Эта функция входит в состав Greengrass и предоставляется клиентам Greengrass без дополнительной оплаты.

ML Inference

Что такое Greengrass ML Inference?

На конференции re:Invent 2017 мы представили новую функцию Greengrass для локального формирования выводов с использованием машинного обучения (ML Inference), которая позволяет ускорить и упростить развертывание и запуск моделей машинного обучения на устройствах Greengrass. Теперь разработчики могут в качестве ресурсов добавлять в группу Greengrass обученные в облаке модели машинного обучения, развертывать их на целевых устройствах и применять их к локально генерируемым данным для локального формирования выводов. Данная функция поддерживает интеграцию с сервисом Amazon SageMaker для нахождения обученных с его помощью моделей, содержит новый тип ресурсов Greengrass «машинное обучение» для объявления и развертывания обученных в облаке моделей на устройствах Greengrass, а также содержит предварительно собранную платформу машинного обучения MXNet для устройств на базе NVIDIA Jetson, Intel Atom E3900 и Raspberry Pi. Новая функция Greengrass для формирования выводов с использованием машинного обучения доступна для предварительного просмотра заинтересованным клиентам.

Как получить доступ к функции Greengrass ML Inference?

Щелкните здесь, чтобы узнать подробнее о функции Greengrass ML Inference и зарегистрироваться на предварительный просмотр этой функции.

Адаптеры протоколов

Как использовать протокол OPC-UA в AWS Greengrass?

Теперь Greengrass поддерживает популярный стандарт обмена информацией OPC-UA, применяемый для взаимодействия в промышленных средах. Благодаря поддержке стандарта OPC-UA в Greengrass теперь можно без проблем принимать и обрабатывать сообщения от промышленного оборудования, а затем в соответствии с заданными бизнес-правилами передавать их на другие устройства или в облако. Наша реализация стандарта OPC-UA безопасна и поддерживает аутентификацию на основе сертификатов. Она построена на базе реализации с открытым исходным кодом и поддерживает гибкую настройку в соответствии с потребностями конкретного применения.

Можно ли добавить собственную реализацию протокола OPC-UA или реализовать другой протокол?

Да, в Greengrass вы можете добавить свою реализацию OPC-UA, используя ту же архитектуру, а также реализовать собственную поддержку специализированных, традиционных или закрытых протоколов обмена сообщениями. 

Как с помощью Greengrass реализовать альтернативные протоколы?

Так как функции Lambda, выполняющиеся в базовых компонентах Greengrass, имеют доступ к сетевым ресурсам, вы можете с их помощью реализовать поддержку любых протоколов, созданных на базе TCP-IP. Кроме того, используя возможности доступа к локальным ресурсам Greengrass, вы можете реализовать поддержку протоколов, требующих доступа к адаптерам/драйверам оборудования.

Обновления Over the Air (OTA)

Что такое обновления Over the Air (OTA) в Greengrass?

Время от времени AWS публикует обновленные версии программного обеспечения базового компонента Greengrass, преследуя следующие цели:

  • добавление новых или улучшенных функций;
  • исправление ошибок;
  • улучшение системы безопасности.

Благодаря обновлениям Over the Air (OTA) в Greengrass клиенты могут получать все эти улучшения без необходимости вручную загружать и переустанавливать программное обеспечение базового компонента Greengrass.

Использование обновлений OTA в Greengrass необходимо?

Нет. Вы всегда можете загрузить и установить обновления вручную либо использовать другой процесс развертывания ПО.

Как я узнаю о наличии новых версий базового компонента Greengrass?

Когда появляются новые версии базового компонента Greengrass, мы сообщаем о них на форуме разработчиков программного обеспечения AWS Greengrass. Ссылка на форум доступна здесь.

Совместимость платформ базового компонента Greengrass

Что такое устройства базового компонента AWS Greengrass? Каковы минимальные требования к аппаратному обеспечению?

Программное обеспечение базового компонента AWS Greengrass работает на портале, шлюзе или другом устройстве для автоматической синхронизации и взаимодействия с облаком. Базовый компонент Greengrass предназначен для работы на устройствах с процессором общего назначения, достаточно мощным, чтобы на нем работала операционная система общего назначения, такая как Linux. Greengrass требует частоты процессора не менее 1 ГГц (либо ARM, либо X86), не менее 128 МБ оперативной памяти, а также дополнительные ресурсы для размещения желаемой ОС и обеспечения пропускной способности при передаче сообщений и выполнения функций AWS Lambda, в зависимости от примера использования. Базовый компонент Greengrass может работать на различных устройствах от Raspberry Pi до устройств серверного уровня.

Какие архитектуры ЦПУ и операционные системы совместимы с базовым компонентом Greengrass?

Все нижеперечисленные архитектуры ЦПУ и операционные системы совместимы с базовым компонентом Greengrass.

  • Архитектура: ARMv7l; ОС: Linux; дистрибутив: Raspian
  • Архитектура: x86_64; ОС: Linux; дистрибутив: Amazon Linux
  • Архитектура: x86_64; ОС: Linux; дистрибутив: Ubuntu 14.04 – 16.04
  • Архитектура: ARMv8 (AArch64); ОС: Linux; дистрибутив: Ubuntu 14.04 – 16.04

Какие устройства совместимы с базовым компонентом AWS Greengrass и как быстро начать работу с ними?

Базовый компонент Greengrass совместим с большинством устройств, которые удовлетворяют перечисленным ниже техническим требованиям. Если вы желаете приступить к работе максимально быстро, вы можете приобрести у наших партнеров одно из следующих устройств.

Проверена работа с базовым компонентом Greengrass версии 1.0.0 (выпущена 7 июня 2016 г.)

Проверена работа с базовым компонентом Greengrass версии 1.1.0 (выпущена 20 сентября 2017 г.)

Проверена работа с базовым компонентом Greengrass версии 1.3.0 (выпущена 29 ноября 2017 г.)

Будет ли Greengrass работать на устройствах с тактовой частотой меньше 1 ГГц?

Работа программного обеспечения базового компонента AWS Greengrass была проверена нашими партнерами на следующих устройствах:

Какие именно технические зависимости необходимы для работы базового компонента Greengrass?

Базовый компонент Greengrass создан для работы с широким спектром процессорных архитектур и операционных систем на устройствах, удовлетворяющих минимальным аппаратным требованиям. Ниже перечислены зависимости, необходимые для работы базового компонента Greengrass.

1. Необходимые программные пакеты и конфигурации

  • SQLite – версия 3 или выше
  • Библиотека Glibc – версия 2.14
  • Ядро Linux: несмотря на то, что с Greengrass могут работать несколько разных версий ядра, для обеспечения наилучшей безопасности и производительности мы рекомендуем использовать самую актуальную версию ядра Linux, которая содержит необходимые для Greengrass конфигурации ядра
  • bash
  • System Trust Store
  • boto3 (последняя версия)
  • botocore (последняя версия)
  • OpenSSL – версия 1.0.2 или выше
  • Python – версия 2.7 или выше (требуется, если выполняются функции Lambda на языке Python)
  • Java 8 (требуется, если выполняются функции Lambda на языке Java)
  • Node.js 6.10 (требуется, если выполняются функции Lambda на языке Node.js)

2. Конфигурация ядра

  • Key Retention: CONFIG_KEYS
  • Mqueue: CONFIG_POSIX_MQUEUE
  • Overlay FS: CONFIG_OVERLAY_FS
  • Seccomp Arch Filter: CONFIG_HAVE_ARCH_SECCOMP_FILTER
  • Seccomp Filter: CONFIG_SECCOMP_FILTER
  • Seccomp: CONFIG_SECCOMP

3. Конфигурация ядра для пространства имен (каждое ядро должно быть собрано с подключением всех нижеперечисленных конфигураций)

  • IPC isolation: CONFIG_IPC_NS
  • UTS isolation: CONFIG_UTS_NS
  • User isolation: CONFIG_USER_NS
  • PID isolation: CONFIG_PID_NS

4. Конфигурация ядра для Cgroup (каждое ядро должно быть собрано с подключением всех нижеперечисленных конфигураций)

  • Enable cgroups: CONFIG_CGROUPS
  • Enable Memory cgroup: CONFIG_MEMCG
  • Enable devices cgroup: CONFIG_CGROUP_DEVICE

 

Подключение Greengrass к Amazon FreeRTOS и другим устройствам

Как выполнить локальное подключение устройств к базовому компоненту AWS Greengrass?

Локальное подключение устройств к базовому компоненту AWS Greengrass можно выполнить с помощью Amazon FreeRTOS или SDK AWS IoT для устройств. Библиотека AWS Greengrass Discovery доступна в SDK AWS IoT для устройств при использовании языков C++ и Python 2.7. Подробнее см. в руководстве пользователя AWS Greengrass. В исходном коде для Amazon FreeRTOS библиотеку Greengrass Discovery можно использовать для поиска устройств базового компонента AWS Greengrass и подключения к ним. Подробности см. в руководстве пользователя Amazon FreeRTOS.

Какие языки поддерживаются в Greengrass через SDK AWS IoT для устройств?

Библиотека AWS Greengrass Discovery доступна в SDK AWS IoT для устройств при использовании языков C++ и Python 2.7. Подробнее см. в руководстве пользователя AWS Greengrass.

Что такое Amazon FreeRTOS?

Amazon FreeRTOS (a:FreeRTOS) – это операционная система, которая позволяет легко программировать, развертывать, обслуживать оконечные устройства на базе микроконтроллеров, а также обеспечивать их безопасность. Операционная система Amazon FreeRTOS создана на базе ядра FreeRTOS, популярной операционной системы для микроконтроллеров с открытым исходным кодом. В состав Amazon FreeRTOS входят программные библиотеки, с помощью которых можно легко и безопасно подключать устройства локально или к облаку, а также удаленно обновлять их. С помощью консоли Amazon FreeRTOS можно легко выбрать и загрузить программные компоненты, необходимые для конкретного варианта использования. Квалификационная программа Amazon FreeRTOS позволит вам точно выбрать микроконтроллер, который полностью поддерживает функции и возможности Amazon FreeRTOS. Amazon FreeRTOS обеспечивает безопасность устройств на базе микроконтроллеров, поддерживает шифрование данных и управление ключами. Также устройства Amazon FreeRTOS подключаются к устройствам базового компонента AWS Greengrass, что позволяет без проблем объединить несколько устройств Amazon FreeRTOS в группу Greengrass. Щелкните здесь, чтобы получить дополнительную информацию о Amazon FreeRTOS.

Работает ли Amazon FreeRTOS с AWS Greengrass?

Да. Устройства Amazon FreeRTOS могут напрямую подключаться к облаку или Greengrass. Amazon FreeRTOS не требует использования AWS Greengrass. Amazon FreeRTOS работает на конечных точках Интернета вещей и часто выполняет функции «обнаружения» и «выполнения действий» в топологии Интернета вещей.

В чем разница между AWS Greengrass и Amazon FreeRTOS?

AWS Greengrass – программное решение для безопасного выполнения таких задач, как локальные вычисления, передача сообщений, синхронизация, кэширование данных, а также формирование выводов с использованием машинного обучения (ML Inference) на подключенных устройствах. AWS Greengrass позволяет подключенным устройствам выполнять функции AWS Lambda, синхронизировать данные устройств и безопасно взаимодействовать с другими устройствами даже без подключения к Интернету. Используя сервис AWS Lambda, решение Greengrass позволяет устройствам Интернета вещей оперативно реагировать на локальные события, использовать функции Lambda, выполняющиеся в базовом компоненте Greengrass, для взаимодействия в локальными ресурсами, работать с неустойчивыми соединениями, выполнять обновление с помощью технологии Over the Air, а также свести к минимуму расходы на передачу данных Интернета вещей в облако.

Amazon FreeRTOS – это операционная система для микроконтроллеров, которая работает на оконечных устройствах и обычно не поддерживает наборы микросхем, с которыми может работать AWS Greengrass. Такие микроконтроллеры можно обнаружить в различных конечных точках Интернета вещей, например в фитнес-трекерах, кардиостимуляторах, счетчиках электроэнергии, автомобильных трансмиссиях и сетях датчиков. На устройствах Amazon FreeRTOS не может работать базовый компонент Greengrass, но эти устройства могут активировать выполнение функций Lambda на устройстве базового компонента Greengrass.

У этих устройств разные требования к оборудованию и разные операционные системы.

  Amazon FreeRTOS AWS Greengrass
Программное обеспечение Операционная система, работает на микроконтроллере Среда выполнения для устройств Linux и SDK для устройств с поддержкой Greengrass
Требования к оборудованию > 64КБ ОЗУ > 128МБ ОЗУ
Категория Встраиваемые системы, конечные точки Интернета вещей Оконечные устройства, локальные шлюзы
Примеры использования Устройства на базе микроконтроллеров Системы промышленной автоматизации, беспроводные маршрутизаторы, смартфоны

Подробнее о ценах на AWS Greengrass

Перейти на страницу цен
Готовы начать работу?
Регистрация
Есть вопросы?
Свяжитесь с нами