serverless-alb-manager
v1.0.3
Published
A Serverless plugin that adds an HTTP ALB to your serverless project instead of an API Gateway for HTTP functions.
Downloads
12
Maintainers
Readme
ALB Manager Serverless Plugin
This plugin adds an HTTP ALB to your serverless project instead of an API Gateway for HTTP functions.
About Schoology
Schoology, one of the fastest growing education technology companies, brings together the best K-12 learning management system with assessment management to improve student performance, foster collaboration, and personalize learning. Millions of students, faculty and administrators from over 60,000 K-12 schools worldwide use Schoology to advance what is possible in education.
We help solve the most important challenges in education in an environment that’s fun, collaborative and innovative. We are looking for smart, creative individuals who are passionate about education and aren't afraid to show it.
Learn more at https://www.schoology.com/careers.
Requirements
Tested with:
- Node.js >=
v8.10
- Serverless Framework >=
v1.45
Installation
Using yarn:
yarn add --dev serverless-alb-manager
Add the plugin to your
serverless.yml
file:plugins: - serverless-alb-manager
Add the plugin configuration to your
serverless.yml
file, for example:serverless-alb-manager: vpcId: vpc-1234 subnetIds: - subnet-2345 - subnet-3456 tags: foo: fooValue bar: barValue certificateArn: "arn:aws:acm:us-east-1:4567:certificate/abcd-5678" domainName: alb.example.com
|Parameter Name|Required|Description| |---|---|---| |
vpcId
|:heavy_check_mark:|The VPC in which the ALB should be created.| |subnetIds
|:heavy_check_mark:|An array of subnet IDs to associate with the ALB. These subnets should belong to the configuredvpcId
.| |tags
|:heavy_check_mark:|A map of tags for the ALB.| |certificateArn
|:heavy_check_mark:|The AWS ACM certificate ARN to use for the HTTP listener.| |domainName
|:heavy_check_mark:|The domain name that will be used to access the ALB. This should be valid for the givencertificateArn
.|Add alb event listeners to your serverless functions. The
listenerArn
will automatically be populated with the ALB listener created by this plugin. For example:functions: foo: handler: src/handler.foo events: - alb: # libraryArn is automatically populated priority: 1 conditions: path: '/foo' method: GET bar: handler: src/handler.bar events: - alb: # libraryArn is automatically populated priority: 2 conditions: path: '/bar' method: GET
Resource Created By This Plugin
|Type|Description|
|---|---|
|Security Group|ingress 443
from 0.0.0.0/0
egress *
to 0.0.0.0/0
configurable VPC|
|Application Load Balancer|ipv4configurable subnetconfigurable tags|
|ALB Listener|default action HTTP 403
with JSON body { "error": "Forbidden" }
configurable ACM certificate ARN|
|Route53 DNS Record|Alias pointing to ALBConfigurable domain name|