Posted On: Aug 23, 2021
AWS IoT Greengrass is an Internet of Things (IoT) edge runtime and cloud service that helps customers build, deploy, and manage device software. Our version 2.4 release includes two new sets of features that simplify the provisioning of large fleets of IoT devices and allow fine-grained control of IoT device system resources from the cloud:
- Fleet provisioning using claim certificates. Prior to this release, customers had to manually provision each device with its device certificate or have SigV4 credentials on the device for automatic provisioning. With this release, AWS IoT Greengrass can generate and securely deliver device certificates and private keys to devices automatically when they first connect to AWS IoT, using the AWS IoT Core fleet provisioning APIs. Customers have the choice of having device certificates signed by the Amazon Root certificate authority (CA), or by their own CA. This release simplifies connecting large fleets of devices to AWS IoT by enabling customers to manufacture devices with embedded provisioning claim certificates and private keys that allow the devices to register with AWS IoT only when they are powered on and have a network connection. For example, a smart home hub manufacturer could include claim certificates and private keys on all manufactured devices for a given model, and each hub could automatically register with AWS IoT and receive a unique identity only when a customer has purchased and activated the device.
- Resource management. Prior to this release, customers could use AWS IoT Greengrass to manage the lifecycle of their IoT device software through lifecycle commands such as start, stop, restart, or update. With this release, customers can now automate resource usage across processes running on a device by defining the memory and CPU limits of specific device software processes. Customers can also hibernate low priority processes dynamically when resources run low and are needed by mission critical processes. Together, these features help customers more efficiently utilize limited system resources on memory or CPU-constrained devices running multiple processes that are competing for resources. For example, an automotive manufacturer with different business units developing software processes that run on the same vehicle could allow its developers to set memory, CPU usage, and hibernation controls in advance, but allow each vehicle to autonomously make local resource allocation decisions dynamically based on real-time conditions.