Cloud Computing Unit 1
Cloud Computing Unit 1
(22ADE551)
Presented by:
Rajeshwari Patil
Assistant Professor
NMIT
Unit I
The Era of Cloud Computing
Cloud Computing Everywhere
In a short time, cloud computing has become a significant tool in various industries,
including startups, individuals, and businesses.
Cloud facilities are being leased for various purposes, such as web site maintenance, IoT
device monitoring, and business functions like payroll, accounting, and billing. These
facilities are being consolidated into local cloud data centers, allowing for efficient
communication and processing.
In the early 2000s, local facilities were used for business functions like payroll, accounting,
billing, and supply chain management. However, these functions are now being migrated
to cloud computing.
Enterprises that retain some local computing are shifting from having services run on
individual computers to consolidating facilities into a local cloud data center.
Cloud computing also provides processing for IoT devices, such as battery-operated
sensors used to monitor civil infrastructure like bridges.
The cloud data center combines measurements from dozens of sensors to assess the
safety of the bridge, requiring far more processing than the capacity of battery-operated
sensors.
In summary, cloud computing has become a crucial tool for businesses, providing
communication, processing, and a more efficient way to manage their resources.
A Facility for Flexible Computing
A key aspect of cloud computing is its ability to accommodate both incremental growth and
cyclic demand.
A cloud provider offers flexible computing facilities, storage, and communication facilities,
catering to both small startups and large enterprises.
Incremental growth is crucial, as startups can start with minimal cloud facilities to support
a basic web site and gradually increase their lease as the business grows. Cloud providers can
satisfy computing needs even if the startup grows into a substantial enterprise business.
Cyclic demand, on the other hand, allows companies to lease additional facilities to
accommodate changing demand throughout the year. The pricing model of a cloud provider
only charges the customer for the facilities they use, making it an attractive option for
businesses.
The start of cloud: the power wall and Multiple core
Two intertwined factors contributed to the start of the cloud paradigm.
The technological factor has significantly impacted the cost of acquiring and running
equipment and software. In the 1980s and early 1990s, chip manufacturers produced more
functional and faster processors, leading to increased power and cost savings.
This increased computing power encouraged both individuals and organizations to expand
their use of computers. For instance, organizations could run software on servers to offer
services like the World Wide Web, and when demand for a particular service increased, they
could replace the server with a faster processor and more memory.
However, by the late 1990s, the chip industry faced a significant limitation due to Moore's
Law, which predicted that the number of transistors would double every eighteen months.
This led to more transistors being squeezed together on a chip each year, each consuming a
small amount of power and emitting a small amount of heat.
Even a small increase in clock speed increased the temperature significantly, leading to
manufacturers reaching a critical point where processor speeds could not be increased
beyond a few Gigahertz without generating too much heat, resulting in a power wall.
Chip manufacturers have developed multicore processors, which are chips with multiple
cores, to achieve additional computational power without increasing the speed of a processor.
These processors operate at a speed below the power wall, allowing for parallelism.
Each core consists of a complete processor that operates at a safe speed. Multicore processors
are essential building blocks for cloud computing, with many cores (e.g., 64 or 128).
Software must devise a way to use multiple cores to perform computation, and the industry
uses the term multicore processor to describe these processors. This approach allows for
more efficient computation without increasing the speed of a processor.
From Multiple Core to Multiple Machines
Multiple cores offer increased processing power on a chip, but they do not solve the problem of
arbitrary scale. As the number of cores increases, I/O and memory accesses become a bottleneck.
The amount of data grew beyond the capabilities of even the most powerful supercomputers.
Scientists wondered if a new form of supercomputing could be achieved by interconnecting a
large set of inexpensive personal computers, also known as a cluster architecture. This explored
a design that provided the basis for cloud computing.
Using multiple computers for scientific computations poses a software challenge, but the science
community found ways to use a cluster for many of its important computational problems,
making it the best way to build affordable, incrementally expandable supercomputers.
From clusters to web sites and load balancing
Web sites have grown in popularity in the 1990s, requiring servers to handle multiple
requests simultaneously. To accommodate thousands of users, a load balancer technology
has become a fundamental component in cloud computing.
Load balancers divide incoming traffic among servers, ensuring all communication from a
given customer goes to the same server. This allows servers to retain information and use it
for later requests.
For a site with N servers, load balancing means each server handles approximately 1/N of
the customers, allowing for easy expansion by adding additional servers.
Illustration of a load balancer
Racks of server Computers
As demand for smaller computers increased, computer vendors redesigned enclosures to fit
into racks, tall metal equipment cabinets.
Racks, originally used for telephone equipment, are now used for storing servers in a small
space.
Each rack contains 42 units of space, with servers designed to be one unit tall(=1.752
inches).
Additional constraints, such as network switches and empty slots, may prevent overheating
and ensure efficient server storage.
The Economic Motivation for a Centralized Data Center
Collecting multiple servers into a rack offers lower cost advantages for IT management,
enhancing efficiency and productivity. There are two aspects
o Operating expenses (opex): lower recurring cost
Operating expenses:
The low cost of computer hardware led to increased IT staffing costs, as each
department purchased multiple computers and hired their own staff. This led to a
dilemma for organizations, as each department had to maintain their own IT staff.
By consolidating servers in racks in a central facility, organizations can optimize costs
and share expertise. This centralized facility, known as a data center, allows employees in
departments to access the servers over a network, reducing the need for travel to each
department to address problems. This approach helps organizations reduce operating
expenses and maintain a centralized IT infrastructure.
Capital Expenses:
The data center approach reduces overall equipment cost by consolidating servers
within an organization. Each department must choose when to upgrade their server,
considering cost, features, and performance.
This allows for uniform configurations and multiple server upgrades at once, allowing for
bargaining and quantity discounts.
Origin of the term “In the Cloud”
The term "in the cloud" is often used to describe a data center, as servers in a data center
are not part of the Internet itself.
Instead, servers are computers that connect to the Internet and should be depicted
outside the cloud, with network connections leading to the cloud.
The industry started using cloud computing to describe computing in the cloud if it is
not, as early data centers needed high-capacity connections to major Internet backbone
networks. Placing a data center near an Internet peering point minimizes cost, and
engineers often refer to it as in the cloud.
What is Cloud Computing?
Cloud computing is the on-demand delivery of computing services such as servers, storage,
databases, networking, software, and analytics.
A data center consolidating servers into a single organization offers economic advantages,
such as bargaining quantity discounts on equipment purchases and reducing the cost of
maintaining and training IT staff.
Cloud providers extend these advantages to larger scales by building multi-tenant data
centers that can handle computing for multiple customers.
These data centers are designed to support multi-tenant computing and ensure data safety
for each customer.
The concept of multi-tenant clouds also applies to groups within a single organization,
such as finance departments or business units, who may want to keep data separate from
the rest of the units.
Concept of Elastic Computing
A fundamental aspect of cloud computing is the customer's ability to lease servers and pay
only for the number they need.
This allows customers to choose to lease a few or many servers and can change the
allocation dynamically.
Elastic computing describes this dynamic service. Cloud owners can increase or decrease
the number of servers allocated to a customer by adjusting the number of physical
servers.
In early cloud systems, customers had to lease fixed physical servers, which was inflexible.
Now, with elastic computing, customers can easily adjust the number of servers they use
based on demand, making the cloud more cost-effective and efficient.
Virtualized Servers
A virtual server is a software-based server that's created by dividing a physical server into
smaller, self-contained segments.
o Rapid creation and removal: Virtualized servers are managed entirely by software,
allowing for the creation or removal of new virtualized servers at any time without
altering or rebooting physical servers.
o Physical sharing: A virtualized server, a software artifact, functions similarly to a
computer program, requiring each to run on a physical server, allowing concurrent
execution of multiple virtualized servers.
o Logical isolation: A virtualized server is a system where multiple servers can run on a
single physical server, but each server is completely isolated from the others.
How virtualized servers aids service providers
Cloud providers use server virtualization to enable elastic computing, allowing rapid
scaling by creating or removing virtual servers as needed.
These advantages make virtualized servers flexible and efficient for customers.
Business Model for Cloud Providers
As cloud computing developed, questions arose about the optimal structure for
companies and revenue generation.
The IaaS vendors offer server, storage, virtualization and networking components in the
infrastructure services.
IaaS customers can access their IaaS services through the internet, and they can scale up
and down the IaaS services on a pay-as-you-go basis.
IaaS vendor is responsible for the updating and maintaining of infrastructure equipment.
A company like Netflix uses AWS to host its entire streaming platform. Instead of owning
physical servers, Netflix rents virtual servers from AWS. This allows Netflix to easily scale its
infrastructure up or down based on the number of viewers, without managing the hardware
itself. AWS handles the physical data centers, power, and cooling, while Netflix controls the
software and applications running on the virtual servers.
Features of IaaS
Virtualized Computing Resources: Provides virtual machines (VMs), servers, and
storage on demand.
Pay-as-you-go Pricing: Customers pay only for the resources they use.
For instance, if you want to build a web app, Google App Engine offers tools and
services such as a pre-configured environment, databases, and scalable resources.
You just upload your code, and it automatically handles things like load balancing,
scaling, and security, so you can focus on developing your app instead of managing
servers.
Features of PaaS
Development Framework: Provides ready-to-use development tools and frameworks
for building applications.
Security and Compliance: Offers built-in security features like authentication, data
encryption, and compliance with standards.
Multi-Tenant Architecture: Supports multiple users or clients while isolating their data
and apps.
Software as a Service(SaaS)
Software as a service (SaaS) offers a subscription of
cloud-based software applications to the user over
the internet.
With SaaS, users don’t need to install or manage the software on their own devices. They
simply access these tools via a web browser, and the cloud provider (Google) handles all
the maintenance, updates, and data storage. This allows users to collaborate and access
their files from any device with an internet connection.
Features of SaaS
Accessible via the Internet: Users can access SaaS applications from any device with a web
browser and internet connection.
No Installation Required: Software runs directly from the cloud, so no local installation or
hardware is needed.
Data Backup and Security: SaaS providers typically offer secure data storage and regular
backups, reducing the risk of data loss.
Device Independence: SaaS applications work across a range of devices (PCs, tablets,
smartphones) without any compatibility issues.
Cost-Effective: It eliminates the need for upfront infrastructure costs and reduces IT
Summary of cloud models
A special case: Desktop as a Service
Desktop as a Service (DaaS) is a cloud service that delivers virtual desktops to users
over the internet.
This is useful for remote work, as employees can access their work environment
securely from anywhere without needing a physical office computer.
The cloud provider manages all the infrastructure, security, and updates, while users get
a full desktop experience.
Features of DaaS
Virtual Desktops: Provides fully functional, cloud-hosted desktops accessible from
anywhere.
Scalability: Easily scale the number of desktops up or down based on business needs.
Synchronization: All files and apps remain updated across all devices.
Remote Collaboration: Supports remote work with seamless access to files, applications,
and desktop environments.
Data Security: Enhanced security features like encryption and centralized data storage
protect against data loss or breaches.
Difference Between Daas & SaaS
Software as a Service
Feature Desktop as a Service (DaaS)
(SaaS)
Provides specific software
Provides a full virtual desktop
applications over the cloud
Scope environment, including operating
(e.g., Google Docs,
system, apps, and files.
Salesforce).
Offers a complete desktop
Offers access to a single or
experience with access to multiple
Functionality set of applications, usually
apps and files, similar to using a
through a web browser.
physical desktop.
Users can access their full Users access specific
Device
desktop from any device (thin software from any internet-
Independence
client, PC, tablet). enabled device.
Ideal for users who need
Ideal for users who need access to
specific software tools
Use Case a full desktop and multiple
without installing them
applications from any location.
locally.
Google Workspace,
Amazon WorkSpaces (provides a
Example Salesforce (provides specific
cloud desktop environment).
apps like email, CRM).