Web Services, SOA, BPM, and Cloud Computing – IX

CRAY-1 (no longer used, of course) displayed i...

Image via Wikipedia

A discussion on web services, SOA, BPM and Cloud Computing would be incomplete without a post on grid computing.

Wikipedia starts their article on grid computing by saying that “Grid computing is the combination of computer resources from multiple administrative domains for a common goal.

So what does this mean?

In the first place, computing is about achieving a piece of work, what the work consists of is irrelevant for the definition.

Grid computing is about achieving or completing a humongous piece of work which if given to a single computer would take an inordinately large amount of time and would also in all probability lock up the CPU cycles of the machine, leading to that notorious reaction ‘My computer froze”.

For people who are maybe not technically minded but are aware of SETI@home (The Search For Extra Terrestrial Intelligence – this is a volunteer computing project that utilizes the unused CPU cycles of volunteer home and work PCs to analyze radio signals emanating from space for signs of some sort of intelligent life out there. This seeks to answer that philosophical question “Are we the only ones out here on Planet Earth? It cannot be – there must be someone out there in the vast reaches of the universe”.

What this implies that each volunteer machine downloads a set of radio signal data, analyses it and sends the results back to the SETI project server. The SETI@home application is a screen-saver to be loaded onto the client machine.

This is what in technical terms is known as CPU scavenging and volunteer computing.

Continue reading

Web Services, SOA, BPM, and Cloud Computing – VIII

Diagram showing overview of cloud computing in...

Image via Wikipedia

A series on cloud computing would not be complete without a post on virtualization.

Now, what is virtualization?

A definition of the term virtualization would go as follows:

Virtualization is technology that
allows application workloads to be
managed independent of host hardware.
Multiple applications can
share a single, physical server.
Workloads can be moved from one
host to another without downtime.
IT infrastructure can be managed
as a pool of resources, rather than
a collection of physical devices.

The ability of a single hardware system to support multiple virtual machines thus optimizing the use of the hardware and thus providing more bang for the buck is the cornerstone of virtualization technology.

Virtualization is about multi-tenancy i.e. the ability to have multiple applications residing on the same infrastructure.

Virtualization is most often implemented on x86 servers as either operating system
(OS) virtualization or hypervisor-based virtual machines. OS virtualization uses
a single instance of an operating system (such as Microsoft® Windows® or
Linux®) with the help of virtualization software, to host a large number of individual
workloads.
The hypervisor approach is completely different. A hypervisor is code shared
among the guest operating systems and the hardware. The guest operating systems
can be various versions of Windows and Linux, and can be mixed and
matched on the same system. (For example, Windows 2000, Windows Vista,
SLES 9 with Xen, and RHEL 5 without Xen can all operate simultaneously,
including standard and enterprise varieties of each, as well as both 32-bit and
64-bit implementations.)
The hypervisor ensures that each operating system instance gets its proper share
of hardware resources and also that activity in one virtual machine (VM), or partition,
does not impact any other partition or the overall system.

Virtualization is about intelligent sharing of computing, resources and storage. Virtualization is about being dynamic with your allocation of resources, computing and storage. It is juggling multiple balls or applications transparently without the complexities becoming evident to the user of the applications.

Virtualization allows you to be flexible with your allocation of resources.It allows for failover, load-balancing, disaster recovery and real-time server maintenance.

The complexity of virtualization needs a single interface from where this infrastructure can be managed.

Virtualization lends itself to reduction in cost i.e. in the spending on hardware and at the same time an increase in productivity of the hardware installed. However, it is not a silver bullet and brings with it complexities that would have been avoided in a non-virtual infrastructure. The need to balance performance needs with maximizing workload is what virtualizing organizations  grapple with.

Virtualization can help you maximize the value of your IT dollars:
● Business agility in changing markets
● Computing resources to meet both current and future needs within the existing
power envelope
● An IT infrastructure that is flexible and can scale with business growth
● Performance that can handle the most demanding applications
● An industry-standard platform architecture
● Intelligent management tools
● Servers with enterprise attributes—regardless of their size or form factor

 

Virtualization can help you improve IT services:
● Rapidly provision new application workloads—cut setup time from days or
weeks to minutes
● Improve IT responsiveness to business needs
● Eliminate planned downtime by moving workloads before hardware
is serviced
● Greatly reduce—even eliminate—unplanned downtime

Virtualization strategy is the backbone of cloud computing solutions. Without virtualization, cloud computing would have a mountain to climb, with virtualization, its the case of going up a hill but appearing to come down a mountain!

Have a great day!

Source: IBM White Paper

Virtualization strategy for mid-sized businesses
April 2009
IBM and VMware virtualization benefits for mid-sized businesses

Quote of the day:
In a time of universal deceit, telling the truth is a revolutionary act. – George Orwell

 

Share this post : Social! MSDN! Technet! Live! Blogmemes!
Buddymark! Complore! Del.icio.us! Del.iri.ous! Digg! Facebook! Reddit! Technorati! Yahoo!