quintilesims / layer0

Build, Manage, and Deploy Your Applications
Apache License 2.0
44 stars 20 forks source link

WIP - Adds rudimentary support for Application Load Balancers #571

Closed sesh-kebab closed 6 years ago

sesh-kebab commented 6 years ago

What does this pull request do? Adds a new type of Load Balancer: Application Load Balancer. Default behavior has been kept the same but you can now optionally specify --type elb|alb flag (default is elb).

An application load balancer has health check that needs to be specified differently to classic ELB's health check target. So a new property Path has been added to HealthCheck model which is used for an ALB type Load Balancer.

When creating a fargate service, you will need to specify a alb load balancer as a classic ELB isn't supported.

How should this be tested?

Todo

diemonster commented 6 years ago

When creating a fargate service, you will need to specify a alb load balancer as a classic ELB isn't supported.

Is this set as a default then, or can you still specify a "classic" elb for a fargate service and receive an AWS error?

sesh-kebab commented 6 years ago

@diemonster sorry I missed replying to the below question. You can still specify any load balancer. If you try to specify a classic load balancer when creating a fargate/stateless service, you will get an error stating fargate only supports application load balancers which is surfaced up to the client.

Is this set as a default then, or can you still specify a "classic" elb for a fargate service and receive an AWS error?

tlake commented 6 years ago

@sesh-kebab service get commands don't populate the LOADBALANCER column for a fargate service deployed behind an ALB. I think service read logic has to be updated to handle ALBs as well.

sesh-kebab commented 6 years ago

@tlake right on! will update the todo list in summary.