Amazon Web Services offers a wide range of services, other than EC2, to host our applications in a most advanced and secured fashion. In this chapter, we will be discussing a few of the key services required for deploying a production-class application:
Relational Database Service (Amazon RDS): A hosted relational database service from AWS in an isolated environment. It provides several database engines, such as MySQL, PostgreSQL, Oracle, and Microsoft SQL Server.
Route53: A scalable domain name system (DNS) by AWS.
Simple Storage Service (S3): An object storage service by AWS. S3 provides high durability, compliance capabilities, and security. It is widely used for creating CDN backends, backups, and storing log files, as well as hosting static websites.
Lambda: AWS Lambda is an event-driven, serverless platform for cloud computing. It's a computing service that involves a lambda function to perform an action based on received events.
Identity Access Management (IAM users): The IAM service helps administrators to manage access for multiple groups of people and applications accessing AWS resources.
Dynamic inventory: The dynamic nature of the cloud comes with its own limitations and use cases, but with the help of dynamic inventory in Ansible, we can target hosts with AWS tagging, resource IDs, AZ, regions, hostnames, and so on.
We will need to configure Ansible in the exact same way as described in Chapter 2, Using Ansible to Manage AWS EC2, under the recipe Preparing Ansible to work with AWS.