Skip to content

outstand/terraform-aws-consul-ecs

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Consul AWS ECS Modules

This repo contains a set of modules for deploying Consul Service Mesh on AWS ECS (Elastic Container Service).

Documentation

See https://www.consul.io/docs/ecs for full documentation.

Architecture

Architecture

Each task is created via the mesh-task module. This module adds additional containers known as sidecar containers to your task definition.

Specifically, it adds the following containers:

  • consul-ecs-mesh-init – Runs at startup to set up initial configuration for Consul and Envoy.
  • consul-client – Runs for the full lifecycle of the task. This container runs a Consul client that connects with Consul servers and configures the sidecar proxy.
  • sidecar-proxy – Runs for the full lifecycle of the task. This container runs Envoy which is used to proxy and control service mesh traffic. All requests to and from the application run through the sidecar proxy.
  • health-sync - Runs for the full lifecycle of the task. This container syncs health check statuses from ECS into Consul.

The acl-controller module runs a controller that automatically provisions ACL tokens for tasks on the mesh.

The dev-server module runs a development/testing-only Consul server as an ECS task.

Please see our Architecture docs for more details.

Usage

See https://www.consul.io/docs/ecs.

Modules

  • mesh-task: This module creates an ECS Task Definition that adds additional containers to your application task, so it can be part of the Consul service mesh.

  • dev-server [For Development/Testing Only]: This module deploys a Consul server onto your ECS Cluster for development/testing purposes. The server does not have persistent storage and so is not suitable for production deployments.

  • acl-controller: This modules deploys a controller that automatically provisions ACL tokens for services on the Consul service mesh.

Roadmap

Please refer to our roadmap here.

License

This code is released under the Mozilla Public License 2.0. Please see LICENSE for more details.

About

Consul Service Mesh on AWS ECS (Elastic Container Service)

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • HCL 64.2%
  • Go 31.6%
  • Smarty 3.5%
  • Other 0.7%