Introduction to Cloud
When you store your photos online instead of on
your home computer, or use webmail or a social networking site, you are using a
“cloud computing” service. If you are an organization, and you want to use, for
example, an online invoicing service instead of updating the in-house one you
have been using for many years, that online invoicing service is a “cloud
computing” service. Cloud computing refers to the delivery of computing
resources over the Internet. Instead of keeping data on your own hard drive or
updating applications for your needs, you use a service over the Internet, at
another location, to store your information or use its applications.
Cloud computing means that instead of all the
computer hardware and software you're using sitting on your desktop, or
somewhere inside your company's network, it's provided for you as a service by
another company and accessed over the Internet, usually in a completely
seamless way. Exactly where the hardware and software is located and how it all
works doesn't matter to you, the user—it's just somewhere up in the nebulous
"cloud" that the Internet represents.
Cloud computing is a buzzword that means different
things to different people. For some, it's just another way of describing IT
(information technology) "outsourcing";
others use it to mean any computing service provided over the Internet or a
similar network; and some define it as any bought-in computer service you use
that sits outside your firewall.
Most importantly, the service you use is provided
by someone else and managed on your behalf. If you're using Google Documents,
you don't have to worry about buying umpteen licenses for word-processing
software or keeping them up-to-date. Nor do you have to worry about viruses
that might affect your computer or about backing up the files you create.
Google does all that for you. One basic principle of cloud computing is that
you no longer need to worry how the service you're buying is provided: with
Web-based services, you simply concentrate on whatever your job is and leave
the problem of providing dependable computing to someone else
Cloud services are available on-demand and often
bought on a "pay-as-you go"
or subscription basis. So you typically buy cloud computing the same way you'd
buy electricity, telephone services, or Internet access from a utility company.
Sometimes cloud computing is free or paid-for in other ways (Hotmail is
subsidized by advertising, for example). Just like electricity, you can buy as
much or as little of a cloud computing service as you need from one day to the
next. That's great if your needs vary unpredictably: it means you don't have to
buy your own gigantic computer system and risk have it sitting there doing
Now we all have PCs on our desks, we're used to
having complete control over our computer systems—and complete responsibility
for them as well. Cloud computing changes all that. It comes in two basic
flavors, public and private, which are the cloud equivalents of the Internet
and Intranets. Web-based email and free services like the ones Google provides
are the most familiar examples of public clouds. The world's biggest online
retailer, Amazon, became the world's largest provider of public cloud computing
in early 2006. When it found it was using only a fraction of its huge, global,
computing power, it started renting out its spare capacity over the Net through
a new entity called Amazon Web Services. Private cloud computing works in much
the same way but you access the resources you use through secure network
connections, much like an Intranet. Companies such as Amazon also let you use
their publicly accessible cloud to make your own secure private cloud, known as
a Virtual Private Cloud (VPC), using virtual private network (VPN) connections.
It enables sharing of resources and costs across a
large pool of users thus allowing for:
Centralization of infrastructure in locations
with lower costs (such as real estate, electricity, etc.)
peak-load capacity increases (users need not
engineer for highest possible load-levels)
utilization and efficiency improvements for
systems that are often only 10–20% utilized
Via dynamic ("on-demand") provisioning
of resources on a fine-grained, self-service basis in near real-time (Note, the
VM startup time varies by VM type, location, OS and cloud providers), without
users having to engineer for peak loads
Services Models (Levels of Cloud Computing):
IT people talk about three different kinds of
cloud computing, where different services are being provided for you. Note that
there's a certain amount of vagueness about how these things are defined and
some overlap between them.
as a Service (IaaS) means you're buying access to raw computing hardware
over the Net, such as servers or storage. Since you buy what you need and
pay-as-you-go, this is often referred to as utility computing. Ordinary web
hosting is a simple example of IaaS: you pay a monthly subscription or a
per-megabyte/gigabyte fee to have a hosting company serve up files for your
website from their servers.
as a Service (SaaS) means you use a complete application running on someone
else's system. Web-based email and Google Documents are perhaps the best-known
examples. Zoho is another well-known SaaS provider offering a variety of office
as a Service (PaaS) means you develop applications using Web-based tools so
they run on systems software and hardware provided by another company. So, for
example, you might develop your own ecommerce website but have the whole thing,
including the shopping cart, checkout, and payment mechanism running on a
merchant's server. Force.com (from salesforce.com) and the Google App Engine
are examples of PaaS.
Pros and Cons of Cloud computing:
Lower upfront costs and reduced infrastructure
Easy to grow your applications.
Scale up or down at short notice.
Only pay for what you use.
Everything managed under SLAs.
Overall environmental benefit (lower carbon
emissions) of many users efficiently sharing large systems.
Higher ongoing operating costs. Could cloud
systems work out more expensive?
Greater dependency on service providers. Can you
get problems resolved quickly, even with SLAs?
Risk of being locked into proprietary or
vendor-recommended systems? How easily can you migrate to another system or
service provider if you need to?
What happens if your supplier suddenly decides
to stop supporting a product or system you've come to depend on?
Potential privacy and security risks of putting
valuable data on someone else's system in an unknown location?
If lots of people migrate to the cloud, where
they're no longer free to develop neat and whizzy new things, what does that
imply for the future development of the Internet?
Dependency on a reliable Internet connection.