KEMBAR78
Cloud Computing Lecture5 | PDF | Parallel Computing | Cloud Computing
0% found this document useful (0 votes)
13 views53 pages

Cloud Computing Lecture5

Cloud computing is a model that provides scalable and virtualized resources as services over the Internet, significantly impacting IT processes and the marketplace. It features essential characteristics such as on-demand self-service, resource pooling, and rapid elasticity, allowing companies to minimize infrastructure costs. The document also discusses the evolution of computing, service-oriented architecture, quality of service, and the importance of manageability, interoperability, and security in cloud systems.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
13 views53 pages

Cloud Computing Lecture5

Cloud computing is a model that provides scalable and virtualized resources as services over the Internet, significantly impacting IT processes and the marketplace. It features essential characteristics such as on-demand self-service, resource pooling, and rapid elasticity, allowing companies to minimize infrastructure costs. The document also discusses the evolution of computing, service-oriented architecture, quality of service, and the importance of manageability, interoperability, and security in cloud systems.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 53

What is Cloud computing ?

Properties and characteristics


• Definition:
• Cloud computing can be defined as a new style
of computing in which dynamically scalable and
Cloud often virtualized resources are provided as a
Computin services over the Internet.
• Cloud computing has become a significant
g technology trend, and many experts expect that
cloud computing will reshape information
technology (IT) processes and the IT
marketplace.
Cloud Computing

• An Internet cloud of resources can be either a centralized or a distributed computing system.


The cloud applies parallel or distributed computing, or both.
• Clouds can be built with physical or virtualized resources over large data centers that are
centralized or distributed.
• Some authors consider cloud computing to be a form of utility computing or service
computing.

3
Grid vs Cloud

4
Evolution of Computing

Centralized Distributed Internet Mobile Cloud


• 1970~80 • 1970~80 • 2000s • 2010s UbiComp
• Main Frame • Main Frame • WWW • Transported • 2020s
Technology Technology Technologies Technology • Pervasive
(Anytime, Ubiquitous
Anywhere) Computing
• Cloud
Computing
(On Demand
Metered Grid
Usage)

5
Evolution of Cloud Computing

• Solving large problems with


Grid Computing parallel computing

• Offering computing resources


Utility Computing as a metered service

• Network based subscription


SaaS to applications

• Next-generation Internet
Cloud Computing Computing and data centre

6
• Cloud computing is a model for enabling
ubiquitous, convenient, on-demand
Cloud network access to a shared pool of
configurable computing resources.
Computin • It can be rapidly provisioned and released
g with minimal management effort.
• It provides high level abstraction of
computation and storage model.

7
• It has some essential characteristics, service
models, and deployment models.
• Cloud computing allows companies to avoid
or minimize up-front IT infrastructure costs.
Cont… • It relies on sharing of resources to achieve
coherence and economies of scale, similar
to a public utility.

8
Essential Characteristics

• On-Demand Self Service:


• A consumer can provision computing capabilities automatically without interaction with each service’s provider.
• Heterogeneous Access:
• Computer resources are available over the network and accessed through standard mechanisms that promote
use by heterogeneous thin or thick client platforms.
• Resource Pooling:
• The provider’s computing resources are pooled to serve multiple consumers using a multi-tenant model.
• Different physical and virtual resources dynamically assigned and reassigned according to consumer demand.
• Measured Service:
• Cloud systems automatically control and optimize resources used by leveraging a metering capability at some
level of abstraction appropriate to the type of service.

• Rapid elastics
• Capabilities can be elastically provisioned and released (scale up/down based on the demand).

9
In Our Humble
Opinion
• Cloud computing is a paradigm of computing, a
new way of thinking about IT industry but not
any specific technology.
• Central ideas
• Utility Computing
• SOA - Service Oriented Architecture
• SLA - Service Level Agreement
• Properties and characteristics
• High scalability and elasticity
• High availability and reliability
• High manageability and
interoperability
• High accessibility and portability
• High performance and optimization
• Enabling techniques
• Hardware virtualization
• Parallelized and distributed computing
• Web service
Utility
Computing Central Ideas
SOA + SLA

DON’T TELL ME DETAILS!!


I DON’T CARE!!
Utility
Computing Central Ideas
SOA + SLA

• Perspective from user :


• Users do not care about how the works are done
• Instead, they only concern about what they can get
• Users do not care about what the provider actually did
• Instead, they only concern about their quality of service
• Users do not want to own the physical infrastructure
• Instead, they only want to pay as many as they used

• What dose user really care ?


• They only care about their “Service”
Utility
Computing What Is Service?
SOA + SLA

