After a preview program, Amazon Web Services Inc. announced the general availability of AWS Greengrass, which extends cloud functionality to Internet of Things-connected devices.

Basically, AWS Greengrass brings cloud programming and functionality to groups of IoT devices, enabling them to communicate and react to events when there's no connection to the cloud, or when immediate processing is paramount, with no time for communicating with the cloud.

The service lets developers leverage the onboard capabilities of local devices for immediate processing, backing up that functionality with cloud resources for management, updates, and elastic compute and storage.

"With AWS Greengrass, we can begin to extend AWS into customer systems -- from small devices to racks of servers -- in a way that makes it easy to do the things locally that are best done locally, and to amplify those workloads with the cloud," AWS CTO Werner Vogels said in a blog post yesterday.

AWS Greengrass provides a variety of capabilities, such as:

Allowing for some data collection and processing on local IoT devices where latency is crucial or in offline scenarios

Letting developers author serverless AWS Lambda functions in the cloud and deploy them to devices for local execution, bypassing the need to communicate with the cloud for every task

Providing local messaging among a group of devices

Securing communications between a group of local devices (a Greengrass group) and the cloud

Maintaining local device shadows to maintain state for stateless functions, such as sync and conflict resolution

Using AWS Greengrass involves using two software distributions: a Greengrass Core and the AWS IoT Device SDK. Developers first create a Greengrass cloud definition in which Greengrass Core software is established. Greengrass Core software also runs on a local device, such as a hub, gateway or other device. Then other devices provisioned with the AWS IoT Device SDK can be added to the group definition, as can AWS Lambda functions, simple programs able to process or respond to data.

After definitions are built and edited in the cloud, they are deployed to make a group functional. This requires devices with AWS Greengrass built-in, and AWS has partnered with more than a dozen partners -- such as Samsung, Intel, Lenovo and other major players -- to integrate AWS Greengrass on their platforms

"Many of the world's largest IoT implementations run on AWS, and customers across industries -- from energy, to mining, to media and entertainment -- have asked us whether we could extend AWS's industry leading cloud capabilities to the edge," said AWS exec Dirk Didascalou in a statement. "By embedding AWS Lambda and AWS IoT capabilities in connected devices, AWS Greengrass gives customers the flexibility to have devices act locally on the data they generate while using the AWS Cloud for management, analytics, and storage -- all using a single, familiar AWS programming model.

"We are excited to make AWS Greengrass available to all AWS customers, and with AWS partners shipping AWS Greengrass-capable devices it is now incredibly easy to build and run IoT applications that seamlessly span devices on the edge and in the AWS Cloud."

AWS Greengrass is now generally available to all customers, running in US East (N. Virginia) and US West (Oregon) regions. Pricing details -- including the use of three Greengrass Cores free for one year -- are available here.

About the Author

David Ramel is editor in chief of Visual Studio Magazine and Application Development Trends Magazine.