0% found this document useful (0 votes)
5 views

Module 3 Ch2 Notes

Cloud computing module 3 chapter2

Uploaded by

Girinath S
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
5 views

Module 3 Ch2 Notes

Cloud computing module 3 chapter2

Uploaded by

Girinath S
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 11

Module 3

Chapter 2 Understanding Abstraction and Virtualization: Using Virtualization Technologies, Load Bal-
ancing and Virtualization, Understanding Hypervisors, Virtual machine types, VMware vSphere,

# Introduction

Understanding abstraction and virtualization is crucial in the context of cloud computing as they are
fundamental concepts that enable the flexibility, efficiency, and scalability of cloud services.

Abstraction in Cloud Computing:

Abstraction is the process of simplifying complex systems by representing them in a more


understandable and manageable way. In cloud computing, abstraction is achieved through various
levels, each hiding the underlying technical details from the end-users or administrators. There are
typically three layers of abstraction in cloud computing:

1. Infrastructure as a Service (IaaS): At the lowest level of abstraction, IaaS provides virtualized
resources such as virtual machines, storage, and networking. Users can access and manage
these resources without worrying about the physical hardware. This level of abstraction allows
for flexibility and scalability, as users can provision or release resources as needed.

2. Platform as a Service (PaaS): PaaS abstracts the underlying infrastructure even further. It offers
a platform for developers to build and deploy applications without having to manage the
infrastructure, operating systems, or runtime environments. This level of abstraction is
particularly valuable for application development and deployment.

3. Software as a Service (SaaS): SaaS offers fully abstracted applications that are accessible
through a web browser or application interface. End-users can use these applications without
any concern for the underlying infrastructure, data storage, or maintenance. Common examples
of SaaS include email services like Gmail and productivity tools like Microsoft 365.

Virtualization in Cloud Computing:

Virtualization is a key technology that enables abstraction in cloud computing. It involves creating virtual
instances or environments that mimic physical resources, allowing multiple virtual entities to coexist on
a single physical server. There are several types of virtualization used in cloud computing:

1. Server Virtualization: This is the most common type of virtualization. It allows multiple virtual
machines (VMs) to run on a single physical server. Each VM operates independently and can run
different operating systems and applications. Server virtualization improves resource utilization,
reduces hardware costs, and enhances scalability.

2. Storage Virtualization: Storage virtualization abstracts physical storage devices and presents
them as a single logical pool of storage. It allows for efficient management of data and enhances
data redundancy and availability. Examples include network-attached storage (NAS) and storage
area network (SAN) virtualization.

3. Network Virtualization: Network virtualization abstracts network resources, enabling the


creation of virtual networks with isolated communication paths. It's essential for creating
private networks within a shared cloud infrastructure and optimizing network performance and
security.

Benefits of Abstraction and Virtualization in Cloud Computing:

1. Flexibility: Abstraction and virtualization enable resource provisioning and allocation based on
demand, making it easy to scale resources up or down as needed.

2. Efficiency: These concepts improve resource utilization, reducing the need for excess hardware
and associated operational costs.

3. Isolation: Virtualization provides isolation between different entities, enhancing security and
resource management.

4. Cost Savings: By abstracting and virtualizing resources, organizations can reduce hardware and
maintenance costs while improving resource utilization.

5. Simplified Management: Abstraction simplifies the management of complex systems, making it


easier for administrators and users to interact with cloud services.

In summary, abstraction and virtualization are essential components of cloud computing, as they enable
the creation of flexible, efficient, and scalable cloud services that abstract away the complexity of
underlying infrastructure and provide users with the resources they need to run applications and
services.

Using Virtualization Technologies

Using virtualization technologies in cloud computing is a fundamental practice that underpins the
efficiency, flexibility, and scalability of cloud services. Virtualization plays a pivotal role in enabling cloud
providers to deliver on-demand resources and services to users. Here's a detailed explanation of how
virtualization technologies are employed in cloud computing:

1. Server Virtualization:

Server virtualization is perhaps the most widely used virtualization technology in cloud computing. It
involves the creation of virtual machines (VMs) on a physical server, allowing multiple VMs to coexist
independently. These VMs operate as if they were running on dedicated hardware, each with its own
operating system and applications. Server virtualization provides the following benefits:

 Resource Consolidation: Multiple VMs share the physical server's resources, making more
efficient use of the available CPU, memory, and storage.
 Isolation: VMs are isolated from one another, preventing the actions of one VM from affecting
others. This enhances security and stability.

 Scalability: Cloud providers can dynamically provision and deprovision VMs to meet fluctuating
user demand, allowing for elastic and scalable services.

 Migration and Backup: VMs can be easily migrated between physical servers and backed up,
