Cloud Computing is a technology, used by several companies who wants to reduce costs, and have access to programs and applications which are not physically installed in their computers or servers. The concept of electricity maybe compared to how this technology works, although the consumer does not know where, and how the power is produced, consumers still have access to power whenever they need just by plugging in an appliance and turning it on. This concept is almost the same as cloud computing, but the main kind of communication used with this technology is the internet. Cloud computing as defined by NIST or National Institute of Standard and Technology is a technology that provides scalable IT capabilities that are offered as services through the internet for multiple users, many users will then share pooled IT resources reducing costs and resulting to greater computing efficiency.
Think of it this way; a company that uses computers will need several systems to provide services, communicate and store information, this also means the more computers you have the more software licenses, servers and storage devices would be needed as your company grows. Behind all these are several people working all day long to make sure that servers, applications and storage devices are working properly and updated. The company will also then need spaces to store these servers and storage devices, and to prevent overheating you will also need cooling appliances which costs money. With cloud computing several of these procurement are taken off. If these company use or migrate to cloud computing they will just need the computers and sometimes a single server to run the business smoothly. All the other computing needs are then outsourced to the clouds, which are servers and storage devices in different locations which can be turned on or off depending on the company's computing demand. No more expensive software licenses, no more need for several servers and support people to maintain all these. This company will then pay the cloud computing provider as they use the services, it's like taking a cab and paying through the meter.
Virtualization is a technology which helps companies and individuals to utilize their computers, applications, storage devices and servers more efficiently. This can be defined as running multiple instance of something (Operating System) in something (Computers) when it is only designed to run one instance. There are different types of Virtualisation. Server Virtualisation - Is a type of virtualisation that consolidates multiple physical servers to virtual servers and is then ran on a single physical server. Application Virtualisation - an application is ran on another host where it is installed and is remotely accessed from a different computer. Example of which is desktop virtualization, Presentation Virtualization - runs on a met frame like Citrix, the application is then run in a different host however can also be seen on the clients screen. Network Virtualization - This type of virtualisation uses the network in a carved up way, which can then be run on multiple purposes, through the switch, NIC's, VLAN's, storage devices and other devices that can control a network Storage Virtualization - means your storage devices is then consolidated and managed in a virtual storage device, The servers where this is connected to is unaware of the physical location of the virtualized storage device.
Cloud Computing and Virtualization are two different technologies that are most of the time interchanged. These technologies will work without the other. Although, cloud computing is better utilized if desktop Virtualization is done first since most Cloud computing requires multiple virtual servers and storage devices to work or what you may call multitenancy. Virtualization on the other hand, enables a business or an individual to save on their computing needs and resources by making virtualized version of a physical resource in the same resource. For example server A, is only utilized by 30 percent most of the time and server B is utilized only by 50 percent, These two can be combined together by making a virtual server A in server B and therefore not physically using Server A anymore. This means that you save money and resources by eliminating server A from the equation.
Deeper explanation of Server Virtualization
Virtualized servers in a physical server run side by side in the same environment without compatibility issues, because these virtual servers are isolated and are then encapsulated with different layers. From Hardware layer, Virtualization layer and different environments such operating systems and applications. in Hardware layer each virtual server has a dedicated memory, hardrive and processor allocated for it in the physical server. Just like it is an operational Physical server. Most of the time Virtualization converts 20 physical servers to one by turning nineteen of these to physical server into one virtualized server instead.
Cloud computing on the other hand, uses resources that you do not have physical access to, these resources can be servers, applications, operating systems, storage devices and so forth. When you say you compute through a cloud, that means your computing resources are outsourced to vendors while you pay these providers for what you use. Unlike, if you use the conventional computing then you will need all the equipments, people and software for everything to work without problems. Cloud computing means that these resources are then provided to you by a company without you worrying about maintenance, space for your equipments and software licenses because your cloud computing provider will take care of it. All you need to do is log in to your computer, monitor your usage release or employ more servers depending on your computing needs.