AWS IoT Greengrass accelerators (accelerators) demonstrate common design patterns or use cases for both AWS IoT Greengrass Version 2 (V2).
The subfolder /v2/
contains the accelerators. AWS IoT Greengrass V2 is the latest major version of AWS IoT Greengrass. As of July 31, 2024, the V1 accelerators have been removed as AWS IoT Greengrass Version 1 no longer receives feature updates, enhancements, bug fixes, or security patches since June 30, 2023.
All of the V2 accelerators are designed to be deployed as a combination of AWS CloudFormation stacks in the cloud, and as Docker containers on your local system or through AWS Cloud9. This provides a consistent and quick approach to testing or investigating functionality without impacting or leaving behind unneeded artifacts. While designed for containers, the actual components can be deployed onto physical hardware, virtual machines, or Amazon Elastic Compute Cloud (Amazon EC2) instances.
The current V2 accelerators are:
- (Prerequisite) Base Implementation <--- Start here!
- This accelerator deploys a single AWS IoT Greengrass core device as an AWS CDK constructed AWS CloudFormation stack, with all required AWS IoT, IAM, and AWS IoT Greengrass resources. It also creates a single Hello World component and deployment for testing purposes.
- Operating System Command Execution
- This accelerator deploys additional functionality on to the Base Implementation stack to demonstrate sending an operating system command as an MQTT message from AWS IoT Core, running the command locally, and publishing back the command output to another MQTT topic in the cloud.
- Extract, Transform, and Load - Simple Implementation
- This accelerator deploys additional functionality on to the Base Implementation stack to demonstrate how to extract, transform, and load (ETL) data from a local device to the cloud. This accelerator breaks the three steps into discrete processes, decoupled by using Interprocess Communcation.
- AWS IoT SiteWise Deployment
- This accelerator deploys additional functionality on to the Base Implementation stack to demonstrate a basic AWS IoT SiteWise deployment. Specifically, it leverages the AWS IoT SiteWise OPC-UA collector component to collect data from a configurable OPC-UA endpoint.
This version of the accelerators aims at:
- deploying all cloud resources needed by AWS IoT Greengrass without making use of CDK;
- execute AWS IoT Greengrass inside a docker container, similarly to the solution contained in v2, if the hosting platform supports Linux containers;
- install and execute AWS IoT Greengrass on Windows systems that do not support Linux containers and cannot use the solution in v2. On such systems the use of CDK based accelerators is not possible because the accelerators use CDK custom resources that requires docker to execute on the host platform;
- define a simplified AWS IoT Greengrass component development framework for both docker and Windows setup;
The accelerators consist of 5 python scripts performing:
- Resource deployment/deletion for AWS IoT Greengrass
- components deployment/deletion
- Windows native AWS IoT Greengrass installation