providing high availability and disaster recovery capabilities.

2. Storage Virtualization:

Storage virtualization abstracts physical storage devices and presents them as a unified storage pool.
This technology is used extensively in cloud computing to optimize data management and improve
reliability:

 Aggregated Storage: Multiple storage devices are combined into a single pool, making it easier
to allocate storage resources as needed.

 Data Redundancy: Storage virtualization often includes features like data mirroring and striping,
improving data redundancy and availability.

 Dynamic Scaling: Cloud providers can allocate more storage to applications or users without
significant disruption.

3. Network Virtualization:

Network virtualization abstracts network resources to create virtual networks that operate
independently of the underlying physical network infrastructure. This technology is essential for building
complex, secure, and efficient cloud services:

 Isolation: Different virtual networks can be created for various purposes, enhancing security and
resource management.

 Network Optimization: Network virtualization allows for the efficient routing of traffic, load
balancing, and network segmentation.

 Quality of Service (QoS): Cloud providers can allocate network resources with different QoS
requirements to meet the needs of diverse applications and services.

4. Desktop Virtualization:

Desktop virtualization is used in cloud computing to deliver virtual desktops to end-users, providing
access to applications and data from a variety of devices. This approach simplifies desktop management,
improves security, and offers greater mobility:

 Remote Access: Users can access their desktop environments and applications from anywhere
with an internet connection.
 Centralized Management: IT administrators can manage desktop images, updates, and security
from a central location, reducing maintenance overhead.

 Enhanced Security: Sensitive data and applications remain on the cloud servers, reducing the
risk of data loss or security breaches on local devices.

5. Application Virtualization:

Application virtualization allows cloud providers to encapsulate applications and their dependencies in a
self-contained package. This technology streamlines application deployment, compatibility, and
management:

 Compatibility: Applications can be run on different operating systems and environments


without modification.

 Isolation: Applications are isolated from the host system, reducing conflicts and improving
system stability.

 Simplified Updates: Updates and patches can be applied at the application level, minimizing
disruptions.

To enable these characteristics, resources must be highly configurable and flexible. You can define the
features in software and hardware that enable this flexibility as conforming to one or more of the
following mobility patterns:

 P2V: Physical to Virtual


 V2V: Virtual to Virtual
 V2P: Virtual to Physical
 lP2P: Physical to Physical
 lD2C: Datacenter to Cloud
 C2C: Cloud to Cloud
 C2D: Cloud to Datacenter
 D2D: Datacenter to Datacenter

Virtualization is a key enabler of the first four of five key attributes of cloud computing:
 Service-based: A service-based architecture is where clients are abstracted from service
providers through service interfaces.
 Scalable and elastic: Services can be altered to affect capacity and performance on demand.
 Shared services: Resources are pooled in order to create greater efficiencies.
 Metered usage: Services are billed on a usage basis.
 Internet delivery: The services provided by cloud computing are based on Internet protocols and
formats.

# Load Balancing and Virtualization

Load Balancing:
Load balancing is a critical technique used in cloud computing to distribute network traffic or workloads
across multiple servers, ensuring that no single server becomes overwhelmed while others remain
underutilized. It is essential for optimizing resource utilization, improving fault tolerance, and enhancing
the performance and availability of cloud services. Here's how load balancing works in cloud computing:

1. Distribution of Workloads: Load balancers are responsible for distributing incoming network traffic or
application requests across multiple servers. This distribution ensures that no single server is
overwhelmed while others are idle, thus optimizing resource usage.

2. Improved Performance: Load balancers help improve the response time and overall performance of
cloud services by directing requests to the most suitable server based on factors like server load,
response time, and geographic proximity.

3. High Availability: Load balancing enhances fault tolerance and high availability by automatically
redirecting traffic to healthy servers in case of server failures. If one server becomes unavailable, traffic
is rerouted to others, minimizing service disruption.

4. Scalability: Load balancing facilitates horizontal scalability, allowing cloud providers to add or remove
servers as needed to accommodate varying workloads. This elasticity ensures that cloud services can
meet changing demands.

5. Health Checks: Load balancers continuously monitor the health of the servers in the pool. If a server is
detected as unresponsive or unhealthy, it is temporarily removed from the pool until it recovers.

Virtualization:

Virtualization is a core technology in cloud computing that abstracts physical resources and creates
virtual instances, making it easier to manage and allocate resources. It is primarily used for virtualizing
computing, storage, and networking resources. Here's how virtualization works in cloud computing:

1. Server Virtualization: Cloud providers use server virtualization to create multiple virtual machines
(VMs) on a single physical server. Each VM operates independently and can run its own operating
system and applications. This enables efficient resource utilization and improved scalability.

