CS435 - Cloud Computing (Lesson 19-24)
CS435 - Cloud Computing (Lesson 19-24)
Lesson No. 19
TRUST ISSUES IN CLOUD
Module No – 094: Brief overview (more in Lesson 39):
___________________________________________________________________________________
©Copyright Virtual University of Pakistan 71
Course Title (Course Code) VU
Lesson No. 20
MECHANISMS RELATED TO CLOUD INFRASTRUCTURE
Module No – 095: Logical Network Perimeter:
It establishes the boundary of virtual network to hold with in and isolate a set of related
cloud-IT resources that may be distributed physically. Implemented as virtual environment,
it has the following components:
o Virtual Firewall to filter the traffic of isolated network to and from Internet.
o Virtual Network consisting of virtual nodes and virtual links.
Virtual Server: Virtual servers or Virtual Machines (VMs) emulate the physical servers.
o Each virtual server can host numerous IT resources, cloud-based solutions and other
cloud computing mechanisms. Depending upon the capacity, a physical server may
host multiple virtual servers.
___________________________________________________________________________________
©Copyright Virtual University of Pakistan 72
Course Title (Course Code) VU
In order to rapidly provision the VMs with installed and preconfigured software such as OS,
programming platforms etc., the virtual servers are cloned by templates.
A template is a master copy of virtual server. It contains the configuration, installed software,
any configured virtual devices and disk contents.
A consumer can:
o Connect to a self-service portal of Cloud provider.
o Choose a suitable template.
o Instantiate a virtual server through administrative portal which works with the help
of virtual infrastructure manager (VIM) module.
o Customize the virtual server through usage and administrative portal.
___________________________________________________________________________________
©Copyright Virtual University of Pakistan 73
Course Title (Course Code) VU
It is a software used to collect and process the data related to Cloud-based IT resources.
o The reporting and analysis requirements of the Cloud usage module determines the
scope and volume of data collected/extracted.
There are a few generic types or formats of Cloud usage monitors:
o Monitoring Agent: It transparently monitors and analyzes the dataflow over
communication paths. It measures the network traffic and messages.
___________________________________________________________________________________
©Copyright Virtual University of Pakistan 74
Course Title (Course Code) VU
o Resource Agent: Collects the resource usage data related to certain events such as
initiating, suspending, resuming and vertical scaling. It interacts with the Cloud
resource management module.
___________________________________________________________________________________
©Copyright Virtual University of Pakistan 75
Course Title (Course Code) VU
o Polling Agent: Collects the Cloud service usage data after periodic polling to IT
resources. For example the uptime/downtime of a Cloud service. Records the
updated status of the resource.
It is a technique by which multiple copies of the IT resources are created to increase the
availability and productivity of the IT resources. Virtualization technology is used for Cloud
IT resources’ replication.
For example, due to a physical server failure and in order to over come the
resultant downtime of a Cloud service deployed over a VM hosted by that physical server,
the entire VM along with the software (Cloud service implementation) is replicated to
another server.
Another example is the horizontal scaling of IT resources such as increasing or decreasing of
Cloud service instances by replication of VM hosting the service instance, corresponding to
workload.
The resource replication process yields the IT resources which are monitored under the
Cloud usage monitor mechanism.
Resource replication is also essential for pay-as-you-go type of usage & billing.
This mechanism represents the provisioning of preconfigure PaaS instances with ready to
use and customizable programming environments. Provide the dependable PaaS instances.
Time efficient provisioning
___________________________________________________________________________________
©Copyright Virtual University of Pakistan 76
Course Title (Course Code) VU
Typically include:
o Software development tools
o Databases
o Middleware
o Governance tools
The middleware is provided to support multi-tenant platforms to develop and deploy the
complementary web services for SaaS scenarios.
Overall, the ready-made environment mechanism supports the development and production
level deployment of Cloud services.
Lesson No. 21
SERVICE AGREMENTS(SAs)
Module No – 101:
NIST identifies that the consumer and provider are under a legal agreement or terms of
service.
The agreement has two parts:
o Service Agreement
o Service Level Agreement (SLA)
Service agreement contains the legal terms of contract.
The SLA contains the technical performance promises by the provider and the remedies for
performance failures.
Over all called Service Agreements by NIST
The following promises are made to consumer by the provides:
o Availability:
Usually 99.5% to 100% availability is assured.
The assurance is for a time intervals of a billing cycle e.g., 15 minute, 1 hour,
1 Year etc. for which the service status will be “up” for sure.
But this has to be clarified that for example time period of assurance is 15
minutes and even if the service is “down” for 14 minutes, then it legally
means that the service was not “down” for the whole interval.
Typically, several failures in subsystems are required to completely “down” a
service for the whole period of billing.
The provider may adjust the availability promises on case to case basis.
o Remedies for Failure to Perform:
In case of violation of the promise of availability (during a time period) by the
provider, the customer will be compensated in terms of service credit for
future use of Cloud service.
A refund is usually not given.
Consumer is responsible to monitor the availability of service and claim for
compensation.
The following situations result in termination of Cloud IT resources usage
for a consumer:
___________________________________________________________________________________
©Copyright Virtual University of Pakistan 77
Course Title (Course Code) VU
Voluntarily by consumer
Terminated by the provider for violating the provider’s rule of service
and/or for non-payment.
o The providers usually take no responsibility for preserving the
data in later case. While in former case, the preservation is
done for few days.
___________________________________________________________________________________
©Copyright Virtual University of Pakistan 78
Course Title (Course Code) VU
The providers do not take liability of data loss, data corruption or
unauthorized data usage if they happen due to security breach or due to
service interruption caused by a malicious activity.
At most, the service credit is compensated in case of data loss.
Although the providers promises for best effort security but the
responsibility of data security is placed on the consumer.
It is difficult for the customer to determine the cause of data loss (malicious
activity or some other reason).
o Service API Changes:
The providers generally retain the right to delete or update the service API.
Can happen any time and without prior notice.
Generally the consumer has to agree upon the following obligations:
o Acceptable Use Polices: The consumers are generally required to refrain from:
Storing illegal data
Conducting security attacks on Cloud infrastructure and/or on any other
user.
o Licensed Software: The provider require the consumer to install and use only the
licensed third party software over the Cloud.
o Timely Payments: The consumer should timely pay the bill from the provider.
Otherwise the consumer may get terminated after some time.
Recommendations by NIST:
o The consumers should carefully study and negotiate the service agreements. Specially
take care of the SLA assurances and responsibilities by the provider.
o Choose the most suitable Cloud provider periodically after review.
o
Lesson No. 22
CLOUD HOSTING DATA CENTER DESIGN
Module No – 102:
Key terms:
o CRAC: Computer Room Air Conditioning
o Hot aisle
o Cold aisle
o Server cabinets (Racks)
o Hollow floor
o Perforated tiles
Cloud hosting data center has a layered architecture for the Internet access.
The servers are physically connected to layer 2 switches. There is a top of rack (TOR) in
each rack. One server is connected to only one TOR switch.
The TORs are connected to aggregate switches (AGS).
___________________________________________________________________________________
©Copyright Virtual University of Pakistan 79
Course Title (Course Code) VU
___________________________________________________________________________________
©Copyright Virtual University of Pakistan 80
Course Title (Course Code) VU
Data centers consume huge amounts of electricity. As much as a small town in USA.
A large data center can host hundreds of thousands physical servers.
It is more costly to setup and run a small data center in terms of unit costs (per server, per
MB of storage, per GHz, Network bandwidth) and operational costs as compared to larger
data centers.
Google has 900,000 physical servers around the world in its data centers. Together these
servers consume 260 million watts of power which accounts to 0.01% of global energy
usage.
Facebook data center servers process 2.4 billion pieces of content and 750TB of data every
day.
Module No – 103:Data center Interconnection Networks
The network connecting the data center servers is called data center interconnection network.
It is a core design of data center.
The network design must support the following features:
o Low latency
o High bandwidth
o Low cost
o Message-passing interface (MPI) communication support
o Fault tolerance
o Must satisfy both point-to-point and collective communication patterns among all
server nodes.
___________________________________________________________________________________
©Copyright Virtual University of Pakistan 81
Course Title (Course Code) VU
Application Traffic Support: The data center interconnection network must support the MPI
communication and high bandwidth.
o Example: Distributed file access, Map and Reduce functions etc.
o Some servers can be configured to be master and others be slaves.
Network Expandability: The interconnection network must be expandable.
o Should support load balancing and data movement.
No bottlenecks
Can be expanded in the unit of data center container which contains hundreds
of servers and is a building block of large data centers.
Fault Tolerance and Graceful Degradation: Can be implemented through:
o Replication in software and hardware resources
o Redundant links among any two servers
o No single point of failure or critical links
o Two layered design should be used (a network layer close to servers and the upper
layer or backbone) to support modular (container) based expandable design.
Modular Data Center in Shipping Containers: The modern data centers are a the collection
of container based clusters that can be shipped from one location to another through trucks.
It is an alternative to warehouse based data center.
Modular Data Center in Shipping Containers:
For example: The SGI ICE Cube container can house 46,080 processing cores or 30 PB of
storage per container.
Modular Data Center in Shipping Containers:
o Such a design:
Is more energy efficient in terms of cooling cost as compared to warehouse
based design.
Is more mobile and easily transportable.
Is ready to be deployed since it is assembled with servers, networking, power
supplies and cooling mechanisms. It is then tested and shipped.
Helps in dynamic scalability of data center.
Makes the relocation of data center as relatively easier than warehouse based
design.
Inter-Module Connection Networking requires an extra layer over modular
containers to allow dynamic scaling and interconnection.
Modern day data centers handle ever larger volumes of data and conduct the processing
massive amounts of user requests around the globe.
In order to maintain user satisfaction and performance, the managing of a data center has
become a set of complex tasks. These include (but not limited to):
___________________________________________________________________________________
©Copyright Virtual University of Pakistan 82
Course Title (Course Code) VU
Lesson No. 23
CLOUD ARCHITECTURE
Module No – 106: Generic Cloud Architecture Considerations:
___________________________________________________________________________________
©Copyright Virtual University of Pakistan 83
Course Title (Course Code) VU
Cloud architecture can be considered as consisting of layers and sub-layers of Services with
each layer supporting the upper layer.
In order of dependency, these layers are grouped at high level as:
o SaaS
o PaaS
o IaaS
Software Service development and deployment requires a platform service.
A platform service is deployed over a VM provisioned through IaaS.
Some services may draw resources from multiple layers/sub-layers.
The scope of support from vendor side is highest for SaaS and lowest for IaaS.
Services developed on PaaS require the later to provide support for scalability, security, and
must be dependable.
___________________________________________________________________________________
©Copyright Virtual University of Pakistan 84
Course Title (Course Code) VU
Unless there is interoperability among the Clouds, a Service deployed on a certain platform
instance may not be portable to another platform.
The IT resources and data are prone to disasters (natural and/or human made) which
damage them partially or fully and thus may crash the whole computing system of an
organization.
Key terms:
o Failover: It is process through which a system transfers control (usually
automatedly)to an alternate deployment upon failure of primary deployment.
o Failback: The process of restoring of the system from alternative to primary
deployment and restoration of original state.
o The use of virtualization can implement the failover and brings reduction in failback
time.
o As compared to (for example) a data disaster for data stored on magnetic tapes, days
are require for restoration/recovery.
o The redundant deployment of software solutions, data and IT resources is quite easy
by using virtualization.
o One deployment is considered as primary, while other deployment/s are kept as
backup.
o The backup deployment is either updated periodically or the image/snapshot of the
primary deployment (e.g., VMs) can be saved.
o Upon failure, the backup deployment takes over.
o The primary deployment is then restored from the most recent snapshot.
o Virtualization has become the core part of disaster recovery plans of major
organizations since last decade.
o Virtualization even allows the testing of disaster recovery plan through emulation
and without disturbing the production/primary deployment.
o Although the failed physical servers have to be re-purchased/repaired, but the
virtualization lowers the additional costs and time related to failback.
___________________________________________________________________________________
©Copyright Virtual University of Pakistan 85
Course Title (Course Code) VU
o The organizations should mark the critical applications and data and use replication
of data in virtualized environments to support effective disaster recovery.
___________________________________________________________________________________
©Copyright Virtual University of Pakistan 86
Course Title (Course Code) VU
o The fact that the license model of commercial software is not suitable for utility
computing, the providers have to rely upon open source software and/or bulk usage
license.
o If the reputation of a provider is affected (due to consumers’ malicious behavior),
then there is no service to safe-guard the provider’s reputation.
Google App Engine (GAE): It is a popular platform for developing Cloud applications.
o Based upon technologies:
Google File System (GFS): Stores large volumes of data
MapReduce: Used in parallel job execution on massive data
Chubby (Distributed applications’ locking)
BigTable (Storage service to access structured data)
o Consumers are allowed to develop applications in popular languages such as Java,
PHP, Go and Python. The following are components of GAE:
Datastore
Application runtime environment (for web applications)
Software Development Kit (SDK) (for local application development)
Administration console (management of user application development
cycles)
Web service infrastructure (interfaces for flexible use of storage and
networks resources)
o Well known applications of GAE are Google Search Engine, Google Docs, Google
Earth, and Gmail.
___________________________________________________________________________________
©Copyright Virtual University of Pakistan 87
Course Title (Course Code) VU
o Consumers can create Cloud applications by using GAE which run on Google data
centers.
Amazon Web Services (AWS):
o Amazon provides the SOAP web services and IaaS to the consumers/developers to
create and host Cloud services.
o Amazon Elastic Computing Cloud (EC2) is a web service to provide the VMs for
hosting Cloud applications.
o Simple Storage Service (S3) provides the object-oriented storage service.
o Elastic Block Service (EBS) provides the block storage interface.
o Simple Queue Service (SQS) provides inter process message passing.
o Amazon DevPay service can be used for online billing and account management for
the service providers to sell the applications developed and/or hosted on AWS.
Lesson No. 24
SPECIALIZED CLOUD MECHANISMS
Module No – 112: Automated Scaling Listener (ASL)
It is the software module (service agent) which monitors and tracks the communication
between Cloud service and the service consumer for dynamic scaling purpose.
o Can indicate the need for scaling to cloud consumer.
o Indicates to cloud manager for scaling in/out (if configured to auto scaling by the
consumer).
The startup setup with one consumer, two service instances and two ASL modules.
___________________________________________________________________________________
©Copyright Virtual University of Pakistan 88
Course Title (Course Code) VU
The ASL indicates the Virtual Infrastructure Manager (VIM) for increased load and lack of resources
for VM hosting Service 2 on current host/server.
___________________________________________________________________________________
©Copyright Virtual University of Pakistan 89
Course Title (Course Code) VU
The VIM initiates the migration of VM hosting service 2 to new host for resource availability.
The VM hosting service 2 is migrated to the new host with more resources.
___________________________________________________________________________________
©Copyright Virtual University of Pakistan 90
Course Title (Course Code) VU
The number of service consumers of Service 2 have decreased. The ASL indicates this to VIM
The VIM prepares for migration of service 2 hosting VM for server consolidation.
___________________________________________________________________________________
©Copyright Virtual University of Pakistan 91
Course Title (Course Code) VU
Load Balancer: It is the service agent which distributes workload among multiple
processing resources such as multiple service instances. Workload is distributed on the basis
of:
o Processing capacity of the IT resource
o Workload prioritization
o Content-Aware distribution
___________________________________________________________________________________
©Copyright Virtual University of Pakistan 92
Course Title (Course Code) VU
SLA Monitor: Works by pinging (for example) to a service instance to record the “down”
status with time.
o The statistics are used to evaluate the extent of SLA violation.
o Uses a polling agent (studied before).
Pay-per-use Monitor: It is based upon a monitoring agent (studied before).
o It collects the resource usage by intercepting the messages sent to a Cloud service by
the consumer.
o Collected data (such as transmitted data volume, bandwidth consumption etc.) is
used for billing purpose.
o
Module No – 114: Failover System
This mechanism is used to increase the reliability and availability of IT resources by using
redundant implementations (for example of Cloud services).
Used for:
o Mission critical programs
o Cloud (supporting) services which can cause a single point of failure.
The redundant implementations are actively monitored for error detection and unavailability
of resources.
Configurations:
o Active-Active: The redundant implementation is actively processing the workload.
Load balancer implementation is required. The failover system detects the resource
failure and directs the load balancer to allocate workload only to active (redundant)
implementation. When the failed instance is recovered or replicated, the failover
system directs the load balancer to start allocating the workload to all (including
replicated) instances.
o Active-Passive: The redundant instance is passive till the active instance fails. The
failover system when detects a failure, it activates a redundant instance and redirects
the workload towards the newly activated instance. Upon recovery or replication of
failed instance, the failover system puts it to stand-by state while the previously
activated instance continues to serve as the active instance.
___________________________________________________________________________________
©Copyright Virtual University of Pakistan 93
Course Title (Course Code) VU
___________________________________________________________________________________
©Copyright Virtual University of Pakistan 94
Course Title (Course Code) VU
___________________________________________________________________________________
©Copyright Virtual University of Pakistan 95
Course Title (Course Code) VU
___________________________________________________________________________________
©Copyright Virtual University of Pakistan 96
Course Title (Course Code) VU
___________________________________________________________________________________
©Copyright Virtual University of Pakistan 97
Course Title (Course Code) VU
o Database Cluster: Is used to keep redundant implementation of databases. It has
features to synchronize the data across all the redundant instances.
Useful for active-active and active-passive failover systems.
o Large Dataset Clusters: This type of cluster is used to partition and distribute large
datasets without affecting the data integrity or computing accuracy.
Each node processes workloads without any need to depend/communicate
with other nodes.
Additional types:
o Load Balanced Cluster: Implements a load balancer mechanism (discussed before).
o HA Cluster: Implements a failover system (discussed before).
Module No – 117:
Multi-Device Broker: This mechanism is used to transform the messages (received from
heterogenous devices of Cloud consumers ) into a standard format before conveying them
to the Cloud service.
o The response messages from Cloud service are intercepted and transformed back to
the device specific format before conveying to the devices through the multi-device
broker mechanism.
State Management Database: It is a device used to temporarily store the state data of
software programs.
o State data can be (for example) the configuration and number of VMs being
employed to support a user subscription to a PaaS instance.
o In this way, the programs do not use the RAM for state-caching purposes and thus
the amount of memory consumed is lowered.
___________________________________________________________________________________
©Copyright Virtual University of Pakistan 98
Course Title (Course Code) VU
o The services can then be in a “stateless” condition.
o For example, a PaaS instance (ready-made environment) requires three VMs. If user
pauses activity, the state data is saved in state management software and the
underlying infrastructure is scaled in to a single VM.
o When the user resumes the activity, the state is restored by scaling out on the basis
of data retrieved from state management database.
Lesson No. 25
CLOUD MANAGEMENT
Module No – 118: Remote Administration System
It is a Cloud mechanism which provides the APIs and tools to the providers to develop and
used online portals.
These portals also provide some administrative controls to the Cloud consumers as well.
Usage and Administration Portal:
o Management controlling of Cloud IT resources
o IT resources usage reports
Self-Service Portal:
o The consumer can look at and choose various Cloud services
o The chosen services/package is submitted to Cloud provider for automated
provisioning
The remote administration console can be used to:
o Configure and setting cloud services
o Provision and releasing IT resources for on-demand usage
o Monitor cloud service status, usage and performance
o QoS and SLA fulfillment monitoring
o IT-resource leasing cost and usage fee management
o Managing user accounts, security credentials, authorization and access control
o The remote administration console can be used to:
o Capacity planning
If allowed, a Cloud consumer can create its own front-end application using API calls of
remote administration system.
Utilizes the virtual infrastructure manager (VIM) for creating and managing the virtual IT
resources.
Typical tasks include:
o Managing the templates used to initialize the VMs
o Allocating and releasing the virtual IT resources
o Starting, pausing, resuming and termination of virtual IT resources in response to
allocation/release of these resources
___________________________________________________________________________________
©Copyright Virtual University of Pakistan 99