Book Image

Effective DevOps with AWS

By : Nathaniel Felsen
Book Image

Effective DevOps with AWS

By: Nathaniel Felsen

Overview of this book

The DevOps movement has transformed the way modern tech companies work. AWS which has been on the forefront of the Cloud computing revolution has also been a key contributor of this DevOps movement creating a huge range of managed services that help you implement the DevOps principles. In this book, you’ll see how the most successful tech start-ups launch and scale their services on AWS and how you can too. Written by a lead member of Mediums DevOps team, this book explains how to treat infrastructure as code, meaning you can bring resources online and offline as necessary with the code as easily as you control your software. You will also build a continuous integration and continuous deployment pipeline to keep your app up to date. You’ll find out how to scale your applications to offer maximum performance to users anywhere in the world, even when traffic spikes with the latest technologies, such as containers and serverless computing. You will also take a deep dive into monitoring and alerting to make sure your users have the best experience when using your service. Finally, you’ll get to grips with ensuring the security of your platform and data.
Table of Contents (9 chapters)

Summary

In this chapter, we explored the concept of containers using Docker and ECS. After exploring the basics of how Docker works, we created a container for our application. After running locally, we created a new set of resources to run Docker containers on AWS. We did that using the DevOps best practices. We used CloudFormation to generate our resources, treating our infrastructure as code. This allows us to keep those changes under source control. Resource-wise, we created an ecr repository to manage the different revisions of our containers, two ECS clusters with auto scaling capability for staging and production, two ALBs to proxy the traffic to our containers, a set of tasks, and an ECS service to configure and deploy our application.

In the end, we reimplemented a CI/CD pipeline. We did that by using CodeBuild, CodePipeline, and their integration with CloudFormation...