• A service encapsulates a software component that provides a set of


coherent and related functionalities that can be reused and integrated
into bigger and more complex applications.
• Service is the endpoint of a connection.
• Functionalities of service :
• A service should be well-defined
• A service should be self-contained
• A service should not depend on the context or state of other services.
• Boundaries are explicit:
• A service-oriented application is generally composed of services
that are spread across different domains, trust authorities, and
execution environments.
• Generally, crossing such boundaries is costly; therefore, service
Characteristic invocation is explicit by design and often uses message passing.
s of a Service • With respect to distributed object programming, whereby remote
method invocation is transparent, in a service-oriented computing
environment the interaction with a service is explicit and the
interface of a service is kept minimal to foster its reuse and
simplify the interaction
•.
• Services are autonomous:
• Services are components that exist to offer functionality and are
aggregated and coordinated to build more complex system.
• They are not designed to be part of a specific system, but they can
be integrated in several software systems, even at the same time.
Characteristic • Service orientation puts the focus on the design of the service as
s of a an autonomous component.
• The notion of autonomy also affects the way services handle
Service(Cont.. failures.
• Services operate in an unknown environment and interact with
) third-party applications.
• Therefore, minimal assumptions can be made concerning such
environments: applications may fail without notice, messages can
be malformed, and clients can be unauthorized.
• Services share schema and contracts, not class or interface
definitions:
• Services are not expressed in terms of classes or interfaces, as
happens in object-oriented systems, but they define themselves in
terms of schemas and contracts.
• A service advertises a contract describing the structure of
messages it can send and/or receive and additional constraint—if
Characteristic any—on their ordering.

s of a • Because they are not expressed in terms of types and classes,


services are more easily consumable in wider and heterogeneous
Service(Cont environments.
• At the same time, a service orientation requires that contracts and
…) schema remain stable over time, since it would not be possible to
propagate changes to all its possible clients.
• To address this issue, contracts and schema are defined in a way
that allows services to evolve without breaking already deployed
code.
• Technologies such as XML and SOAP provide the appropriate tools
to support such features rather than class definition or an
interface declaration
Utility
Computing Service Oriented Architecture (SOA)
SOA + SLA

• Definition
• A service-oriented architecture is comprised of a number of
different services that can be consumed by any number of clients.
• There are two major roles within SOA: the service provider and the service
consumer.
• The only assumption made by either party is that communication
takes the form of a well-defined and strictly enforced contract.
• Provide a loosely-integrated suite of services that can be used within multiple
business domains
• Approach
• Usually implemented by Web Service model
• The service provider is the maintainer of the service and the organization that
makes available one or more services for others to use.
• To advertise services, the provider can publish them in a registry, together with
a service contract that specifies the nature of the service, how to use it, the
requirements for the service, and the fees charged.
• The service consumer can locate the service metadata in the registry and
develop the required client components to bind and use the service.
• Service providers and consumers can belong to different organization bodies or
Cont…. business domains.
• It is very common in SOA-based computing systems that components play the
roles of both service provider and service consumer.
• Services might aggregate information and data retrieved from other services or
create workflows of services to satisfy the request of a given service consumer.
This practice is known as service orchestration, which more generally describes
the automated arrangement, coordination, and management of complex
computer systems, middleware, and services.
• Another important interaction pattern is service choreography, which is the
coordinated interaction of services without a single point of control.
Utility
Computing Quality Of Service
SOA + SLA

• Original definition
• QoS denotes the levels of performance, reliability, and
availability offered by an application and by the platform or
infrastructure that hosts it.
• Now QoS becomes to a broad term that is used following areas :
• Customer care evaluations
• Technological evaluations
Utility
Computing Quality Of Service
SOA + SLA

• Customer care evaluations


• QoS is usually measured in terms of issues that have a direct
impact on the experience of the customer
• Only issues that produce a negative effect on the goods and
services received by the customer come under scrutiny

• Technological evaluations
• QoS has to do with the efficient operation of various systems
• This can lead to adjusting procedures or adapting software programs and code to achieve the desired
effect while making a more efficient use of available resources
Utility
Computing Service Level Agreement
SOA + SLA

• Definition
• A service-level agreement (SLA) is a contract between a service provider and a
customer that specifies, usually in measurable terms (QoS), what services the
service provider will furnish

• Common content in contract


• Performance guarantee metrics
• Up-time and down-time ratio
• System throughput
• Response time
• Problem management detail
• Penalties for non-performance
• Documented security capabilities
Properties and
Characteristics
Scalability & Elasticity

Give me the world


