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)

Dockerizing our helloworld application

Docker, and containers in general, are very powerful tools worth digging into. By combining resource isolation features, including union capable filesystems, Docker allows for the creation of packages called containers that include everything needed to run an application. Containers, like virtual machines, are self-contained, but instead of virtualizing the hardware, they virtualize the operating system itself. In practice, this makes a huge difference. As you have probably noticed by now, starting a virtual machine, such as an EC2 instance, takes time. This comes from the fact that, in order to start a virtual machine, the hypervisor (that's the name of the technology that creates and runs virtual machines) has to simulate all the motions involved in starting a physical server, loading an operating system, and finally, going through...