Cloud Computing, Virtualization
Session-1
Cloud Computing
What is Cloud Computing
Shared pool of configurable computing resources
On-demand network access
Provisioned by the Service Provider
Adopted from: Effectively and Securely Using the Cloud Computing Paradigm by peter Mell, Tim
Grance
Architectural Model for Cloud Computing
Simplified Cloud Architecture
Cloud Computing Characteristics
Cloud Computing Characteristics
Scalability : Scale up and scale-down of resources.
Resiliency: Providing mirrored solutions to minimize
downtime in the event of a disaster.
Homogeneity: No matter which cloud provider and
architecture an organization uses, an open cloud will
make it easy for them to work with other groups.
On-demand self-service
Broad network access
Resource pooling: location independence
customer generally has no control or knowledge
over the exact location of the provided resources
Rapid elasticity: Quickly scale out and scale in.
Measured Service: Cloud systems automatically
control and optimize resource for type of service (e.g.,
storage, processing, bandwidth, and active user
accounts).
Cloud Service Models
Deployment Models
Public Cloud :
- Google App Engine and Windows Azure
Private Cloud :
- Private datacenters
Hybrid Cloud
- Microsoft Azure + Datacenters
Community Cloud
- Particular group of users
Virtualization
Virtualization is way to run multiple operating
systems and user applications on the same
hardware
- E.g., run both Windows and Linux on the same
laptop
How is it different from dual-boot?
Both OSes run simultaneously
The OSes are completely isolated from each other
Traditional and Virtual Architecture
Hardware Virtualization
Full Virtualization Para Virtualization
Benefits of Virtualization
Sharing of resources helps cost reduction.
Isolation: Virtual machines are isolated from
each other as if they are physically separated.
Encapsulation: Virtual machines encapsulate a
complete computing environment.
Hardware Independence: Virtual machines run
independently of underlying hardware.
Portability: Virtual machines can be migrated
between different hosts.
VM Architectures
Two types of Hypervisors
Hypervisor (or VMM – Virtual Machine Monitor) is a
software layer that allows several virtual machines
to run on a physical machine
Type 1 (bare-metal) Type 2 (hosted)
VM1 VM2 Guest
Guest VM1 VM2 Proces Hypervisor
s
Hypervisor OS Host
Host
Hardware
Hardware
VMware Workstation, Microsoft
VMware ESX, Microsoft Hyper-V, Virtual PC, Sun VirtualBox, QEMU,
Xen KVM
VMM Operations
Low-Level VMM Operations (2)
Low-Level VMM Operations (3)
Low-Level VMM Operations (4)
Opportunities and Challenges
The use of the cloud provides a number of
opportunities:
- It enables services to be used without any understanding
of their infrastructure.
- Cloud computing works using economies of scale:
- It potentially lowers the outlay expense for start up
companies, as they would no longer need to buy their own
software or servers.
- Cost would be by on-demand pricing.
- Vendors and Service providers claim costs by establishing
an ongoing revenue stream.
- Data and services are stored remotely but accessible from
“anywhere”.
Opportunities and Challenges
In parallel there has been backlash against cloud
computing:
Use of cloud computing means dependence on
others and that could possibly limit flexibility and
innovation:
Security could prove to be a big issue:
- It is still unclear how safe out-sourced data is and
when using these services ownership of data is not
always clear.
There are also issues relating to policy and access:
If your data is stored abroad whose policy do you
adhere to?
What happens if the remote server goes down?
How will you then access files?
There have been cases of users being locked out of
accounts and losing access to data.
Advantages of Cloud Computing
Lower computer costs:
You do not need a high-powered and high-priced
computer to run cloud computing web-based
applications.
Since applications run in the cloud, not on the desktop
PC, your desktop PC does not need the processing
power or hard disk space demanded by traditional
desktop software.
When you are using web-based applications, your PC
can be less expensive, with a smaller hard disk, less
memory, more efficient processor...
Advantages of Cloud Computing
Improved performance:
Computers in a cloud computing system boot
and run faster because they have fewer
programs and processes loaded into memory…
Reduced software costs:
Instead of purchasing expensive software
applications, you can get most of what you need
for free
Unlimited storage capacity:
Cloud computing offers virtually limitless storage.
Your computer's current 1 Tbyte hard drive is small
compared to the hundreds of Pbytes available in the
cloud
Advantages of Cloud Computing
Increased data reliability:
Unlike desktop computing, in which if a hard disk
crashes and destroy all your valuable data, a
computer crashing in the cloud should not affect the
storage of your data.
if your personal computer crashes, all your data is
still out there in the cloud, still accessible
Cloud computing is .a data-safe computing platform!
Disadvantages of Cloud Computing
Requires a constant Internet connection:
- Cannot access anything, even your own documents.
Does not work well with low-speed connections:
- Similarly, a low-speed Internet connection, makes cloud
computing painful at best and often impossible.
- Web-based applications require a lot of bandwidth to
download, as do large documents.
Stored data might not be secure:
- With cloud computing, all your data is stored on the
cloud.
- The questions is How secure is the cloud?
Stored data can be lost:
- Theoretically, data stored in the cloud is safe,
replicated across multiple machines.
- But on the off chance that your data goes missing, you
have no physical or local backup.
What Is Elastic Computing?
IT is the ability of a system, to dynamically
adjust and manage resources such as
storage, infrastructure, CPU, memory, etc.,
based on fluctuating workload
requirements.
It allows for the efficient allocation and
reallocation of resources to meet changing
demands, ensuring optimal performance
and cost-effectiveness.
How Does Elasticity Work in Cloud
Computing?
Cloud elasticity allows businesses to easily
adjust their capacity, manually or
automatically, to meet increased demand.
Cloud elasticity allows organizations to
easily add or remove capacity based on
workload trends.
How Elastic Computing Works
Benefits of Elastic Computing
Ability to Scale: One of the key features of elastic computing is its
ability to scale resources up or down quick
Pay-per-use feature: Elastic computing offers a pay-as-you-go
model, allowing organizations to pay only for the resources they use,
rather than maintaining costly infrastructure that may remain idle
during periods of low demand.
Cost-effectiveness & flexibility: By dynamically scaling
resources based on demand, elastic computing helps organizations
optimize resource usage and reduce costs, while also providing the
flexibility to adapt to changing workload requirements.
On-demand computing: Elastic computing enables organizations
to access computing resources and services on-demand, without the
need to provision and maintain physical infrastructure. This on-
demand access to resources allows organizations to scale up or
down quickly in response to changing needs.
.
Examples of Elastic Computing
Ecommerce applications: During peak shopping seasons or special
promotions, ecommerce websites experience increased traffic and
demand.
Ticket booking applications: Ticket booking websites often
experience spikes in traffic during events or promotions. Elastic
computing enables these websites to scale resources dynamically to
handle the increased demand, preventing downtime and ensuring a
seamless booking experience for users.
Streaming services: Streaming platforms such as Netflix experience
fluctuations in demand based on the popularity of content. Elastic
computing allows these platforms to scale resources dynamically to
handle spikes in viewership, ensuring uninterrupted streaming for
users.
Temporary projects: Organizations may have temporary projects or
initiatives that require additional computing resources for a limited
time. Elastic computing enables organizations to scale resources up or
down as needed for these projects, without the need for long-term
commitments or investments in infrastructure.
Hybrid Cloud and Multi-Cloud
Services:
Some cloud service providers offer hybrid cloud and multi-cloud
solutions, allowing customers to seamlessly integrate and manage
resources across multiple cloud environments and on-premises
infrastructure.
Examples of providers offering hybrid cloud and multi-cloud
solutions include AWS Outposts, Azure Arc, and Google Anthos.
What is multicloud?
Multicloud is when an organization uses cloud computing services
from at least two cloud providers to run their applications.
Multicloud environments typically include a combination of two or
more public clouds, two or more private clouds, or some
combination of both.
Multicloud refers to using services from more than one public cloud
provider at the same time.
A multicloud environment allows your cloud environments to be
private, public, or a combination of both.
Multicloud vs. hybrid cloud
The term multicloud refers to using cloud computing
services from more than one public cloud vendor for
different workloads, while the term hybrid cloud describes
when common workloads are deployed across multiple
computing environments.
Data center infrastructure plays a crucial role in ensuring
the reliability, scalability, and performance of cloud
computing environments. Two key components of data
center infrastructure are network equipment and server
interfaces, along with network topologies like the leaf-spine
architecture.
Spine Leaf Network Topology
Architecture
A Leaf-Spine network topology in cloud computing is a data
center network architecture where servers connect to dedicated
"leaf" switches, which then uniformly connect to a layer of
"spine" switches, creating a highly scalable, redundant, and
efficient network for data transmission within the cloud
environment.
Key components of a Leaf-Spine
network:
• Leaf Switches: These are the access layer switches that
directly connect to individual servers and other network
devices within a rack.
• Spine Switches: These are the core layer switches that inter-
connect all the leaf switches, facilitating high-speed data
transfer between different server racks.
Benefits of Leaf-Spine topology:
• Scalability: Easily add new servers by connecting them to
existing leaf switches, and expand the network by adding
more spine switches without major reconfiguration.
• High Availability: Redundancy is achieved by connecting
each leaf switch to multiple spine switches, ensuring data can
still flow even if a single spine switch fails.
• Low Latency: Traffic is efficiently distributed across the
network due to the dedicated connections between leaf and
spine switches, minimizing latency.
Case Study Example:
Large Cloud Provider Scenario: A major cloud provider
like AWS or Azure utilizes a Leaf-Spine network to
efficiently manage thousands of virtual machines across
multiple data centers.
Leaf Switches: Each data center rack has dedicated leaf
switches connected to the servers within that rack.
Spine Switches: These leaf switches are interconnected
through a layer of spine switches, forming a full-mesh
network that allows for high-speed data transfer between
any server within the cloud.
Key considerations for designing a
Leaf-Spine network
Traffic patterns: Analyze the expected traffic flow
(east-west vs. north-south) to optimize network design.
Link aggregation: Utilize link aggregation protocols to
maximize bandwidth between leaf and spine switches.
Routing protocols: Choose appropriate routing
protocols (like ECMP) to distribute traffic evenly across
multiple paths.
Virtualization: Integrate with network virtualization
technologies to manage network resources efficiently
in a cloud environment.
Summary
Cloud Computing is outpacing the IT industry
Real business value can be realized by customers of all
sizes
Cloud solutions are simple to acquire, don’t require
long term contracts and are easier to scale up and
down as needed
Proper planning and migration services are needed to
ensure a successful implementation
Public and Private Clouds can be deployed together to
leverage the best of both
Third party monitoring services ensure customer are
getting the most out of their cloud environment
Security Compliance and Monitoring is achievable with
careful planning and analysis