Mastering
Cloud Computing
Powering AI, Bog Data and IoT Applications
Rajkumar Buyya
Christian Vecchiola
Thamarai Selvi
Shivananda Poojara
Satish N. Srirama
Copyright ©2024 by McGraw Hill Education (India) Private Limited 1
Chapter 1
Introduction
2
Learning Objectives
• Analyze the key concepts of Cloud Computing.
• Trace the historical development of computing models that have evolved
into Cloud Computing.
• Identify and explain the components and architecture of Cloud
Computing environments.
• Demonstrate the steps involved in setting up and configuring Cloud
environments.
• Evaluate the technologies that underpin Cloud Computing platforms.
• Compare different Cloud Computing platforms and their features.
Chapter 1 Copyright ©2024 by McGraw Hill Education (India) Private Limited 3
Cloud Computing
• Computing is evolving into a service model similar to utilities (water,
electricity, gas, telephony).
• Users access services based on their requirements without regard to
where the services are hosted.
• Cloud Computing is the latest paradigm turning "computing utilities"
into reality.
• Focuses on designing computing systems, developing applications, and
leverages existing services for building software.
• Resources are accessible through the Internet on a pay-per-use basis.
Chapter 1 Copyright ©2024 by McGraw Hill Education (India) Private Limited 4
Vision of Cloud Computing
Chapter 1 Copyright ©2024 by McGraw Hill Education (India) Private Limited 5
Defining a Cloud
• A Cloud is a type of parallel and distributed system consists of
interconnected and virtualized computers.
Chapter 1 Copyright ©2024 by McGraw Hill Education (India) Private Limited 6
Bird Eye View of Cloud Computing
Chapter 1 Copyright ©2024 by McGraw Hill Education (India) Private Limited 7
Cloud-Computing Reference Model
Chapter 1 Copyright ©2024 by McGraw Hill Education (India) Private Limited 8
Characterstics & Challenges
Characteristics Challenges
• No upfront commitments • Resource Provisioning
• On demand access • Technical Challenges
• Nice pricing • Integration Issues
• Simplified application • Security Challenges
• Efficient resource allocation • Confidentiality
• Energy efficiency • Legal
• Seamless creation • Privacy Consideration
Chapter 1 Copyright ©2024 by McGraw Hill Education (India) Private Limited 9
Historical Developments
Five technologies that contributed to Cloud Computing are:
1. Distributed System
• A collection of independent computers that appears as a single coherent
system to the user.
• Three major milestones have led to Cloud computing:
Mainframes Cluster Grid
Chapter 1 Copyright ©2024 by McGraw Hill Education (India) Private Limited 10
Historical Developments (Continued)
2. Virtualization
• A technology that allows creation of different computing environments.
• Allows multiple software stacks to coexist on the same hardware.
• Hardware virtualization Supports multiple virtual machine instances.
• Examples are Amazon EC2, RightScale, VMware vCloud.
• Run applications using a specific program called a virtual machine.
• Examples are Java Virtual Machine (JVM), .NET Framework.
Chapter 1 Copyright ©2024 by McGraw Hill Education (India) Private Limited 11
Historical Developments (Continued)
3. Web 2.0
• Web is the primary interface for delivering Cloud services.
• Represents the evolution of the Web into a rich application
development platform.
• Technology involved: XML, AJAX, Web Services, etc.
• Services accessible from various devices such as cell phones, TVs, etc.
• Popular applications are Google Documents, Google Maps, Facebook,
Twitter, YouTube, Wikipedia etc.
• Applications continuously improve with updates integrated based on
usage trends.
Chapter 1 Copyright ©2024 by McGraw Hill Education (India) Private Limited 12
Historical Developments (Continued)
4. Service-Oriented Computing
• Service orientation is the core reference model for Cloud
computing systems.
• SOC adopts services as primary building blocks for application
and system development.
• Service-Oriented Computing introduces and diffuses two
important concepts: QoS and SaaS.
• QoS identifies a set of functional and non-functional attributes
for service evaluation (e.g., response time, security, reliability).
• SaaS introduces a delivery model for software services, inherited
from Application Service Providers (ASPs).
Chapter 1 Copyright ©2024 by McGraw Hill Education (India) Private Limited 13
Historical Developments (Continued)
5. Utility-Oriented Computing
• Utility computing is a service provisioning model where resources like
storage, compute power, applications, and infrastructure are offered on a
pay-per-use basis.
• John McCarthy predicted computing as a public utility, comparable to
the telephone system.
• Quality of Service (QoS) is a key consideration in utility computing.
• Utility computing laid the foundation for Cloud computing.
• Cloud computing realizes the vision of “computing utilities” by offering
a full range of resources and services on demand.
Chapter 1 Copyright ©2024 by McGraw Hill Education (India) Private Limited 14
Post-2010 Advances in Cloud Computing
• Significant advancements has been done in Cloud computing over the
last decade.
• Applications include startups, enterprise systems, batch jobs, scientific,
and high-performance computing.
• Cloud computing supports IoT applications via the CIoT model.
• Fog computing addresses CIoT latency issues by bringing storage and
processing closer to sensor devices.
• Automating container deployment, management, networking, and
scaling.
Chapter 1 Copyright ©2024 by McGraw Hill Education (India) Private Limited 15
Building Cloud Computing Environments
• The creation of Cloud-computing environments encompasses
. both the development of applications and System Development
Applications Infrastructure
Development and System
Development
Chapter 1 Copyright ©2024 by McGraw Hill Education (India) Private Limited 16
Computing Platforms and Technologies
1. Amazon Web Services (AWS)
• AWS offers comprehensive Cloud IaaS services, ranging from virtual
compute, storage, and networking to complete computing stacks.
• AWS is mostly known for its compute and storage on demand services,
namely Elastic Compute Cloud (EC2) and Simple Storage Service (S3).
2. Google AppEngine
• Google AppEngine is a scalable runtime environment mostly devoted to
executing Web applications.
• AppEngine provides both a secure execution environment and a collection
of services. .
Chapter 1 Copyright ©2024 by McGraw Hill Education (India) Private Limited 17
Computing Platforms and Technologies (Continued)
3. Microsoft Azure
• Microsoft Azure is a Cloud operating system and a platform for developing
applications in the Cloud .
• Applications in Azure are organized around the concept of roles: Web,
Worker and Virtual Machine Role.
4. Hadoop
• Apache Hadoop is an open-source framework suited for processing large
data sets on commodity hardware .
• Hadoop is an implementation of MapReduce, provides two fundamental
operations: Map and Reduce .
Chapter 1 Copyright ©2024 by McGraw Hill Education (India) Private Limited 18
Computing Platforms and Technologies (Continued)
5. Force.com and Sales.com
• Force.com is a Cloud computing platform for developing social enterprise
applications.
• This platform is the basis of SalesForce.com—a Software-as-a-Service
solution for customer relationship management.
6. Manjrasoft Aneka
• Manjrasoft Aneka is a Cloud application platform for rapid creation of
scalable applications.
• Developers can choose different abstractions to design their application:
tasks, distributed threads, and map-reduce .
Chapter 1 Copyright ©2024 by McGraw Hill Education (India) Private Limited 19