You are on page 1of 20

Architectural Requirements for

Cloud Computing Systems: An


Enterprise Cloud Approach
Objective
To outline the challenges specific to enterprise
cloud computing
To explore the architectural features of Cloud
Computing and classify them according to
Requirements of end-users
Enterprises that use the cloud as a platform
Cloud Providers
Vertical analysis of the requirement common to
the above classification
Cloud Computing Definition
By CISCO
IT resources and services that are abstracted from the underlying
infrastructure and provided on-demand and at scale in a multittenant
environment
National Institute of Standards and Technology
Cloud Computing is a model for enabling ubiquitous, convenient, on-
demand network access to a shared pool of configurable computing
resources that can be rapidly provisioned and released with minimal
management effort or service provider interaction.
This cloud model promotes availability and is composed of
five essential characteristics
(Rapid Elasticity, Measured Service, On-Demand Self-Service, Ubiquitous
Network Access, Location-Independent Resource Pooling),
three delivery models
(Software as a Service, Platform as a Service and Infrastructure as a Service),
and
four deployment models
(Public Cloud, Private Cloud, Community Cloud and Hybrid cloud)
Conceptually Everything as a Service( Example: TaaS, HaaS)

Some Cloud Providers
Amazon EC2, Google App Engine (GAE),
SalesForce.com, Microsoft Azzure,
IBM Blue Cloud, 3Tera


Major Challenge is lack of
standardized APIs and
Usage Model

Several Initiatives for Cloud
Distributed Computing
Grid Computing
Utility Computing
Virtualization
Server Clusters
Lease Oriented Mechanism for Grid system Virtualization
Autonomic Clouds on the Grid
Dynamic Virtual clustering
Violin
Virtual workspaces
Virtual Cluster
In-VIGO
Grid and Cloud Integration for Next Generation Network
Virtual Organization Cluster
Grid vs Cloud
Open Issues with Cloud
Security
Availability
Scalability
Interoperability
SLA
Data Migration
Data Governance
Trust
User-centric privacy
Transparency
Political and Legal issues
Business Service Management
Defining a standard
and scalable
architecture is pivotal
to the success of
Cloud Computing
Classification of Architectural
Requirements
Higher Level Abstraction for this
Classification
From the Service Providers perspective
Highly efficient service architecture to support infrastructure and
services is needed to provide virtualized and dynamic services
From the Enterprises perspective
QoS enabled, secure and scalable system is needed
Business management services with internal/external
interoperable mechanism
From the Users perspective
Simplified interface with adaptability and self-learning capability
that should address transparent pricing, metering and SLA
User-centric Privacy
Providers Requirements
Provider Service Delivery Model
Three Service Delivery Models
SaaS, PaaS & IaaS
SaaS/AaaS/Web Services
Software deployed as a hosted service and accessed over the
internet
Scalability, performance, multi-tenancy, configurability and fault-
tolerance are primary considerations for the architect
PaaS
Offering multiple applications on the same platform thus
increasing the economy of scale and reducing complexity.
IaaS
On-demand, self-sustaining or self-healing,multi-tenant, customer
segregation are the key requirements of IaaS
Open Challenges in IaaS
How will the applications behave due to dynamic infrastructure scaling? Can the
users design their application in such a way as to maximize the scaling
advantage?
How to understand the Cloud workload (e.g.,transactional database, fileserver,
web server,application server, batch data processing) to design successful
IaaS?
How to asses the power consumption and environmental impact?
How to isolate of service failure within each tenant?
How to minimize the response time of elastic demand and maximize the
throughput of requests?

Service Centric Issues
To meet the real world requirements of
enterprise IT Management
The Cloud Services should be
Autonomic (Adapt dynamically to changes in
environment)
Self-describing: To notify the client application how
they should be called and what type of data they
will return
Low cost composition of distributed applications
Interoperability
Creation of an agreed upon framework/ontology or
open data format or open protocols/APIs that enables
easy migration and integration of applications and
data between different cloud service providers
Issues
Allow applications to be ported between clouds
Use multiple cloud infrastructures before delivering
applications from cloud
Focus on how to integrate entire cloud and grid
systems into each other across service providers and
enterprises
Quality of Service (QoS)
Provides guarantee of performance and availability
QoS requirements are associated with service
providers and end-users
SLAs contain agreed upon QoS between service
providers and end-users
Service Provider
Emphasis on the performance of virtualization and monitoring
tools
Issue
User expectations on QoS always remain high, it is important
to set the tolerance level of entire business processes

Fault-tolerance
Enables system to continue operating in the event of failure of
some of its components
Cloud Providers need to detect failure in cloud
systems/applications with proper tools and mechanisms (Self-
healing and Self-Diagnosis tools)
Example: Outages in different cloud service providers
Cloud reliance
can cause
significant
problems if
the control of
downtime and
outages are
removed from
cloud
providers
control
Data Management, Storage and Processing
Data Storage
Data stored in an un-trusted hosts can create enormous risks
for privacy
Processing
Elastic nature of computing power
The focus of cloud computing namely the high
performance computation, infinite capacity on- demand
and no up-front cost is interpreted more easier in the
context of computation than storage
Storage goals
Ensure the storage infrastructure is provided with rich query
languages and simple data structures
Allow programmers some control over the stored procedures
No commercial solution addressing these goals exists
Some Storage Models
Amazon Elastic Block Store (EBS)
Programmer managing entire software stack
Difficult to scale-up on-demand
Design of automatic replication facilities is difficult because the
storage model is application dependent
Googles AppEngine (GAE) Bigtable
Good scalability
Tied to specific application model
Microsoft Azure
Usage of SQL
What these providers are lack with?
Not providing the advances in Storage
technologies related to SSDs
No MapReduce operations over the raw
data and declarative data management

Need for Storage Technologies
Shift from HDDs to SSDs
Hard disks augmented with flash memories (for reliable and high
performance storage)
Adopting SSDs is a problem- Why?
Price
Lack of sophisticated query processing techniques
Benefit of using SSDs
Input/output operation per second increases
Convert traditional algorithms into MapReduce form
Virtualization Management
Abstraction of logical resources away from their
underlying physical resources
Hypervisor (controlling Virtual Machines)
Virtualization in the Cloud
Server Virtualization
Client/desktop/application virtualization
Storage Virtualization
Network Virtualization
Service/Application virtualization
Infrastructure virtualization


Scalability
Ability of the software system to manage increasing
complexity when given additional resources
Horizontal Scalability
Via Load balancing
Example:DHT
Vertical Scalability
Cloud based Scaling
Depend on nature of the applications and the expected
volume of usage
Load Balancing
Self regulating the workloads properly within the
Clouds entities
Used to implement failover
Provides the ways by which applications can be
provisioned and de-provisioned
Designing Load Balancers
Architectural Considerations
Provide scalability at the CPU level, at the machine level, at the
network level or even at the application level
Capability to manipulate client requests and forward it to the
selected target resources
Scalability of the request handling capacity automatically
Fault tolerance for applications
Handling of more complex and higher traffic needs

You might also like