AWS Lambda Plugin for Gloo
The AWS Lambda Plugin for Gloo brings the power of AWS Lambda to the Envoy Proxy. This plugin allows HTTP requests routed by Envoy to become AWS Lambda invocations, automatically signed by AWS' API Signature signing process.
This allows clients to make regular HTTP requests (including
GET requests - even from a browser) through Gloo that
automatically route to AWS Lambda invocations. Clients are abstracted from the AWS API without having to specify
any AWS-specific headers or signature in their requests.
POSTs containing a JSON body will become the payload
for the Lambda function.
To jump right in, follow the AWS Lambda Getting Started Guide.
Upstream Spec Configuration
The Upstream Type for AWS Lambda upstreams is
The upstream spec for AWS Lambda Upstreams has the following structure:
region: string secret_ref: string
|region||string||The AWS Region this upstream points to. The credentials specified in the secret must be valid for this region. required|
|secret_ref||string||The AWS Credentials this upstream points to. The credentials specified in the secret must be valid for this region. required|
secret_ref must be the name of a secret in Gloo's secret storage backend.
The content of the secret must follow the format:
access_key: <aws-access-key-id> secret_key: <aws-secret-access-key>
Function Spec Configuration
function_name: string qualifier: string
|function_name||string||The Lambda Function Name used to invoke the function. required|
|qualifier||string||The Lambda Function Qualifier (Version) used to invoke the function. If empty, the
Example Lambda Upstream
The following is an example of a valid Lambda Upstream:
name: my-lambda-upstream spec: region: "us-east-1" secret_ref: "my-aws-secrets" type: aws functions: - name: func1 spec: function_name: func1 - name: func2 spec: function_name: func2 qualifier: v1
The Gloo Function Discovery Service will automatically discover functions for Lambda upstreams if it is running. Simply create a Lambda upstream for Gloo to track, and the function discovery service will auomatically populate it with your available lambda functions and keep it up to date with your AWS account.