Cloud Computing – The Buzz Word
In this article, I will be sharing my understanding and some information that I have gathered around from the world of clouds. The intended audience here is more or less those who are new to this buzz word and would like to know more on what exactly is it and why is it so important to know about it.
I will be keeping it as simple as possible and try not to introduce new terms until it’s an absolute need.
I have always been searching around pages over the internet on where to find the roots and what kind of liquid – definitly not water, actually evaporated to form these clouds. So lets take a joy ride into the clouds and find whats inside it.
Before we buy the tickets, lets first decide our route to our destination and understand if we would require any other life jackets in case we find turbulence in the way out. We may stop at certain stations to stretch a bit have a cup of “Cofee” is required and move on!
Okay, we are at the station (pre-requisite) called “Fundamentals of Networking and know what Operating System and Software are And what are the demands of todays end users ”.
Hey I just got the Journey Ticket from the “Window” though I could also see some “Penguins” heading on with me – am on my way! I am sure you guys would like to see that and so faxing it through:-
|Journey from Networking Fundamentals to Cloud Computing|
|Halting Stations||What are we entitled to buy in the Shops?|
|Softwares||Hey I am alreadyusing this!||Whats the big deal?||Looking beyond||Resolution|
|Traditional Hardwares||I have seen this place before||So why am I here?||Limitations||Demand and Supply problem|
|Virtualization||Definition||Market Demands||Tools||Going hand in hand!|
|Grid Computing||Definition||What is it?||Looks familiar?||Ended?|
|What is Cloud?||Re-Defining||Why is it required?||Hmm… makes sense to me?||Type of Clouds|
|Hurdles||Leaders/Service Providers||News||What’s Next|
|Total cost: An Hour of interesting escalation. Happy Journey!|
So what say, interested in coming along? Or, you may wait for another advance journey (Technical) in the next week. I am really going to tear the Clouds apart in my next trip.
My journey has started and I am too much excited. I was reading through a book when a fellow Penguin with a Red Hat asked “Hey, My name is Fedora … and you?” and a hell number of thoughts just flashed through my mind. “Hmm… I think I know this guy. Have met him before at a conference and these Red Hat guys are quite a traveller.” “Oh hi, I am Cloud Traveller.” So we started chatting on all the amazing things we would be going through and visiting a lot of places. Times flew like anything and we were at the first Stop – “Softwares”
Softwares (Wikipedia Says)– Computer software, or just software, is a collection of computer programs and related data that provide the instructions telling a computer what to do and how to do it. We can also say software refers to one or more computer programs and data held in the storage of the computer for some purposes. In other words software is a set of programs, procedures, algorithms and its documentation. Program software performs the function of the program it implements, either by directly providing instructions to the computer hardware or by serving as input to another piece of software.
Hey I am already using this!
Of course you are – every other application you are using on your personal computer is driven by a program at the back. Even when you are reading this, you are actually making use of a screen that is working for you and whose pixels are also showing characters and graphics with a use of programs.
Whats the big deal?
Have you ever thought, would not that have been a great thing if I did not have to buy my personal computer and what ever I wanted to read could have been in front of me always! May be on my TV or appearing on the wall in front of me.. cool isn’t it.
What if you did not have to buy the operating system to run your Internet explorer just to check your mail. Or, did not have to even buy a PC altogether and could just asked someone for a PC and he delivers your machine at your door step with a nominal fee?
Well yes, there are renting agencies which are doing this business for a while now, call them – Internet Café Owners. But if, you want your software to reach the world you will have to sell it out to all the Café owners and let them have it on their machines. Yes. That’s a good idea. But, hey wait a second – do you think your software is going to reach maximum people? Do you think the Café owners will advertize for you? – Well, no untill you give them a fat check to do so.
So what should I do then? Why not let your software float on the web – introduce your software through electronic media and let the people know about it. Reach out to the maximum people you can and help them understand why is it important to them. Great? Not yet. Didn’t I forgot to think about the cost factor. My software is no small software of few lines of code. It depends on a number of dependable items like Hardware, Plugins, infrastructure and to add to keep my software running I also need a dedicated team to work 24×7 to ensure the backbone of my software is never broken.
Now I am thinking of a place where all of my OS, Hardware, team requirements are well taken of and I am sure there will be other people like me would have the same problem – Customers come in various sizes and shapes!
And so I look in the sky to talk to God to help me with a brilliant idea. Yes, of course though I can’t see him, I see some “Clouds” hanging here and there.
Software as a service referred to as “On demand software,” is software deployed over the internet and/or is deployed to run in DMZ. With SaaS, a provider licenses an application to customers either as a service on demand, through a subscription, in a “pay-as-you-go” model, or (increasingly) at no charge when there is opportunity to generate revenue from streams other than the user, such as from advertisement or user list sales. This approach to application delivery is part of the utility computing model where all of the technology is over the Internet as a service.
- Accessible from anywhere with an internet connection
- No local server installation
- Pay per use or subscription based payment methods
- Rapid scalability
- System maintenance (backup, updates, security, etc) often included in service
- Possible security improvements, although users with high security requirements (e.g., large corporations) may find SaaS a security concern
- Reduced time to market
I was just wondering about all these things and then suddenly an announcement grabbed my attention – “We will now be heading to our next stop – Traditional Harwares“. Mr. Penguin was very happy than was I to the next station. He told me how he used to be part of this hill station from long back. He also told me how he used to party with the other x86 neighbours and famous intel microprocessors at the new station we were going to visit. It was his favourite place to be and the stories were interesting. “Hey did you hear that”, Mr. Penguin said.
I have seen this place before
And I peeked out of the Window to see large Mainframe industries all arround the place with millions of people staring into the “Green Screen Terminals” to mange them. I think we have just reached – “Traditional Hardwares”.
So why am I here?
While Mr. penguin was looking for someone from his neighbourhood, I decided to take a walk into this whole set of people maintaining large infrastructure of machines. I could also see some people bringing in thousands of machines and memory sticks to support a new company that had recently entered into the software arena and was requiring theinfrastructure from this town.
For each and every Company they were maintaining, large computing power houses and found a lot of people trying to fix and load required softwares replicas on them.
I wondered when every one was needing the same softwares to work on why don’t they share it, like I share my car with my neighbour to same office and share on the fuel price. Well, though I do understand its just not that simple as said. Why did I had to take this route to clouds? I think I got a fair answer here – existence of clouds have a reason and so I am happened to see all these people hard wiring for their own cause even for running something small of their own.
Demand and Supply problem
To meet the ever-changing and growing market of demand for better hosting, software and hardware platforms and continued competition to lower down the cost of maintaining them, we need to think of some supply management which is effective, green, saves cost, save energy, and save the hassle of maintaining such a large infrastructure with so many skilled labours who are ready to ask for more every 6 months ;) .
God save IT! Looked up and this time again, there were only small patch of cloud over my head. I was about to say hello to those small creature however… a voice broke from the crowd – “Mr. Traveller, we are leaving for the next metro station. Hurry up!”. This was Mr. penguin, waving his hand to me and standing on the door.
Okay. The next moment I was discussing traditional hardware issue over tea with Mr. Penguin in his compartment when he told me, from the next Station – Virtualization, we will be travelling by Air, as the it’s a bit Cloudy ahead.
Time flew like anything and before we could have finished out our second cup, we were at Virtualization.
We decided to take our quick discussion through a walk way, which was near by. Mr. penguin, showed me a new world there. I was quite amazed to see a lot of Virtualized things in this new town. Virtual Servers, Virtual LANs people getting multiple platforms to work on while using the shared hardware. Hey, its is really cool, so doesn’t that means people may get new platforms on demand on the hardware which is compatible enough and can scale easily. So the cost of installing your own hardware decreases tremendously. Imagine a large IT Park having a number of incubation centers within it and helping small companies to rent out as many Development Machines, Area, Parking Lots they want for their employ, and just paying the nominal fee for using that place, instead of owning it – could be really great for start ups.
Definition – Virtualization (Wikipedia Says)
Hardware virtualization or platform virtualization refers to the creation of a virtual machines that acts like a real computer with an operating system. Software executed on these virtual machines are separated from the underlying hardware resources. For example, a computer that is running Microsoft Windows may host a virtual machine that looks like a computer with Mac OS X operating system. Subsequently, Mac OS X-based software can be run on that virtual machine.
Types: Hardware, Software, Network, Storage, Data and Memory
With Virtualization it is also possible to provide more machines as on demand within minutes and provision them to run as required. You may be able to let the client (user) set up his development bed within minutes which involved multiple machines and LAN connectivity. It becomes transparent to the client as far as functionality is concerned that if he is running his software on concrete or virtualized hardware.
I think the best example would be like you are in absolute need of a server m/c for an hour but by the time you will go through the process of companies supply chain management, raising tickets and ordering. Your dedicated hour would have been over. And to add to the irony, you paid the complete price of the hardware which is of no use after an hour. So virtual servers are of help here, create Virtual servers within minutes use them for an hour, and discard them – and to follow, you paid almost 80% less in comparison.
So how can I implement virtualization? There are so many tools available in the market today:
- Virtual Box
- Citrix – ESXi (Though more inclined to clouds) and many more.
Say install Virtual box on your Windows7 m/c and load a Linux mage into the Virtual Box. Once done, you will be able to start your Virtual Machine VM (Linux) in Windows. More or less, it’s the similar stuff for other vendors as in case of this oracle product.
Going Hand in Hand!
So is it something that is cloud composed of primarily – Virtualization? Is that the master key to shared services all over the globe both in terms of hardware and software? Are we there? – I am just so excited to know all these answers now. However, there is more to it. Let’s not jump to the last chapter of the novel to spoil our journey. For now lets say “Yes” to all the answers for the moment but I would still say there have always been some differences and may be Cloud is not about the hardware and software but about the end user who uses it. So, in simple terms, its user centric and not hardware or software centric. We will later discuss more on type of Cloud categories which will clear the mist further. To name a few, Infrastructure As A Service (IaaS), Platform As A Service (PaaS) and Software As A Service(SaaS).
The announcement – “This is the last and final Boarding Call for Mr. Traveller for flight to Grid Computing…”, just caught my ears and I was found running to the boarding counter to show my boarding pass – “Wooh, I was just about to miss this flight”. I had just grabbed the window seat and bucked up the belt to hear a familiar voice from the back, “Welcome aboard, I thought you would miss this fun!”. “Oh geat! Mr. Penguin, good to see you again. I had almost lost this informative company of yours.” – Said I.
I was surprised to see that the new stations were not traditional stations, but were simply few altitudes through which we could see the same old towns from way high and could also look at the bigger picture.
When we reached arround 10000 Feet above Virtualization, I could see multiple Virtualization Towns and many Traditional Hardware and Networking Towns below. These towns were connected to each other and were actually working together to be look as a grids of machines both Concrete and Virtualized for a common cause of providing large infrastructure and scalable environments to those who needed it. But yes, they were centric enough to target multiple cause for multiple clients and delivering powerful computing. The Myst was still there but was getting dispersed. Collective Computing to give more computing power was a great idea in networking.
Grid Computing (Wikipedia Says…)
Grid computing is a term referring to the combination of computer resources from multiple administrative domains to reach a common goal. The grid can be thought of as a distributed system with non-interactive workloads that involve a large number of files. What distinguishes grid computing from conventional high performance computing systems such as cluster computing is that grids tend to be more loosely coupled, heterogeneous, and geographically dispersed. Although a grid can be dedicated to a specialized application, it is more common that a single grid will be used for a variety of different purposes. Grids are often constructed with the aid of general-purpose grid software libraries known as middleware
Remember it is easier to write programs can run on parallel computers (Grid Systems) than to write a program for a supercomputer having dependency on a specialized Operating system and hardware (if any). Grid Computing or Parallel Processing Computer on the other hand, have different hardware resources like CPU, disks, warehouses, Ethernet cards etc. and connected to one another via LANs or MANs to deliver high computing power.
“Please stick to your seats and keep your belts fastened as we are expecting some turbulence soon…” – Well I was kind of expecting it because we were entering the Clouds of large capacities. I could co-relate this turbulence to the one in my mind since I had started the journey to know what is cloud computing and why do I need this? – I was getting answers to my questions one after another and the turbulence too was decreasing both in and out!
As soon as we were arround 25000 feet, I could see the sunlight passing through a bunch of clouds and reminded me of the time I was looking at the sky from the town named “Softwares”. This was beautiful and at the same time quite informative. I was at my last stopage and was looking though the clouds, I was now not able to see any towns below, all I could see was large set of vaporised content floating in the sky ready to sprinkle rain in different parts of the country – probably who needed it (as per ecology).
And then I turned to Mr. Penguin, and saw him smiling. I got close to him and asked him, tell me about what you see from here … and then he explained me Clouds like a charm.
What is Cloud? – (Wikipedia Says)
Cloud computing is computation, software, data access, and storage services that do not require end-user knowledge of the physical location and configuration of the system that delivers the services. Parallels to this concept can be drawn with the electricity grid where end-users consume power resources without any necessary understanding of the component devices in the grid required to provide the service.
Cloud computing is a natural evolution of the widespread adoption of virtualization, service-oriented architecture, autonomic and utility computing. Details are abstracted from end-users, who no longer have need for expertise in, or control over, the technology infrastructure “in the cloud” that supports them.
Re-Defining it my way!
Cloud Computing or more specific clouds, are just a mechanism to delivering services to the end user as required with or without the use of actual virtualization of hardware/software/storage resource. In fact, virtualization can be delivered via mechanisms other than cloud computing as well and users can still benefit from it.
So for me it’s a technological advancement in the field of computing which is service-based, scalable and elastic, shared, metered by use, and uses internet technologies.
Why is it required?
I remember I read a great example somewhere – Just imagine a simple use case where you wanted to deploy a web application which you have no idea what kinds of loads will be facing at any given time say facebook or orkut. Today you’d want to write it in a manner that will leverage the most of the hardware and then deploy your solution in a horizontally scalable manner – Server clustering may be. To save cost and to be able to handle a surge (or multiple surges) you’d want to put it on something like Amazon’s EC2 and set up automatic scaling.
The benefit you get is the service is mature enough, cost effective and helpful and then you can consider dedicated hardware to handle most of the load. Then when you experience spikes, you can offload to the cloud for expansion.
“Hmm… makes sense to me”, Said I.
Type of clouds
“So do you see those different clouds in there?”, said Mr. Penguin. “ Yes I see them, what do they tell you ?” – They are smaller, and may be specific to a town or may be specific to the street itself.
Yes, there could be different cloud implementations:
Public cloud – resources are dynamically provisioned on a fine-grained, self-service basis over the Internet, via web applications or may be via web services, from an off-site third-party provider who bills on a fine-grained utility computing basis.
Private Clouds – that emulate cloud computing on private network
Hybrid Clouds – Private and Public mix clouds. With the proliferation of cloud computing (both private and public) and the fact that IT departments must also deliver services via traditional, in-house methods, the newest catch-phrase has become hybrid cloud computing.
Combined Clouds – Two clouds that have been joined together are more correctly called a “combined cloud”. A combined cloud environment consisting of multiple internal and/or external providers”will be typical for most enterprises.
Some of the Hurdles in implementing Clouds are as follows which are usually taken into consideration:
- Service Availability
- Data Deadlocks
- Confidentiality of Data and Auditing
- Data Transfer Issues
- Performance unpredictability
- Scalable Storage
- Large Scale distributed System Issues (Code issues/bugs)
Next prime area to focus are Legal and Compliance issues for now. But one thing for sure – the Cloud Computing is yet to be leveraged and will be the technology of the future.
Hope you enjoyed the journey with me. Next time I will take you to another place, another thought, another technology and just another complex buzz words made easy to a layman.