Cloud Computing - Chapter 2
Cloud Computing - Chapter 2
Chapter 2
CLOUD ARCHITECTURE
TYPES OF CLOUD COMPUTING
• Deployment Model
1. Private Cloud
2. Public Cloud
3. Community Cloud
4. Hybrid Cloud
• Service Model
1. Infrastructure as a Service [Iaas]
2. Platform as a Service [PaaS]
3. Software as a Service [Saas]
------------------------------------------------------------------------------------
CLOUD SERVICE MODELS
1. Infrastructure as a Service [Iaas]
2. Platform as a Service [PaaS]
3. Software as a Service [Saas]
Characteristics of IaaS
➢ Resources are available as a service
➢ Services are highly scalable
➢ Dynamic and flexible
➢ GUI and API-based access
➢ Automated administrative tasks
Advantages
➢ Resources are highly scalable
➢ Cost depends on consumption
➢ Dynamic and Flexible
➢ Automated administrative task
➢ Security
➢ Maintenance : It helps users to avoid the cost and complexity of purchasing
and managing the physical server
Disadvantages
➢ Limited control over infrastructure
➢ Limited access
Characteristics of PaaS
➢ Accessible to various users via the same development application.
➢ Integrates with web services and databases.
➢ Builds on virtualization technology, so resources can easily be scaled up or
down as per the organization's need.
➢ Support multiple languages and frameworks.
➢ Provides an ability to "Auto-scale"
Advantages of PaaS:
➢ Simple and convenient for users
➢ Cost-Effective
➢ Efficiently managing the lifecycle: Building, testing, deploying, managing,
and updating.
➢ Efficiency: It allows for higher-level programming with reduced complexity
Disadvantages
➢ Limited control over infrastructure: developer don not have control over
infrastructure.
➢ Dependence on the provider: Users are dependent on the PaaS provider for
the availability, scalability, and reliability of the platform, which can be a risk
if the provider experiences outages or other issues.
➢ Limited flexibility:
Characteristics of SaaS
➢ Managed from a central location
➢ Hosted on a remote server
➢ Accessible over the internet
➢ Users are not responsible for hardware and software updates. Updates are
applied automatically.
➢ The services are purchased on the pay-as-per-use basis
Advantages
➢ Cost-Effective
➢ Reduced time
➢ Accessibility
➢ Automatic updates
➢ Scalability
Disadvantages
➢ Limited customization
➢ Dependence on internet connectivity
➢ Limited control over data
--------------------------------------------------------------------------------------
PRIVATE CLOUD
▪ It’s a one-on-one environment for a single user (customer).
▪ It is also called “internal cloud”.
▪ It refers to the ability to access systems and services within a given border or
organization.
▪ Companies that look for cost efficiency and greater control over data &
resources will find the private cloud.
▪ Private Cloud will be integrated with your data center and managed by your IT
team. Alternatively, you can also choose to host it externally.
PRIVATE CLOUD
▪ It is accessible to the public.
▪ Public deployment models are perfect for organizations with growing and
fluctuating demands.
▪ It also makes a great choice for companies with low-security concerns.
▪ Cloud service provider provides services like or networking services, compute
virtualization & storage available on the public internet.
▪ Cloud model is owned by the entity that delivers the cloud services.
▪ Its configuration and deployment are quick and easy, making it an ideal choice
for test environments.
COMMUNITY CLOUD
▪ The community cloud operates in a way that is similar to the public cloud.
▪ There's just one difference - it allows access to only a specific set of users who
share common objectives and use cases.
▪ This type of deployment model of cloud computing is managed and hosted
internally or by a third-party vendor.
HYBRID CLOUD
▪ Hybrid cloud is a combination of two or more cloud architectures.
▪ With a hybrid solution, you may host the app in a safe environment while
taking advantage of the public cloud’s cost savings.
▪ Organizations can move data and applications between different clouds using a
combination of two or more cloud deployment methods, depending on their
needs.
Complex, Complex,
Complex,
requires a requires a
Initial requires a
Easy professional professional
Setup professional
team to team to
team to setup
setup setup
Scalability
and High High Fixed High
Flexibility
Data
Low High High High
Security
Data
Low High High High
Privacy
------------------------------------------------------------------------------------
Front End
• The front end is used by the client.
• It contains client-side interfaces and applications that are required to access
the cloud computing platforms.
• The front end includes web servers (including Chrome, Firefox, internet
explorer, etc.), thin & fat clients, tablets, and mobile devices.
• It also provides GUI to end users in order to perform respective task.
Back End
• The back end is used by the service provider.
• It manages all the resources that are required to provide cloud computing
services.
• It includes data storage, security mechanism, virtual machines, deploying
models, servers, traffic control mechanisms, etc.
➢ Application
The application may be any software or platform that a client wants to
access.
➢ Service
A Cloud Services manages that which type of service you access according
to the client’s requirement.
Cloud computing offers the following three type of services: IaaS, Paas &
SaaS.
➢ Storage
It provides a huge amount of storage capacity in the cloud to store and
manage data.
➢ Infrastructure
It provides services on the host level, application level, and network level.
Cloud infrastructure includes hardware and software components such as
servers, storage, network devices, virtualization software, and other storage
resources that are needed to support the cloud computing model.
➢ Management
Management is used to manage components such as application, service,
runtime cloud, storage, infrastructure, and other security issues in the backend
and establish coordination between them.
➢ Security
Security is an in-built back end component of cloud computing. It
implements a security mechanism in the back end.
➢ Internet
The Internet is medium through which front end and back end can interact
and communicate with each other.
------------------------------------------------------------------------------------
Infrastructure layer
▪ Infrastructure layer is deployed first to support IaaS services.
▪ This infrastructure layer serves as the foundation for building the platform layer
of the cloud for supporting PaaS services.
▪ Built with virtualized compute, storage, and network resources.
▪ Provide the flexibility demanded by users.
▪ Virtualization realizes automated provisioning of resources and optimizes the
infrastructure management process.
Platform layer
▪ Foundation for implementing the application layer for SaaS applications.
▪ The platform layer is for general-purpose and repeated usage of the collection
of software resources.
▪ This layer provides users with an environment to develop their applications, to
test operation flows, and to monitor execution results and performance.
▪ Virtualized cloud platform serves as a “system middleware” between the
infrastructure and application layers of the cloud.
▪ The platform should be able to assure users that they have scalability,
dependability, and security protection
Application layer
▪ The application layer is formed with a collection of all needed software modules
for SaaS applications.
▪ Service applications in this layer include daily office management work, such a
information retrieval, document processing, and calendar and authentication
services.
▪ The application layer is generally used by enterprises in business marketing and
sales, consumer relationship management (CRM), financial transactions, and
supply chain management.
-------------------------------------------------------------------------------------
VIRTUALIZATION
Definition:
Virtualization is the "creation of a virtual version of something, such
as a server, a desktop, a storage device, an operating system or network
resources".
Virtualization is a technique, which allows sharing a single physical
instance of a resource or an application among multiple customers or
organizations.
With the help of Virtualization, we can run multiple resources on the same
hardware simultaneously.
Example: Running multiple operating systems on a single machine but sharing all
the hardware resources. Using Hypervisor software we can have different virtual
system on same hardware.
FEATURES OF VIRTUALIZATION
Increased Security:
The ability to control the execution of a guest program in a completely
transparent manner opens new possibilities for delivering a secure, controlled
execution environment.
All the operations of the guest programs are generally performed against
the virtual machine, which then translates and applies them to the host programs.
Managed Execution:
In particular, sharing, aggregation, emulation, and isolation are the most
relevant features.
Sharing:
Virtualization allows the creation of a separate computing environment
within the same host.
Aggregation:
It is possible to share physical resources among several guests, but
virtualization also allows aggregation, which is the opposite process.
------------------------------------------------------------------------------------
TYPES OF VIRTUALIZATIONS
➢ Hardware Virtualization.
➢ Operating system Virtualization.
➢ Server Virtualization.
➢ Storage Virtualization.
➢ Application Virtualization.
Hardware Virtualization
▪ When the virtual machine software or virtual machine manager (VMM) is
directly installed on the hardware system is known as hardware virtualization.
▪ The main job of hypervisor is to control and monitoring the processor, memory
and other hardware resources.
▪ After virtualization of hardware system we can install different operating
system on it and run different applications on those OS.
Server Virtualization
▪ Server Virtualization is the process of dividing a physical server into several
virtual servers, called virtual private servers.
▪ Each virtual private server can run independently.
▪ The concept of Server Virtualization widely used in the IT infrastructure to
minimizes the costs by increasing the utilization of existing resources.
▪ Each VM runs its own operating system, applications, and services, and they
are isolated from each other.
Application Virtualization
▪ In this virtualization process, the application runs without the need of installing
it into the system, as they run on a virtual environment.
▪ Local application virtualization runs on the host device but runs in a virtual
environment, not in the hardware.
▪ Server-based application virtualization runs only on the server-side and sends
the only interface to the client system.
▪ Application virtualization, the application is on the server-side, and it sends
some components to the host device according to the requirement.
Storage Virtualization
▪ Storage virtualization is the process of grouping the physical storage from
multiple network storage devices so that it looks like a single storage device.
Sl.
Cloud Computing Virtualization
No.
Advantages Disadvantages
-------------------------------------------------------------------------------------
MICROSOFT HYPER-V
▪ Hyper-V is an infrastructure virtualization solution developed by Microsoft for
server virtualization.
▪ Hyper-V is currently shipped as a component of Windows Server 2008 R2 that
installs the hypervisor as a role within the server.
▪ Architecture Hyper-V supports multiple and concurrent execution of guest
operating systems by means of partitions.
▪ A partition is a completely isolated environment in which an operating system is
installed and run.
Below provides an overview of the architecture of Hyper-V,
Hyper-V takes control of the hardware, and the host operating system
becomes a virtual machine instance with special privileges, called the parent
partition.
HYPERVISOR
The hypervisor is the component that directly manages the underlying
hardware (processors and memory).
It is logically defined by the following components:
➢ Hypercalls interface:
▪ This is the entry point for all the partitions for the execution of sensitive
instructions.
▪ This is an implementation of the Para virtualization approach already
discussed with Xen.
▪ This interface is used by drivers in the partitioned operating system to
contact the hypervisor using the standard Windows calling convention.
▪ The parent partition also uses this interface to create child partitions.
➢ Scheduler:
▪ This component schedules the virtual processors to run on available physical
processors.
▪ The scheduling is controlled by policies that are set by the parent partition.
➢ Address manager:
▪ This component is used to manage the virtual network addresses that
are allocated to each guest operating system.
➢ Partition manager:
▪ This component is in charge of performing partition creation, finalization,
destruction, enumeration, and configurations.
Its services are available through the hypercalls interface API previously discussed.
PARENT PARTITION
▪ The parent partition (also called the root partition) is the only one that has
direct access to the hardware.
▪ It runs the virtualization stack, hosts all the drivers required to configure guest
operating systems, and creates child partitions through the hypervisor.
▪ The parent partition executes the host operating system and implements the
virtualization stack that complements the activity of the hypervisor in running
guest operating systems.
▪ The parent partition is also the one that manages the creation, execution, and
destruction of child partitions.
CHILD PARTITIONS
▪ Child partitions are used to host guest operating systems and do not have
access to the underlying hardware, but their interaction with it is controlled by
either the parent partition or the hypervisor itself.
▪ Child partitions are used to execute guest operating systems.
▪ These are isolated environments that allow secure and controlled execution of
guests.
▪ For each child partition created, a Virtual Machine Worker Process (VMWP) is
instantiated in the parent partition, which manages the child partitions by
interacting with the hypervisor through the VID.
VMBus implements the channel and defines the protocol for communication
between partitions.
VSPs are kernel-level drivers that are deployed in the parent partition and provide
access to the corresponding hardware devices.
These interact with VSCs, which represent the virtual device drivers (also called
synthetic drivers) seen by the guest operating systems in the child partitions.
Operating systems supported by Hyper-V utilize this preferred communication
channel to perform I/O for storage, networking, graphics, and input subsystems.
Guest OS
It enables the Guest OS to It enables the Guest OS to
hypervisor
run independently. interact with the hypervisor.
independent
It is used in Microsoft,
Examples VMware, and Parallels It is mainly used in Hyper - V
systems.