3. Agenda
• The Big Picture
• Cloud Properties
• Concepts
• Virtualization Technologies
• Critical Success Factors for SOA and Cloud
• Obstacles of using Cloud Computing
• Benefits of Cloud Computing
• Drawbacks of Cloud Computing
• Survey
4. The Big Picture
• Cloud Computing is a computing model in which dynamically scalable and on-demand
resources are provided as services from location independent resource pool via shared
network.
• Cloud Computing is the next stage in the Internet's evolution, providing the means through
which everything from computing power to computing infrastructure, applications, business
processes can be delivered to you as a service wherever and whenever you need.
• Cloud Computing allows us to use the resources actually needed without taking care of peak
loads, this is because of Elasticity property of the cloud.
• Adopting Cloud Computing may relief organizations from owning its own IT environments by
renting the resources they need from another party.
5. Cloud Properties
• Elasticity means that a resource is always available to the user.
– An environment is considered high available if it accepts requests and produces correct responses 7
days a week.
• Scalability is means that the environment increases or decreases the resources
used by the user on behalf of the user n the user’s actual demand.
• On demand computing when ever a resource is needed and without any long
term indication of the future use of the resource it is assumed that it is just there.
– In such an elastic environment users will only pay for the actual resources used, which is pay as you
go model.
• This usage of computing resources is similar to the use of gas, power, telephony,
provided by public utilities.
• Providing computing resources in such a manner is called Utility Computing.
6. Concepts
• Service Oriented Architecture (SOA): is an architecture style and approach that emphasizes
well-defined, loosely coupled, and sharable communications between services.
• Service Oriented Enterprise (SOE): is an enterprise that applies service orientation to its full
scope business management and operations where appropriate.
• Virtualization means to create a virtual version of a device or resource, such as a server,
storage device, network or even an operating system where the framework divides the
resource into one or more execution environments.
7. Virtualization Technologies
• Cloud computing may be seen as the next step in an evolution from
isolated computers over clusters and beyond grids.
• Virtualization technology has been used on single computers since
decades.
• The resources of one physical computer can be partitioned into pool of
logical resources and rearranged into “Virtual Machine”
8. Virtualization Technologies cont.
• This results in a significant increase in utilization of a single physical
computer by allowing to run very heterogeneous application stacks on
one and the same machine.
• This also results in a huge time and effort saving for people who conduct
POC’s, who conduct seminars, workshops …etc.
• VM’s contributing overall scalability and Reusability
– Since the applications run in separate virtual machines can be cloned and moved in case
of crashes of individual applications.
– You can expand your HDD and Ram without requiring to reinstall your components
again.
– It can be cloned and moved from one physical computer to another.
9. Virtualization Technologies(Clusters)
• Computer Cluster is when two or more computers are used together to
solve a problem.
• Clusters have been invented as a different means to increase the
utilization, scalability, elasticity of individual computers.
• A Cluster is an interconnected set of complete computers(i.e. ones that
could be used as standalone computers) that are perceived from the
outside as one big computer.
• The focus of a cluster is to ensure an optimal use of the IT environment of
individual company in order to support the company’s application mix.
10. Virtualization Technologies(Grid)
• Grid computing is something similar to cluster computing
– It makes use of several computers connected is some way, to solve a large problem.
– It is an interconnected set of complete computers perceived from outside as single
computer.
• Grid is focused on
– Support individual applications instead of whole application mix of a given company.
– Not owned by a single company but consists of computers own by organizations willing
to share their computers with others ”Virtual Organization”
– Also present in scientific computing as researchers share their computers with other
researchers in order to get higher resources power than an individual researcher can
typically afford.
11. Clusters vs. Grids
• The big difference is that a cluster is homogenous while grids are
heterogeneous.
– The computers that are part of a grid can run different operating systems and have
different hardware whereas the cluster computers all have the same hardware and OS.
– Grid are inherently distributed by its nature over a LAN or WAN. On the other hand, the
computers in the cluster are normally contained in a single location .
– Another difference lies in the way resources are handled. In case of Cluster, the whole
system (all nodes) behave like a single system view and resources are managed by
centralized resource manager. In case of Grid, every node is autonomous i.e. it has its
own resource manager and behaves like an independent entity.
– Cluster differs from Cloud and Grid in that a cluster is a group of computers connected
by a local area network (LAN), whereas cloud and grid are more wide scale and can be
geographically distributed.
12. Critical Success Factors for Cloud
• Skills and Training
• Clearly, moving to SOA and to Cloud will require the use of new
technologies, new processes and even new ways of thinking.
• In many ways, learning new skills and approaches, along with other
traditional change management issues, is the largest challenge an
organization will face.
• Many organizations focuses on technology training, but as it is important
to understand new programming techniques and standards, it is also
important to concentrate on how to introduce new business processes as
well.
13. Critical Success Factors for Cloud
CONT.
• Requirements Gathering
• How will an organization define and specify services?
• How will it know if it is using the right cloud service?
• This might sound obvious but if a company is moving to SOA, it is vital
that it have in place common ways of defining services, and how they
will be created.
14. Critical Success Factors for Cloud
CONT.
• Security
• SOA by utilizing specific techniques within SOA can improve
security, such as using an intermediary for communication and
run-time policy enforcement to ensure that communications are
secure.
• In a cloud environment, it is important to always investigate who
is responsible for securing the cloud and whether their security
matches the organization’s expectations.
15. Critical Success Factors for Cloud
CONT.
• Scalability
• Is the ability to integrate with new services quickly and easily,
enhancing an organization’s agility.
• Further, it is recommended that performance testing be considered
when an organization is using cloud services before major new
applications are launched.
16. Obstacles of using cloud computing
• Business Continuity and Service Availability
• Will the cloud provider remain in business over the
long haul?
• Data Lock-In
• Cloud storage is essentially proprietary.
• SaaS developers cannot easily extract their data and
place it on multiple clouds.
• One solution would be to standardize data API’s.
17. Obstacles of using cloud computing CONT.
• Data Transfer Bottlenecks
• Big data transfer is very expensive over
network.
• portable disks is less expensive than transfer
over cloud.
18. Obstacles of using cloud
computing CONT.
• Scalable storage
• An open research question is to create a storage system
that would not only meet existing programmer
expectations in regard to high availability and the ability to
manage and query data but combine them with the cloud
advantages of scaling arbitrarily up and down on demand.
• AWS uses Amazon Elastic Block Store (EBS) and SimpleDB
Azure uses SQL Data Services and Azure Storage Service
App Engine uses Megastore Big Table Many open source
NO(Not Only)SQL Projects
19. Obstacles of using cloud
computing CONT.
• Scaling Quickly
• Pay as you go applies to storage and network
bandwidth.
• Google App Engine automatically scales based on
load increases and decreases.
• Amazon EC2 charges by the hour for the number
of instances you occupy – even if your machine is
idle.
• The challenge is to scale fast (up and down) to
save time.
20. Obstacles of using cloud
computing CONT.
• Network Overhead
• One of most critical obstacles in the cloud is the cost of
network transformation.
• Solution: Push computation to the data
22. Survey
• Many CIOs have yet to utilize cloud storage to a degree that impacts their
companies. Overall, questions remain: Are CIOs on a path that will substantially
move cloud computing forward in the enterprise? Or are we continually taking one
virtual step forward and one back?
• An audience of many IT leaders who are driving business growth through
innovation attended an event, where it’s excellent opportunity to gather insights
on the progress of cloud computing. conducted a real-time survey via text
messaging during the event, with more than 50 CIOs and IT leaders participating.
23. Survey CONT.
Where do you have the single most successful
production use of the cloud?
Elasticity means that a resource is always available to the user.
Self Provisioning means that there is no need for manual labor while installing, configuring and deploying new applications over the cloud it is wholy automatic process.
Pay as you go : you only pay for what you use and get.
Other : means everything else, such as : scalability , security …etc.