without limitation!!
Scalability &
Elasticity
• What is scalability ?
• A desirable property of a system, a
network, or a process, which
indicates its ability to either handle
growing amounts of work in a
graceful manner or to be readily
enlarged.

• What is elasticity ?
• In cloud computing, elasticity is
defined as "the degree to which a
system is able to adapt to workload
changes by provisioning and de-
provisioning resources in an autonomic
manner, such that at each point in time
the available resources match the
current demand as closely as possible"
Multi-tenant Design
• What is multi-tenant design ?
• Multi-tenant refers to a principle in software architecture where a single instance
of the software runs on a server, serving multiple client organizations.
• With a multi-tenant architecture, a software application is designed to virtually
partition its data and configuration thus each client organization works with a
customized virtual application instance.

• Client oriented requirements :


• Customization
• Multi-tenant applications are typically required to provide a high degree of customization to
support each target organization's needs.
• Quality of service
• Multi-tenant applications are expected to provide adequate levels of security and
robustness.
Availability & Reliability

Data Never Loss


Machine Never Fail
Availability &
Reliability
• What is availability ?
• The degree to which a system, subsystem, or
equipment is in a specified operable and
committable state at the start of a mission,
when the mission is called for at an unknown
time.
• Cloud system usually require high availability
• Ex. “Five Nines” system would
statistically provide 99.999% availability
• What is reliability ?
• The ability of a system or component to
perform its required functions under stated
conditions for a specified period of time.
• But how to achieve these properties ?
• Fault tolerance system
• Require system resilience
• Reliable system security
Fault Tolerance

• What is fault tolerant system ?


• Fault-tolerance is the property that enables a system to continue operating
properly in the event of the failure of some of its components.
• If its operating quality decreases at all, the decrease is proportional to the
severity of the failure, as compared to a naively-designed system in which even a
small failure can cause total breakdown.

• Three basic characteristics :


• No single point of failure
• Fault detection and isolation to the failing component
• Fault containment to prevent propagation of the failure
Fault Tolerance

• Single Point Of Failure (SPOF)


• A part of a system which, if it fails, will stop the entire system
from working.
• The assessment of a potentially single location of failure
identifies the critical components of a complex system that
would provoke a total systems failure in case of malfunction.

• Preventing single point of failure


• If a system experiences a failure, it must continue to operate
without interruption during the repair process.
Fault Tolerance

• Fault Detection and Isolation (FDI)


• A subfield of control engineering which
concerns itself with monitoring a system,
identifying when a fault has occurred and
pinpoint the type of fault and its location.

• Isolate failing component


• When a failure occurs, the system
must be able to isolate the failure
to the offending component.
Fault Tolerance

• Fault Containment
• Some failure mechanisms can cause a
system to fail by propagating the failure
to the rest of the system.
• Mechanisms that isolate a rogue
transmitter or failing component to
protect the system are required.
System Resilience

• What is resilience ?
• Resilience is the ability to provide and maintain an
acceptable level of service in the face of faults and
challenges to normal operation.
• Resiliency pertains to the system's ability to return to its
original state after encountering trouble. In other words, if
a risk event knocks a system offline, a highly resilient
system will return back to work and function as planned
as soon as possible.

• Some risk events


• If power is lost at a plant for two days, can our system
recover ?
• If a key service is lost because a database corruption, can
the business recover ?
System Resilience

• Disaster Recovery
• Disaster recovery is the process, policies and procedures related to preparing for
recovery or continuation of technology infrastructure critical to an organization
after a natural or human-induced disaster.

• Some common strategies :


• Backup
• Make data off-site at regular interval
• Replicate data to an off-site location
• Replicate whole system
• Preparing
• Local mirror systems
• Uninterruptible Power Supply (UPS)
System Security

• Security issue in Cloud Computing :


• Cloud security is an evolving sub-domain of computer security, network security, and, more broadly,
information security.
• It refers to a broad set of policies, technologies, and controls deployed to protect data, applications, and
the associated infrastructure of cloud computing.
System Security

• Important security and privacy issues :


• Data Protection
• To be considered protected, data from one customer must be properly
segregated from that of another.
• Identity Management
• Every enterprise will have its own identity management system to control
access to information and computing resources.
• Application Security
• Cloud providers should ensure that applications available as a service via the
cloud are secure.
• Privacy
• Providers ensure that all critical data are masked and that only authorized users
have access to data in its entirety.
Manageability & Interoperability

I Want Full Control !!


Manageability &
Interoperability

• What is manageability ?
• It means manage entire cloud system.
• System management in Cloud Computing
is much more dependent on overall
network and offered service management
• What is interoperability ?
• Interoperability is a property of a product
or system to work with other products or
systems, present or future, without any
restricted access or implementation.
• But how to achieve these properties ?
• System control automation
• System state monitoring
Control Automation