2. Storage Virtualization: Storage virtualization abstracts physical storage devices and presents them as
a single logical pool. This simplifies data management, improves redundancy, and allows for dynamic
allocation of storage resources.

3. Network Virtualization: Network virtualization abstracts network resources to create isolated virtual
networks. This enhances security, optimizes network routing, and allows for the efficient use of network
resources within the cloud environment.

4. Desktop Virtualization: In cloud computing, desktop virtualization allows the delivery of virtual
desktops to end-users. These virtual desktops can be accessed from various devices and locations,
providing greater mobility, central management, and enhanced security.
Benefits of Load Balancing and Virtualization in Cloud Computing:

 Scalability: Load balancing and virtualization enable cloud services to scale resources up or
down to meet demand, ensuring that cloud services can accommodate varying workloads.

 Fault Tolerance: Load balancing improves the availability of services by routing traffic away from
failed or underperforming servers. Virtualization provides redundancy and disaster recovery
capabilities.

 Resource Efficiency: Virtualization improves resource utilization, reducing the need for excess
hardware. Load balancing optimizes server usage by evenly distributing workloads.

 Simplified Management: Virtualization simplifies resource management by abstracting


underlying physical hardware. Load balancers simplify traffic management and ensure even
distribution of workloads.

In conclusion, load balancing and virtualization are crucial techniques in cloud computing that work
together to deliver efficient, scalable, and highly available cloud services. Load balancing optimizes the
distribution of network traffic, while virtualization abstracts and efficiently manages computing, storage,
and network resources, collectively contributing to the success of cloud computing.

# Understanding Hypervisors

A hypervisor, also known as a virtual machine monitor (VMM), is a software or hardware platform that
enables the creation and management of virtual machines (VMs) on a physical host system. Hypervisors
are essential components of virtualization technology and play a critical role in running multiple
operating systems and applications on a single physical server. There are two primary types of
hypervisors: Type 1 (bare-metal) and Type 2 (hosted) hypervisors. Here's an overview of hypervisors and
their key characteristics:

1. Type 1 Hypervisor (Bare-Metal):

Type 1 hypervisors are installed directly on the physical hardware of the host system. They do not
require an underlying operating system and have direct access to the hardware. This makes them highly
efficient and is often used in enterprise environments. Key features of Type 1 hypervisors include:

 Performance: Type 1 hypervisors are typically more efficient and offer better performance than
Type 2 hypervisors since they operate directly on the hardware.

 Security: They are considered more secure because they have a smaller attack surface and do
not rely on an underlying operating system.

 Examples: Common Type 1 hypervisors include VMware vSphere/ESXi, Microsoft Hyper-V, Xen,
and KVM (Kernel-based Virtual Machine).
 Use Cases: They are suitable for server virtualization, data center consolidation, and cloud
computing.

2. Type 2 Hypervisor (Hosted):

Type 2 hypervisors run on top of an existing operating system, and they are often used for development,
testing, or running virtual machines on desktop or laptop systems. Key features of Type 2 hypervisors
include:

 Ease of Use: Type 2 hypervisors are easy to set up and use since they run on top of an existing
operating system.

 Performance Overhead: They have a performance overhead compared to Type 1 hypervisors


due to the additional layer of the host operating system.

 Examples: Common Type 2 hypervisors include VMware Workstation, Oracle VirtualBox, and
Parallels Desktop.

 Use Cases: They are suitable for development, testing, and running virtual machines on client
devices.

Common Characteristics of Hypervisors:

 Isolation: Hypervisors ensure that VMs are isolated from one another. Actions within one VM do
not affect other VMs on the same host.

 Resource Allocation: Hypervisors allocate physical resources, such as CPU, memory, and
storage, to VMs based on predefined configurations and resource availability.

 Live Migration: Many hypervisors support live migration, allowing VMs to be moved from one
physical host to another without downtime, which is crucial for high availability.
 Snapshot and Cloning: Hypervisors often support snapshot and cloning features, enabling the
creation of backups or duplicates of VMs for various purposes.

 Management Interfaces: Hypervisors provide management interfaces or tools for creating,


configuring, and monitoring VMs.

 Compatibility: They support a wide range of guest operating systems, making it possible to run
Windows, Linux, and other OSes on the same physical hardware.

Hypervisors are foundational to modern virtualization technologies, allowing organizations to optimize


hardware utilization, improve resource management, enhance security, and reduce IT infrastructure
costs. They are widely used in data centers, cloud environments, and desktop virtualization scenarios to
create and manage virtual machines efficiently.

Virtual machine types

