Cloud computing in a nutshell is the delivery of the computing power as a service , like electricity
or water , you dont need to worry about the hardware behind it ( Nuclear power station - solar power station)
you only pay for ( and benefit ) from the service that is delivered to you..
in the computer world , the service delivered to you is the computing power (storage - processing etc )
you only care about and pay for resources you consume
Gartner Inc. one of the world's leading information technology research and advisory company. defines cloud computing as
Scalable, IT-related capabilities provided as a service on the Internet.
Mr. Schmidt is considered by many to be the first user of the term cloud computing in the context of its
embodiment in 2008 and later, but the term didn’t reach the threshold for inclusion in Google’s Trends
service until about September 2007 (see Figure 1-1). Mr. Schmidt makes the assumption in the preceding
quotation that data services provided by the cloud-computing servers were defined by the organizations
that owned the servers, specifically Google, Yahoo!, eBay, and Amazon.
Figure 1-1: Worldwide traffic for the terms cloud computing, Windows Azure, Amazon EC2, and Google App
Engine for the years 2000 through 2008 as reported by the Google Trends service.
The Rules of the cloud
these are 3 rules that define the cloud , A cloud must
1-Have infinite resources , that is you should never have a problem of limited resources for your type of application
2-Scalable , you should be able to scale up and down the resources that you have access to easily and fast.
3-Pay as you go , you only pay for the resources that you use .
Benifits of the cloud
from the benifits of the cloud
1-Ease of use
the cloud computing concept allows you to deploy infrastructures easily
you can do it
a- without the need of cabling , racking , screwdriving , unboxing or buying hardware or /and software
b- in the middle of the night (anytime)
c- yourself remotly from anywhere anytime
2-Scalalabilityyou are un control of your infrastructure , you can scale up/down as you wish and upgrade as you go in no time.
3-Risk freeThere is nothing to buy/maintain/fix , you can cancel immediatly , you can change anything instantly , even operating systems and there is no need to worry about hardware failures.
4-Reliablilityyour applications and/or data are bases on enterprise grade hardware , which are designed to be failure free and maintained using the best of the best in the IT world.
you pay only for wat you use , billed on the amount of resources consumed.
Why To consider the cloud
cloud computing is recieving massive media coverage , generating an endless series of conferences , because it simply allows small , medium and large companies to
1-Get new products and services to the market fast by minimizing time need to deploy on premises IT assets such as servers , routers and switches , thus elemainting related capital investments in these assets
2- conduct market tests quickly , and test products feedbacks and results without investing in fixed hardware.
3-Replace capital expenditures for unneeded capacity to accommodate periodic usage spikes, such as those that occur after announcing seasonal discounts or a new software version, with the pay as you go model.
Cloud Computing Ancestry
on the client side , many computer hardware and software suppliers took up the challege of seperating the Computing power from using interface by designing and markering networked diskless workstations , from their examples
1-Diskless Workstations and Thin Clients
2-Web TV and Its Clones or Descendants
4-Application Service Providers and Software as a Service
5-Web Hosting Services
a-Shared server Hosting
b-Virtual Private Server (VPS)
c-Dedicated server hosting
Cloud Computing and Everything as a Service
Cloud computing services, like many other SOA implementations, are composable.
Wikipedia defines a highly composable system as a system that ‘‘provides recombinant components that can be selected and assembled in various combinations to satisfy specific user requirements.
The essential attributes that
make a component composable are that it be: self-contained (modular), that is, it can be deployed inde-
pendently . . . ; it may cooperate with other components, but dependent components are replaceable. It
must also be stateless, which means it treats each request as an independent transaction, unrelated to any request.
Following are the generally accepted recombinant components that contribute to delivering cloud
1-Files [storage] as a Service: FaaS, often called Data Storage as a Service (DaaS)
example : skydrive
2-Software as a Service: SaaS delivers a packaged or equivalent commercial software application to end users over the Internet with a subscription or usage-based pricing model
3-Software plus Services: S+S is Microsoft’s marketing terminology for traditional licensed
on-premises software offered as a hosted service by Microsoft or hosting partners
4-Infrastructure as a Service: IaaS provides traditional data center resources, such as highly scalable virtualized computing power, memory and storage, over a network (typically, but not necessar-ily, the Internet) and usually with a subscription or per usage pricing model.
5-Communication as a Service: CaaS provides communication capability that is service-oriented, configurable, schedulable, predictable, and reliable, as well as network security, it is usually considered a part of SaaS or IaaS
6-Tools as a Service (TaaS), which provides Web-based development tools and languages,
such as Microsoft Visual Studio (for Visual C#, Visual Basic, IronPython, and IronRuby) or
open-source Eclipse (primarily for Java). The Windows Azure Tools for VS 2008 include
templates for creating Web, Worker, Web and Worker, and Cloud Sequential Workflow
Services that can run under a local (developer) or cloud (production) Windows Azure
7-A virtualized runtime application platform that enables running applications in the cloud, typically on top of an IaaS and delivered as SaaS. Amazon EC2 has pre-built AMIs for 32-bit
and 64-bit Linux distributions, Windows Server 2003 R2 with SQL Server 2005, and Ora-
cle databases, as well as 64-bit OpenSolaris. Windows Azure runs on Windows Server
2008 with a custom version of Microsoft’s Hyper-V hypervisor.
8-Everything as a Service: EaaS, XaaS, or *aaS is a subset of cloud computing, according to
Wikipedia, which calls EaaS ‘‘a concept of being able to call up re-usable, fine-grained software components across a network.’’ What’s missing in this definition is orchestrated interaction
between the components to solve a business problem, which is often called Integration as a
Cloud Deployment Models
is a composition of two or more clouds (private, community, or public) that remain unique entities but are bound together, offering the benefits of multiple deployment models.
When the cloud computing infrastructure is located within the premises of the enterprise, and is accessed through a secure private network then this type of model is termed as a private cloud.
shares infrastructure between several organizations from a specific community with common concerns (security, compliance, jurisdiction, etc.), whether managed internally or by a third-party and hosted internally or externally.
When the cloud computing infrastructure is located beyond the premises of the enterprise, and is accessed through a network which is either public or private in nature then such a model is called as a Public Cloud.
fig 2-2 deployment methods of the cloud