aws-ecs-eds

Envoy EDS service for AWS ECS Tasks or Cloudmap SRVs

MIT License

Stars
0
Committers
3

aws-ecs-eds Docker Pulls GitHub Sponsors GitHub Workflow Status (with event)

Envoy EDS Service that automatically updates upstreams from AWS

AWS Integrations

AWS Elastic Container Service.

Gets privateIPv4Address of EC2/Fargate Tasks.

Port Resolution

  1. Environmental Variable: _aws.ecs.clusterName__port (e.g. us-west-2-fargate_port=8080)
  2. Default: 80

AWS Cloud Map

Reads SRV records from CloudMap

Port Resolution

  1. Environmental Variable: aws.cloudMap.serviceDiscoveryId_port (e.g. srv-1234_port=8080)
  2. instance['AWS_INSTANCE_PORT'] from ListInstances CloudMap API
  3. Default: 80

Envoy Config

TCP Listener Config

  1. Environmental Variable: EDS_LISTEN (e.g. 127.0.0.1:8080)
  2. Default: 0.0.0.0:5678
  3. All responses cached for 30 seconds on successful response

Config Snippet

eds-config.yamlhttps://github.com/boostchicken/aws-ecs-eds/blob/2b29f881b7f3cd592d3b601ef74b64053fff0d79/eds-config.yaml#L10-L57

Custom Builds

Dockerfilehttps://github.com/boostchicken/aws-ecs-eds/blob/2b29f881b7f3cd592d3b601ef74b64053fff0d79/Dockerfile#L1-L13

Package Rankings
Top 8.97% on Proxy.golang.org
Related Projects