1. Define Cloud Computing.
Ans: Cloud computing is the on-demand delivery of IT resources (compute, storage, database) over the Internet with pay-as-you-go pricing. It allows users to access technology services without managing physical infrastructure.
2. What is Utility Computing?
Ans: Utility computing is a service provisioning model where the service provider makes computing resources available to the customer and charges them based on actual usage (like electricity or water metering).
3. Differentiate between Public and Private Cloud.
Ans: Public Cloud is open to the general public and owned by a service provider (e.g., AWS). Private Cloud is used exclusively by a single organization and can be hosted on-premise or by a third party.
4. Define IaaS (Infrastructure as a Service).
Ans: IaaS provides virtualized computing resources over the internet. Users rent raw servers, storage, and networking. Example: Amazon EC2, Google Compute Engine.
5. Define PaaS (Platform as a Service).
Ans: PaaS provides a platform allowing customers to develop, run, and manage applications without the complexity of building and maintaining the infrastructure. Example: Google App Engine, Heroku.
6. Define SaaS (Software as a Service).
Ans: SaaS delivers software applications over the internet on a subscription basis. The software is managed entirely by the provider. Example: Gmail, Salesforce, Dropbox.
7. What is a Hybrid Cloud?
Ans: Hybrid Cloud is a computing environment that connects a public cloud and a private cloud (on-premise data center), allowing data and applications to be shared between them.
8. List four key characteristics of Cloud Computing.
Ans: On-demand self-service, Broad network access, Resource pooling, and Rapid elasticity.
9. What is the Cloud Computing Reference Model?
Ans: It is an abstract framework that divides cloud computing into layers (Physical, Virtual, Control, and Service layers) to standardize the functions and activities involved in cloud computing.
10. Name three major Cloud Service Providers (CSPs).
Ans: Amazon Web Services (AWS), Microsoft Azure, and Google Cloud Platform (GCP).
Introduction to Cloud Computing Fundamentals: Cloud computing at a glance, defining a cloud, cloud computing reference model, types of services (IaaS, PaaS, SaaS), cloud deployment models (public, private, hybrid), utility computing, cloud computing characteristics and benefits, cloud service providers (Amazon Web Services, Microsoft Azure, Google App Engine).
1.1 Cloud Computing at a glance- Defining a cloud TB1:Pg1.4
1.2 Cloud Computing reference model TB1:Pg1.6- OR Types of services (IaaS, PaaS, SaaS) – Ref1:Pg31, TB2:Pg35
1.3 Cloud deployment models (public, private, hybrid) Ref1:Pg11, TB2: Pg193
1.4 Utility computing Ref1: Pg1, TB1: Pg1.16
1.5 Cloud Computing characteristics and benefits TB1: Pg1.9
1.6 Cloud service providers (Amazon Web Services, Microsoft Azure, Google App Engine). TB1: Pg1.18
Definition1: Cloud computing refers to both the applications delivered as services over the Internet, and the hardware and system software in the data centres that provide those services
Definition2: Cloud computing is a model for enabling ubiquitous, convenient, on-demand network access to a shared pool of configurable computing resources (e.g. networks, servers, storage, applications, and services) that can be rapidly provisioned and released with minimal management effort or service provider interaction.
Definition3: A Cloud is a type of parallel and distributed system consisting of a collection of interconnected and virtualized computers that are dynamically provisioned and presented as one or more unified computing resources based on service-level agreements established through negotiation between the service provider and consumers.
The Cloud Computing Reference Model categorizes diverse on-demand IT services into a layered stack consisting of Infrastructure-as-a-Service (IaaS), Platform-as-a-Service (PaaS), and Software-as-a-Service (SaaS).
•At the base of this stack, IaaS delivers virtualized hardware, storage, and networking, allowing users to configure their own software environments on the provider's infrastructure.
•The middle layer, PaaS, provides scalable runtime environments and middleware, enabling developers to build applications without managing the underlying hardware scalability or fault tolerance.
•At the top level, SaaS offers fully managed end-user applications, such as CRM and office automation, which are accessible via browsers and require no maintenance from the user.
•This model provides an organic view of cloud computing, illustrating how services range from raw infrastructure control to high-level application usage.
NOTE: Web 2.0 Interface => browser(s), API(s), libraries, and configuration tools
NOTE: Web 2.0 applications are Google Documents, Google Maps, Flickr, Facebook, Twitter, YouTube, de.li.cious, Blogger, and Wikipedia.
Public Clouds:
A public cloud is built over the Internet and can be accessed by any user or organization by paying for the service. Resources are available to the general public through online connectivity.
Public clouds are owned, operated, and maintained by commercial service providers. Users access cloud resources through a subscription or pay-per-use model without managing the underlying infrastructure.
Service providers offer a public interface to create, manage, and monitor virtual machine (VM) instances within their proprietary infrastructure using virtualization technologies.
Public clouds provide application and infrastructure services on a flexible price-per-use basis, enabling organizations to scale resources dynamically and pay only for what they consume.
Examples: Netflix using AWS, Amazon Prime Video
Private Clouds:
A private cloud is built within an organization’s intranet and is owned and managed by a single organization. Access is restricted to internal users and authorized partners only.
Private clouds are not intended to sell services over the public Internet. They do not provide publicly accessible interfaces and are deployed solely for internal organizational use.
A private cloud provides local users with a flexible and agile infrastructure to run service workloads efficiently within the organization’s administrative domain.
Private clouds offer higher levels of security, customization, and organizational control, though they may impact cloud standardization compared to public cloud environments.
Examples: Netflix, Finance, Govt, Healthcare, Intellectual Property
Hybrid Clouds:
A hybrid cloud integrates both public and private cloud infrastructures, allowing organizations to use a mix of internal and external cloud resources.
Private clouds in a hybrid model can supplement local infrastructure by bursting workloads to an external public cloud when additional computing capacity is required.
Hybrid clouds provide controlled access to internal clients, partner networks, and third-party users, enabling flexible collaboration across organizational boundaries.
Hybrid clouds strike a balance between standardization and flexibility by combining the cost efficiency and scalability of public clouds with the security, customization, and control of private clouds.
Examples: Netflix = load balance (private -> public cloud when traffic overflow), disaster recovery (private cloud data backup in public clouds), banking (build customized solutions on software applications) using DevOps (Agile Tech in SE (CI/CD) replaced Waterfall Model)
The hardware and software resources are concentrated in large data centers and users can pay as they consume computing, storage, and communication resources.
focus is on the business model for providing the computing services
Cloud computing is a path to utility computing
Def: Utility computing is a vision of computing, defining a service provisioning model for compute services in which resources such as storage, compute power, applications, and infrastructure are packaged and offered on a pay-per-use basis.
Example: Cloud platforms such as Amazon Web Services (AWS) charge users only for the computing resources they consume, making them practical implementations of utility computing
Utility computing is a key computing paradigm that contributes to technology convergence, where web services, grids, data centers, and cloud computing combine to deliver ubiquitous, reliable, scalable, and SLA-driven computing services for both business (HTC) and scientific (HPC) applications.
HTC = many jobs over time (business-oriented)
HPC = one big job very fast (science-oriented)
On-demand self services: consumer acquire server time/ network storage automatically without human intervention
Flexible and attractive pricing: Users pay only for the resources they consume, reducing operational and maintenance costs.
Scalability and agility: Cloud systems enable rapid scaling of applications and infrastructure to handle workload fluctuations efficiently.
Efficient resource utilization: Multi-tenancy and shared infrastructure improve resource allocation and overall system utilization.
Energy efficiency: Large cloud data centers optimize power consumption, reducing environmental impact compared to traditional IT setups.
Seamless service composition: Cloud computing supports easy integration and reuse of third-party services through service-oriented architectures.
Amazon Web Services (AWS):
AWS IaaS => virtual compute, storage, networking, and complete computing stacks.
EC2 => customizable virtual machines with multiple hardware configurations, GPU, cluster instances, deployable via web console or APIs.
S3 => provides persistent object storage organized into buckets, allowing storage of files, disk images, and binary objects accessible globally.
Additional services => databases, DNS, caching, and networking to build scalable cloud-based systems.
Google App Engine:
It is a PaaS
Designed mainly for hosting and executing scalable web applications..
Applications automatically scale based on demand while running in a secure execution environment managed by Google.
App Engine provides services such as in-memory caching, scalable data stores, task queues, messaging, and cron jobs.
Developers can build and test applications locally using the App Engine SDK and deploy them easily with cost control through quotas.
Microsoft Azure:
Microsoft Azure is a cloud operating system providing a platform for developing and deploying web and distributed applications.
Applications are structured using roles—Web role, Worker role, and Virtual Machine role—each serving specific execution purposes.
The Virtual Machine role allows full customization of the computing stack, including operating systems and application software.
Azure offers supporting services such as storage (relational and blob), networking, caching, and content delivery to complement applications.
Def1: Armbrust et al. -Link: https://www2.eecs.berkeley.edu/Pubs/TechRpts/2009/EECS-2009-28.pdf
Def2: National Institute of Standards and Technology (NIST)- America
Def3: Buyya et al – Link: https://www.sciencedirect.com/science/article/abs/pii/S0167739X08001957
CC Reference Model: https://uncodemy.com/blog/cloud-computing-reference-model
Hybrid cloud cases: https://www.ibm.com/think/topics/hybrid-cloud-use-cases
Pricing, Services, etc., of various service providers:
Three Success Stories on SaaS Applications
1. To discover new drugs through DNA sequence analysis, Eli Lily Company has used Amazon’sAWS platform with provisioned server and storage clusters to conduct high-performance biological sequence analysis without using an expensive supercomputer. The benefit of this IaaS application is reduced drug deployment time with much lower costs.
2. The New York Times has applied Amazon’s EC2 and S3 services to retrieve useful pictorial information quickly from millions of archival articles and newspapers. The New York Times has significantly reduced the time and cost in getting the job done
3. Pitney Bowes, an e-commerce company, offers clients the opportunity to perform B2B transactions using the Microsoft Azure platform, along with .NET and SQL services. These offerings have signifi cantly increased the company’s client base
IaaS, PaaS, SaaS
CC - IaaS
AWS - VPC (Virtual Private Cloud)
CC Services - PaaS
Google App Engine
Data Center