AWS Lambda Functions Chaos Engineering - Extending Steadybit - Part 2 - Discovery
Blog post from Steadybit
The article outlines the process of implementing a discovery extension for AWS Lambda using Steadybit, which is necessary for injecting failures into Lambda functions. The extension uses Gunnar Grosch's failure-lambda npm package for failure injection and requires discovery of Lambda functions as a prerequisite. The discovery mechanism involves using the AWS SDK to list and convert Lambda functions into targets, which the Steadybit agent periodically queries to update the platform with target information. The extension provides metadata for Lambda targets, enhancing the platform's UI with descriptive labels and icons. The article also details how to set up and run the extension locally, ensuring proper AWS SDK credentials, and provides instructions for building and deploying the extension using a Dockerfile and helm chart. Once deployed in a Kubernetes cluster, the extension is auto-discovered by the Steadybit agent, making Lambda functions visible for potential failure injection, thereby preparing for the next phase of implementing attacks on these functions.