• What is Autonomic Computing ?


• An autonomic computing system
would control the functioning of
computer applications and systems
without input from the user, in the
same way that the autonomic nervous
system regulates body systems
without conscious input from the
individual.
• The goal of autonomic computing is
to create systems that run
themselves, capable of high-level
functioning while keeping the system's
complexity invisible to the user.
Functional Areas of Control Automation
• Four functional areas :
• Self-Configuration
• Automatic configuration of components.
• Self-Healing
• Automatic discovery, and correction of faults.
• Self-Optimization
• Automatic monitoring and control of resources to ensure the optimal functioning with
respect to the defined requirements.
• Self-Protection
• Proactive identification and protection from arbitrary attacks.
System Monitoring
• What is system monitor ?
• A System Monitor in systems engineering is a process within a distributed system
for collecting and storing state data.

• What should be monitored in the Cloud ?


• Physical and virtual hardware state
• Resource performance metrics
• Network access patterns
• System logs

• Billing system
Billing System
• Billing System in Cloud
• Users pay as many as they used.
• Cloud provider must first determine the list of service usage price.
• Cloud provider have to record the resource or service usage of each user, and
then charge users by these records.
• How can cloud provider know users’ usage ?
• Get those information by means of monitoring system.
• Automatically calculate the total
amount of money which user
should pay.
• And automatically
request money from use’s banking
account.
Performance & Optimization

High Performance
Improvement
Performance &
Optimization

• Performance guarantees ??
• As the cloud computing uses high computing
resources, application performance should be
guaranteed.
• Cloud providers make use of powerful infrastructure
or other underlining resources to build up a highly
performed and highly optimized environment, and
then deliver the complete services to cloud users.

• But how to achieve this property ?


• Parallel computing
• Load balancing
• Job scheduling
Parallel Processing

• Parallel Processing
• Parallel processing is a form of computation in which
many calculations are carried out simultaneously,
operating on the principle that large problems can
often be divided into smaller ones, which are then
solved concurrently.

• Parallelism in different levels :


• Bit level parallelism
• Instruction level parallelism
• Data level parallelism
• Task level parallelism
Parallel Processing

• Hardware approaches
• Multi-core computer
• Symmetric multi-processor
• General purpose graphic processing unit
• Vector processor
• Distributed computing
• Cluster computing
• Grid computing
• Software approaches
• Parallel programming language
• Automatic parallelization
Load Balancing

• What is load balancing ?


• Load balancing is a technique to distribute workload evenly across two or more computers, network links,
CPUs, hard drives, or other resources, in order to get optimal resource utilization, maximize throughput,
minimize response time, and avoid overload.

• Why should be load balanced ?


• Improve resource utilization
• Improve system performance
• Improve energy efficiency

Unbalanced
Job Scheduling
• What is job scheduler ?
• A job scheduler is a software application that is in charge of unattended
background executions, commonly known for historical reasons as batch
processing.

• What should be scheduled in Cloud ?


• Computation intensive tasks
• Dynamic growing and shrinking tasks
• Tasks with complex processing dependency

• How to approach ?
• Use pre-defined workflow
• System automatic configuration
Accessibility & Portability

Anyone !
Anytime !
Anywhere !
Accessibility & Portability

• What is accessibility ?
• Accessibility is a general term used to describe the degree to which a product,
device, service, or environment is accessible by as many people as possible.

• What is service portability ?


• Service portability is the ability to access services using any devices, anywhere,
continuously with mobility support and dynamic adaptation to resource
variations.

• But how to achieve these properties ?


• Uniform access
• Thin client
Uniform Access

• How do users access cloud services ?


• Cloud provider should provide their cloud service by means of widespread accessing media.
• In other word, users from different operating systems or other accessing platforms should be able to
directly be served.
• Nowadays, web browser technique is one of the most widespread platform in almost any intelligent
electronic devices.
• Cloud service take this into concern, and delivery their services with web-based interface through the
Internet.
Thin Client

• What is thin client ?


• Thin client is a computer or a computer program which depends heavily on some
other computer to fulfill its traditional computational roles.
• This stands in contrast to the traditional fat client, a computer designed to take on
these roles by itself.
• Advantage :
• Cheap client hardware
• While the cloud providers handle several client sessions at once, the clients can be made out of
much cheaper hardware.
• Diversity of end devices
• End user can access cloud service via plenty of various electronic devices, which include mobile
phones and smart TV.
• Client simplicity
• Client local system do not need complete operational functionalities.

You might also like