This presentation covers the benefits of deploying to ECS, as we explore techniques and open source tools to help manage multiple ECS clusters.
First we discuss why developing as containers and deploying to ECS offers a more cost-effective, faster, and safer workflow from dev to production than VMs on EC2.
Next we present techniques Convox uses to manage countless clusters and apps. We will see a CloudFormation template that reliably provisions, updates, and horizontally and vertically scales ECS clusters, and another template that configures application containers inside the cluster.
Finally we survey features that are "missing" on ECS and demonstrate simple tools and techniques Convox has developed to to fill in these gaps. For example:
* Running a private build and registry service inside the ECS cluster itself
* Splitting up an app's processes (i.e. web and worker) into their own task definitions for independent horizontal scaling
* Running an agent on every cluster instance for forwarding all container logs to Kinesis, Lambda and beyond
* Running an public API on a cluster that facilitates a `docker exec` debugging session inside application containers