Of late, there has been a lot of buzz around Cloud Computing around the web.
Some people say it's just marketing hype, while others say it's old wine in new
bottle and is the same as distributed computing. Either way Cloud Computing is
on the rise, with biggies like IBM, Google, Amazon, RedHat etc, all launching
Cloud based solutions. It's supposed to change the way you compute. So let's see
what all the noise is really about.
Direct Hit! |
Applies To: Large enterprises USP: Dynamically prepare your servers over the web Primary Link: http://aws.amazon.com/ec2 Google Keywords: Cloud computing, Cloud storage |
What's the buzz about
During the past few years we have seen massive growth in data and power
hungry applications. We have reached a stage where critical data needs to be
available at all times; one of the reasons why Web 2.0 apps have clicked amongst
enterprises. Most of these applications store and process data on the Cloud
these days.
Simply put a Cloud is a pool of virtualized systems which can be spread
across the world or even in a data center. The term Cloud Computing itself
consists of the platform called the Cloud and applications that are used to
compute on this Cloud. The platform prepares servers dynamically for users as
and when they are needed, and users only need to pay for resources they use.
A user on the Cloud has complete control over its resources. He can add or
delete resources as required in real time, monitor applications running on the
Cloud and perform other management tasks such as Workload balancing, Reimaging,
etc. Similar to this is cloud storage, where data is stored in the Cloud and you
pay according to the storage space you utilize. Cloud Computing can process
several workloads and also supports grid applications.
Elastic Clouds
Amazon is probably the first company to start selling Cloud based services
in the form of its Amazon Elastic Compute Cloud, popularly known as Amazon EC2,
a part of Amazon's web services platform. Currently in its beta version, it
provides computing capacity in the cloud to run applications.
In EC2, Amazon's data centers are used to run applications that require huge
processing power and pay Amazon on the basis of usage. When using EC2, you have
complete control of resources and can choose hardware configurations such as CPU
type, memory and storage required, etc. You can add or delete computing capacity
at any time within minutes, thus providing elasticity, as the name suggests.
EC2 works simultaneously with Amazon S3 service, which provides storage on
Clouds. It is simple to use as well. You just need to create an Amazon machine
image using tools provided by Amazon. The image that contains the application,
configuration settings, OS etc, needs to be uploaded to Amazon S3.
If you don't want to create an image, Amazon also provides template AMI
(Amazon Machine Image), which can be used to run applications. At the moment
Amazon only supports Linux 2.6 kernel systems.
After that you can execute the application using EC2 service and a unique AMI
ID, provided by Amazon to identify your Amazon machine image.
IBM's Blue Cloud data center |
In EC2, you have to pay-by-use on an hourly basis. For its smallest instance
it charges $0.10 per hour in which it provides 1 EC2 compute unit, 160 GB of
instant storage and 1.7 GB memory on a 32-bit platform. For data transfer it
charges $0.10 per GB for data transferred onto Amazon EC2 and $0.18 per GB for
first 10 TB of data transferred per month.
Red Hat has also partnered with Amazon to provide ready to use Red Hat
Enterprise Linux with all developed and deployed, existing or new applications.
Blue Clouds
Blue Cloud is an upcoming Cloud Computing offering from IBM which is similar
to Amazon's EC2. However, IBM is targeting enterprise data centers. According to
IBM, Blue Cloud solution will be supported by Tivoli, which will ensure optimal
performance of servers. It consists of Hadoop parallel workload scheduling and
XEN, and PowerVM virtualized Linux OS images. The solution is scheduled for a
spring 2008 launch.
Where can Cloud Computing be used?
Cloud Computing can be very useful for all businesses and applications which
require a huge amount of computing power. At the backend, web applications have
to perform a large amount of data processing. Using Cloud Computing, enterprises
can create a web application and launch them using Cloud without worrying about
the hardware. Cloud Computing also gives scalability advantage, for eg if a web
app running on Cloud suddenly starts to experience a huge workload, more
resources can be immediately provisioned to the application. Similarly, if a
company requires more computing power at a particular time during the day, it
can easy schedule resources for that time.
It's been said since long that the future of operating systems is online, ie
10 or 20 years from now all your files will be stored online. This means, all
processing will be done in Cloud and most applications will be streamed to your
desktops. However, the killer requirement for this remains the bandwidth and how
much people will be willing to pay for these services. Cloud Computing is
already serving as a backend for many web operating systems, now also known as
'Cloud OS'.
Cloud Computing is already being used by university researchers to perform
tests that require huge computing power which was otherwise not possible for
them within their university campuses. IBM and Google have partnered together to
provide a Cloud based research lab to some universities. It's not known whether
or when Google will launch similar services for data centers.
Cloud Computing can be significant for virtual world apps as well. Virtual
worlds such as Second Life are huge and ever growing and require large computing
power. On the flip side, don't be surprised if you see Cloud Computing being
used for cracking encryption algorithms, etc.