2019. 1. 8. 03:44

AWS Greengrass Worksheet

Recently, I am working for the project using Greengrass as a deployment solution.

AWS Greengrass is quite an early development phase, there are lots of cool new features are coming, but not yet available.

Here are some minor tips I found while I am building the service when I face some problems. (I will keep updating time by time my project progressing.) 


A Greengrass group cannot have more than one core.

Currently, you can see the CreateCoreDefinitionVersionRequest is you can see the CreateCoreDefinitionVersionRequest is accepting List<Core> as an input parameter, but this is just for future scalable, it does not support yet. It accepts only a single core now.


Greengrass Deployment Stuck In Progress

I created a group and a core using the console, and deploy something, and faced issues of deployments. Mainly the reasons are: When GG cannot communicate through MQTT, or the core daemon is not running.

So mostly I solved this by checking the core Greengrass config is correctly set (/greengrass/config/config.json), whether EC2 (or pi) network security group inbound rule has MQTT 8883 port open, and checking subscriptions between cloud and lambda, and restart the core daemon, and etc.


While you are building provisioning service using APIs, sometimes you mix-use with the console to delete resources like groups, cores, certificates. Because of that, sometimes there is a zomebie-like group showing in the console, for example,  So I removed core definition using API. After that, I got the same error like "This group is currently deployed so it cannot be deleted."


In this case, you should run "reset deployment" (if it does not work, run it with "force" option.) then you can delete the group.