Chapter 2Virtualization and Cloud Computing
2.1 Cloud Computing
Cloud computing has become a widely used computing model to support cost‐effective and efficient data processing using commodity servers. Cloud computing makes effective use of distributed environments for tackling large‐scale computation problems on vast data set. There are multiple challenges with cloud computing, such as virtualization, isolation, performance, scalability, privacy, and security. In this section, we first provide an overview of the architecture of cloud computing. Then, we will go deeper into various virtualization technologies and focus on the network virtualization.
2.1.1 Architecture
Public cloud providers use an on‐demand, pay‐as‐you‐go model of compute and storage infrastructure as well as platform services. Amazon Web Services (AWS) led the early cloud computing revolution, beginning with their S3 service in 2006. Their services have been adopted by companies large and small, from backups and archival storage in S3, to compute in EC2, Virtual Private Clouds, IAM authorization and authentication, and RDS managed databases, to name a few. For customers, these services are easy to add, easy to consume, and can lead to a sprawling, poorly documented infrastructure.
Cloud computing can be viewed as a layering architecture, as shown in Figure 2.1.

Figure 2.1 Cloud computing architecture.
- The hardware layer ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access