Irfan’s Corner on the Web On Mac, Linux, Grid, Virtualization and Software Technology

21Oct/092

Autonomic Computing making a come back?

Autonomic Computing was a concept popularised by IBM in the early 2000s. Autonomic Computing deals with the creation of a framework for systems that enables them to be "self-aware",self-healing", "self-managing", "self-configuring".

Thats a lot of buzzwords coupled into a single technology. The aim of autonomic computing is definitely very ambitious. Since it has been popularised very few systems have taken up the challenge to create a fully autonomic system. However with the maturing of Grid computing technology and Cloud computing the ideas of Autonomic Computing are finding traction in these domains.

Both Grids and Clouds manage large number of systems, and provide a single system abstraction for its users to use those resources. Grid and Cloud middleware must be "self-aware" through monitoring to detect failing sites and systems and exclude them from resource requests. Self healing in these systems is about migrating virtual machines or workloads to prevent failures of user tasks. Self-managing in the context of Grids and Clouds is about managing the efficient aggregation of resources and ensuring they are used efficiently. Self Configuring finally is about automatic configuration of machines and workloads.

All aspects of autonomic computing are in line with Grid and Cloud computing, and it is no wonder to me that the convergence of these has been discussed recently.

3Jun/080

Cloud Computing, and what it means for the Grid

I'm nowadays attending the 23rd Open Grid Forum in Barcelona, which is one the largest Grid computing events on the calendar. This year there has been quite a stir caused by the rise of cloud computing services such as Amazon Web services which are seen as a competitor to Grids, such as OSG or EGEE.Today at the keynote by Amazon CTO, Werner Vogels, he presented the cogent business logic which underlines Cloud computing, and why he thinks Amazon AWS has been so successful. Amazon AWS allows anyone from little startups (e.g. animoto ) to large scale companies (e.g. Salesforce) to get access to cheap, reliable, fault tolerant and scalable computing infrastructure. Had these companies thought of doing their computing locally, they would have probably spent 80% of their resources on setting up and running the computing infrastructure which would be an undifferentiated service because anyone who wants to do large scale computing has to setup and run the computing infrastructure. The infrastructure costs money and doesn't make any money for the organization, what does make money for the organization is the 20% business logic the company uses its computing infrastructure for, so with Cloud computing companies can get rid of the 70-80% effort on a largely undifferentiating services and focus on the tasks which would eventually make them money! This has been increasingly realized by all quarters of the industry and hence we see major companies jumping on the bandwagon: Microsoft's Live Mesh, Google's App Engine, IBM and SAP's effort with the EU on Reservoir etc.). So from a layman's perspective it does look like Cloud computing is here to stay.But what about Grid Computing? Grid Computing is analogous to cloud computing but with marked differences: Grids are application specific! EGEE Grid infrastructure is designed to run e-Science applications largely anything from particle collision analysis to neuro-image analysis for Alzheimers. Grids impose application development models: High Energy Physics Grids (such as LCG, EGEE, parts of OSG) are mostly designed to work with Grid applications which are a pipeline of tasks, these Grids schedule and map these tasks onto distributed resources and make the results available to the users. Whereas other Grids like (like made with Globus 4.0, OMII, Taverna based etc.) are service Grids. These Grids assume that Grid applications consist of services instead of tasks. Now we have discussed the major division in modern Grid computing: task based vs. service based. There are other paradigms as well, which are variants of each.Cloud Computing does not impose any such restriction: They provide the infrastructure as a black box and it is up to the user how he wants to use it, if he desires he can virtualize an entire Globus Grid on it, at the same time, he may also setup a gLite Grid and work with tasks or he may not use either and just setup a cluster for MPI applications. Hence we can see that Clous definitely have an edge here.But having said all this, I do believe the Cloud computing and Grid computing will happily co-exist in the future. The infrastructure which Cloud computers will use will be Grids themselves, which will not schedule applications rather they will schedule virtual machines which encapsulate the user's application. But what happens if an application consisting of two virtual machines ends up being scheduling with both VMs in different sites or subnets? These issues and others will be tackled by a recent project which also has been covered extensively in this OGF and I will cover it later.

10Sep/060

Xen

In the last half century, microcomputers have become increasingly powerful. Server systems have grown so powerful, that many enterprise servers typically are underutilized. Modern computers are sufficiently powerful to use virtualization to present the illusion of running many virtual systems on a single machine. Each virtual system runs a separate operating system instance simultaneously. So, you can run multiple instances of Linux at the same time on the same machine, or you can run combinations of operating systems, such as Linux, FreeBSD, Windows and so on. This has led to a resurgence of interest in Virtual Machine (VM) technology, which has been around for decades on bigger iron

Read the full article on Linux Journal