AWS Greengrass is one of the AWS services that enables you to build the AWS IoT server locally. This solution has an advantage, because our IoT devices should not connect to AWS IoT directly.
AWS Greengrass acts as a bridge or gateway for connected IoT devices. It offers AWS computation, such as AWS Lambda. We can deploy our own service over AWS Lambda on AWS Greengrass. AWS Greengrass can be implemented on a computer or device-based ARM CPU. All devices that are used for AWS Greengrass should be registered to AWS IoT. IoT devices have access to AWS Greengrass and AWS Greengrass needs to be configured in one group so that both the IoT devices and AWS Greengrass can communicate with each other.
A general overview of AWS Greengrass is depicted in the following figure. Each IoT device can connect to AWS Greengrass to perform computation without connecting to the AWS server. IoT devices and AWS Greengrass can only communicate within the Greengrass Group: