Chapter 17. Cloud Infrastructure

Ansible has several features that make working with public and private clouds much easier. A cloud can be seen as a layered platform where the user can create resources to run software applications.1 Users can dynamically allocate or programmatically remove cloud infrastructure—including compute, networking, and storage resources—which is called infrastructure as a service (IaaS).

An IaaS cloud service enables users to provision (create) new servers. All IaaS clouds are self-service, meaning that the user interacts directly with a software service rather than, say, filing a ticket with the IT department. Most IaaS clouds offer three types of interfaces to allow users to interact with the system:

  • Web interface

  • Command-line interface

  • REST API

Note

In the case of EC2, the web interface is called the AWS Management Console, and the command-line interface is called (unimaginatively) the AWS Command-Line Interface. The REST API is documented at Amazon.

IaaS clouds typically use virtual machines to implement the servers, although you can build an IaaS cloud by using bare-metal servers (where users run directly on the hardware rather than inside a virtual machine) or containers. Most IaaS clouds let you do more than just start up and tear down servers. In particular, they typically let you provision storage so you can attach and detach disks to and from your servers. This type of storage is commonly referred to as block storage. They also offer ...

Get Ansible: Up and Running, 3rd Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.