Iaa SCloud Architectures
Iaa SCloud Architectures
Iaa SCloud Architectures
The virtual infrastructure manager, also called the cloud operating system
(cloud OS), orchestrates the deployment of virtual resources and manages the
physical and virtual infrastructures.
The cloud architecture reference model must include support for the
deployment of different federation scenarios so that cloud providers
and IT companies can use external resources as well as share their
internal resources.
Cloud Infrastructure Anatomy
The key component of an IaaS cloud architecture is the cloud OS (see figure
in next slide), which manages the physical and virtual infrastructures and
controls the provisioning of virtual resources according to the needs of the
user services.
While local users and administrators can interact with the cloud using local
interfaces and administrative tools that offer rich functionality for managing,
controlling, and monitoring the virtual and physical infrastructure, remote
cloud users employ public cloud interfaces that usually provide more limited
functionality.
The Cloud OS
The Cloud OS
As a key component in a modern datacenter, the cloud
operating system is responsible for:
1.managing the physical and virtual infrastructure,
The core cloud OS components, including the virtual machine (VM) manager,
network manager, storage manager, and information manager, rely on these
infrastructure drivers to deploy, manage, and monitor the virtualized infrastructures.
In addition to the infrastructure drivers, the cloud OS can include different cloud
drivers to enable access to remote providers.
This concept helps create scalable applications because the user can either
add VMs as needed (horizontal scaling) or resize a VM (if supported by the
underlying hypervisor technology) to satisfy a VM workload increase (vertical
scaling).
Individual multitier applications are isolated from each other, but individual VMs
in the same applications are not, as they all can share a communication
network and services when needed.
The network manager uses the network drivers to provision virtual networks
over the physical network infrastructure. It needs to ensure traffic isolation
between virtual networks.
Storage Manager
The storage manager’s main function is to provide storage services and final-
user virtual storage systems as a commodity.
The storage system must be scalable so that it can grow dynamically according
to service needs; highly available and reliable, to avoid data access disruption in
data access in case of failure; high-performance, to support strong demands of
data-intensive workloads; and easy to manage, abstracting users from the
underlying physical storage’s complexity.
To reach these goals, the storage manager relies on the existing storage drivers,
which introduce a layer of abstraction between users or services and physical
storage and enable the creation of a storage resource pool where storage
devices appear as one, allowing data to be moved freely among devices.
Image Manager
Image managers must handle a huge amount of VM images belonging to
different users, with different operating systems and software configurations.
Thus, the cloud OS must have the appropriate tools to manage these images efficiently
and securely, as well as having additional functionality for administering image
repositories.
A set of attributes defines the VM image, including the image’s name, a description of
its contents, the type of image—public, private, or shared—the image owner, and the
image’s location within the repository.
Basic image functionality should include tools for creating a new image in a repository,
deleting an image, cloning an image from an existing one, adding or changing an
image attribute, sharing an image with other users, publishing an image for public use,
or listing the images available in the repository.
Information Manager
The information manager is responsible for monitoring and gathering
information about the state of VMs, physical servers, and other
components of virtual and physical infrastructures such as network
devices and storage systems. This monitoring function is essential to
ensure that all these components are performing optimally.
User authentication verifies and confirms the identity of users who try to access cloud
resources. This function can be implemented using different methods, such as simple
password verification mechanisms via LDAP; trusted authentication mechanisms
based on public keys, X.509 certificates or Kerberos.
Authorization policies control and manage user privileges and permissions to access
different cloud resources, such as VMs, networks, or storage systems. Access control
can be implemented using role-based mechanisms, where a role defines a group of
permissions to perform certain operations over specific cloud resources and users can
be assigned particular roles.
The table in the next slide lists different scheduling policies, based on
varying optimization criteria, to guide both initial placement and
dynamic reallocation actions.
The user can also specify the constraints that can restrict scheduler
decisions such as, for example, hardware (amount of CPU, memory,
and so on), platform (type of hypervisor, OS, and so on), affinity (two
or more VMs that need to be deployed in the same physical server or
the same physical cluster), location (geographical restrictions), or
service-level agreement constraints (guaranteed CPU capacity or high
operational reliability).
Optimization Criteria for Allocation and Reallocation
Policies of the Scheduler
Scheduler (contd.)
The cloud OS invokes the scheduler every time a new VM is waiting
to be deployed as well as periodically to optimize the entire virtual
infrastructure, reallocating VMs if necessary to meet the established
optimization criteria.
Once it accepts a service, the service manager is responsible for managing its
life cycle, which can involve several actions, including deploying, suspending,
resuming, or canceling the service.
To deploy a new service, the service manager interacts with the scheduler to
decide the best placement for the various VMs that comprise the service,
according to the selected optimization criteria and service constraints.
Service Manager (contd.)
Another service manager function is the management of service
elasticity. The service manager can incorporate different
mechanisms for service auto-scaling based on elasticity rules, which
trigger the deployment of new instances (horizontal scaling) or by
resizing existing instances (vertical scaling) when user-specified
service metrics exceed certain thresholds.