Chapter 5. Automating deployment: CloudFormation, Elastic Beanstalk, and OpsWorks
This chapter covers
- Creating VMs and running scripts on startup with AWS CloudFormation
- Deploying common web apps with AWS Elastic Beanstalk
- Deploying multilayer apps with AWS OpsWorks
- Comparing the different deployment services on AWS
Whether you want to use software from in-house development, open source projects, or commercial vendors, you need to install, update, and configure the application and its dependencies. This process is called deployment. In this chapter, you’ll learn about three tools for deploying applications to virtual machines on AWS:
1. Deploying a VPN solution with the help of AWS CloudFormation and a script that starts at the end of the boot process.
2. Deploying a collaborative text editor with AWS Elastic Beanstalk. The text editor Etherpad is a simple web application and a perfect fit for AWS Elastic Beanstalk, because it supports Node.js by default.
3. Deploying an IRC web client and IRC server with AWS OpsWorks. The setup consists of two parts: the IRC web client and the IRC server itself. Our example consists of multiple layers and is perfect for AWS OpsWorks.
We’ve chosen examples that don’t need a storage solution for this chapter, but all three deployment solutions would support delivering an application together with a storage solution. You’ll find examples using storage in part 3 of the book.