Amazon Web Services Inc. (AWS), an Amazon.com company, announced Wednesday AWS Greengrass, software which allows customers to run AWS compute, messaging, data caching, and sync capabilities on connected devices.
With AWS Greengrass, devices can run AWS Lambda functions to perform tasks locally, keep device data in sync, and communicate with other devices while leveraging the full processing, analytics, and storage power of the AWS Cloud.
AWS also announced a new Snowball data transfer appliance, the AWS Snowball Edge, that can transport two times more data than the original AWS Snowball (up to 100 TB), and includes AWS Greengrass, making it a purpose-built hybrid edge device that can transfer data to and from Amazon Simple Storage Service (Amazon S3), cluster with other Snowball Edge devices to form an on-premises storage pool, and run AWS Lambda to process and analyze data.
AWS Greengrass is software for running AWS Lambda functions and AWS IoT functionality locally on virtually any connected device. AWS Greengrass eliminates the complexity involved in programming and updating IoT devices by allowing customers to use AWS Lambda to run code locally on virtually any connected device in the same way they do on the AWS Cloud.
With AWS Greengrass, developers can add AWS Lambda functions to a connected device right from the AWS Management Console, and the device executes the code locally so that devices can respond to events and take actions in near real-time.
AWS Greengrass also includes AWS IoT messaging and synching capabilities so devices can send messages to other devices without connecting back to the cloud. AWS Greengrass allows customers the flexibility to have devices rely on the cloud when it makes sense, perform tasks on their own when it makes sense, and talk to each other when it makes sense in a single, seamless environment.
With the proliferation of IoT devices, enterprises are increasingly managing on-premises infrastructure that is not located in a data center, such as connected devices in factories, oil wells, agricultural fields, hospitals, cars, and various other venues. As these devices are powered by microprocessors that have limited processing power and memory, they often rely heavily on AWS and the cloud for processing, analytics, and storage. However, there are circumstances when relying exclusively on the cloud isn’t optimal due to latency requirements or intermittent connectivity that make a round trip to the cloud unfeasible.
In these situations, IoT devices must be able to perform some tasks locally. Programming and updating software functionality on IoT devices is challenging and complex. Relatively few developers have the expertise to update these embedded systems, and even fewer can do so without creating unwanted downtime.
AWS Greengrass works on almost any device with a general-purpose CPU that runs Ubuntu or Amazon Linux, and supports ARM and x86 architectures. Programming AWS Greengrass devices is as easy as creating AWS Lambda functions; developers can use the same programming language and model that they use in their existing AWS environments and deploy the AWS Lambda functions to their connected devices. This also means that developers can create and test their device software in the cloud, and then seamlessly deploy it to all of their devices.
With AWS IoT’s messaging functionality, devices can send messages to one another on a local network when there is no available connection to AWS. AWS Greengrass authenticates and encrypts device data at all points of connection using AWS IoT’s security and access management capabilities so that data is never exchanged between devices or the cloud without proven identity.
A growing ecosystem of semiconductor manufacturers, including Intel, Qualcomm, and Annapurna Labs are integrating AWS Greengrass into their platforms so devices will come with AWS Greengrass built-in. Customers that want to use AWS Greengrass with existing connected devices that are AWS Greengrass-capable can download the AWS Greengrass execution environment from Amazon S3 or the AWS Management Console. In addition, Canonical will distribute AWS Greengrass through the Ubuntu Snap software channel app store for Ubuntu Linux software.
AWS Snowball is a petabyte-scale data transfer service that uses secure appliances to allow customers to transfer large amounts of data to and from AWS at as little as one-fifth of the cost of using high-speed internet connections. Since AWS introduced the AWS Snowball data transfer service in October 2015, customers have sent AWS Snowball devices a distance equal to circling the world more than 100 times.
The Snowball Edge appliance has the durability, portability, security, and ease-of-use of a Snowball, but can hold twice as much data as the original Snowball – up to 100 TB – and has four times the network speed, built in WiFi and cellular wireless communication, and a Network File System (NFS) interface with an Amazon S3-compatible endpoint that allows the Snowball Edge to connect to the cloud and pass data back and forth with Amazon S3.
Customers can also cluster multiple AWS Snowball Edge devices to create a storage pool and easily mount the Snowball Edge devices into existing data center rack environments.
The AWS Snowball Edge also comes with AWS Greengrass embedded, and computing power equivalent to an Amazon Elastic Compute Cloud (Amazon EC2) m4.4 xlarge instance for local processing tasks. This means customers can execute AWS Lambda functions and process data locally on the AWS Snowball Edge, making it possible to collect and analyze sensor data streams, transcode multimedia content, compress images in-real time, or run a local Amazon S3-compatible file server.
Ordering an AWS Snowball Edge is as easy as a few clicks in the AWS Management Console where customers can configure Amazon S3 buckets and AWS Lambda functions. When the AWS Snowball Edge arrives, customers simply connect it to their network, set the IP address, and use the included Snowball Validation tool to unlock the AWS Snowball Edge for use.
AWS Snowball Edge includes the same embedded cryptography and security as the original AWS Snowball, and all data stored is automatically encrypted using 256-bit encryption keys, which customers own and manage in the AWS Key Management Service (AWS KMS). With AWS Snowball Edge, encryption is now performed on the device, instead of on the client, producing higher performance and data throughput rates.
AWS Snowball Edge is available immediately to customers in the United States, and we expect to make it available to customers outside of the United States in the coming months.
AWS Greengrass and AWS Snowball Edge are the latest additions to the comprehensive set of capabilities AWS offers to make it easy for customers to run all of their on-premises infrastructure alongside AWS. Customers use AWS services such as Amazon Virtual Private Cloud (VPC) and Amazon Direct Connect for integrated networking, AWS Storage Gateway and AWS Snowball for data integration, and AWS Directory Service for identity integration.
For customers that want to run the same software on servers in their data centers and on the AWS Cloud, the recently announced VMware Cloud on AWS, to be launched in mid-2017, allows customers to extend their VMware environment to AWS with the flexibility to run applications seamlessly between the two environments.