Virtual machines (VMs) come in various types, each tailored to specific use cases and requirements. The
choice of VM type depends on factors such as the intended workload, performance needs, and
hardware or infrastructure constraints. Here are some common types of virtual machines:

1. General-Purpose VMs:

These are versatile virtual machines suitable for a wide range of applications and workloads. They offer a
balanced mix of CPU, memory, and storage resources, making them suitable for common computing
tasks. General-purpose VMs are a good choice when you don't have specific performance or resource
requirements.

2. Compute-Optimized VMs:

Compute-optimized VMs are designed for workloads that require a high amount of CPU processing
power. These VMs typically have more CPU cores and higher clock speeds, making them ideal for tasks
like data analytics, scientific simulations, and computational modeling.

3. Memory-Optimized VMs:

Memory-optimized VMs are tailored for workloads that require a large amount of RAM. They are well-
suited for in-memory databases, caching, and applications that handle significant data in memory. These
VMs often have a high memory-to-CPU ratio.

4. Storage-Optimized VMs:

Storage-optimized VMs are optimized for workloads with high storage demands. They come with a
substantial amount of local or network-attached storage, making them suitable for databases, file
servers, and applications that rely on local storage for high-speed data access.

5. GPU-Enabled VMs:
These VMs are equipped with dedicated graphics processing units (GPUs) or accelerators. They are
essential for tasks such as machine learning, scientific simulations, and graphic-intensive applications
that require hardware acceleration.

6. Network-Optimized VMs:

Network-optimized VMs are designed for applications that depend on high network throughput and low
latency. They are suitable for network appliances, content delivery, and real-time data processing.

7. Container-Optimized VMs:

Container-optimized VMs are specifically configured to run containerized applications. They provide a
lightweight and efficient environment for running container orchestrators like Kubernetes and are often
used for microservices and cloud-native applications.

8. High-Availability VMs:

High-availability VMs are configured to run in a clustered environment with automatic failover and
redundancy. These VMs are used for mission-critical applications where downtime is not acceptable.

The availability of these VM types may vary depending on the cloud service provider or virtualization
platform you are using. When choosing a VM type, it's important to consider the specific needs of your
workload, as well as factors like cost, performance, and resource allocation.

# VMware vSphere

VMware vSphere is a comprehensive and widely used virtualization and cloud computing platform
developed by VMware, Inc. It provides a set of virtualization and management tools that enable
organizations to create, manage, and optimize virtualized IT environments, whether on-premises, in the
cloud, or in a hybrid configuration. VMware vSphere offers a range of features and components to help
organizations build and operate virtualized infrastructure efficiently and securely. Here are some key
aspects of VMware vSphere:

1. Hypervisor Technology:

 VMware vSphere uses a Type 1 hypervisor, called VMware ESXi. ESXi runs directly on the
physical hardware of a server, which results in high performance and resource utilization.

2. Virtualization:

 vSphere allows you to create and manage virtual machines (VMs) that run multiple guest
operating systems on a single physical server. This technology provides resource isolation and
efficient utilization of hardware.

3. Key Components:
 vCenter Server: vCenter Server is a central management tool that provides a single point of
control for managing your virtual infrastructure. It allows administrators to create, provision,
monitor, and manage virtual machines.

 vSphere Client: The web-based vSphere Client is used to access and manage vSphere
environments. It offers a user-friendly interface for administering VMs, hosts, and other
components.

 vCenter Server Appliance (vCSA): vCSA is a preconfigured Linux-based virtual appliance that
serves as the management platform for vSphere.

4. High Availability (HA):

 VMware vSphere offers HA capabilities that automatically restart virtual machines on other
hosts in the event of a host failure, minimizing downtime.

5. Fault Tolerance (FT):

 FT provides continuous availability by creating a secondary VM that mirrors the primary VM's
operation. If the primary VM fails, the secondary VM takes over without interruption.

6. vMotion:

 vMotion enables live migration of VMs from one host to another with no downtime. This is
essential for load balancing, maintenance, and minimizing service disruption.

7. Storage Features:

 vSphere provides features like vSAN (Virtual Storage Area Network), which abstracts and pools
storage resources, as well as Storage vMotion for live storage migration.

9. Networking Features:

 vSphere offers network virtualization capabilities, including VMware NSX, which provides
advanced networking and security services for virtualized environments.

10. Security: - VMware vSphere includes security features like vSphere Security and vSphere Secure
Boot to protect the hypervisor and VMs from security threats.
VMware vSphere is widely adopted by enterprises and organizations for its robust and reliable
virtualization capabilities. It allows businesses to reduce IT infrastructure costs, increase operational
efficiency, and improve flexibility and scalability. VMware offers different editions and licensing options,
making it suitable for a wide range of use cases, from small businesses to large enterprises.

You might also like