Foster's text is a nice read and whilst it's technically accurate, it misses to elaborate on the main difference: elasticity. Scale, virtualisation, security, programming models, even business models etc. can all be seen as very similar between grids and clouds - after all, these are mostly concepts and allow for a lot of freedom in their realisation.
What's more important though, is that in order for a provisioning environment to be cloudy (no matter whether platform, infrastructure or software) is that it has to be able to elastically adapt to your specific quality needs - typically "availability" through replication and destruction of the instances on the fly. Therefore, the use cases diverge slightly between grids and clouds - most typically, clouds are employed when the number of instances required is highly dynamic or unpredictable.
The degree of "instantaneousness" thereby still depends on the provider and in a good grid environment may be at least as fast. Availability means here in particular usage of the services, rather than their deployment. In other words, the infrastructure ensures that the service is "instantaneously" available, rather than the resource underneath it.
Check out the first two chapters of this report: http://cordis.europa.eu/fp7/ict/ssai/docs/cloud-report-final.pdf for more details
I would say that cloud allows for self-provisioning as long as the deployment mechanisms are in place and configured for the application. Grid relies on the physical allocation of resources to increase the grid's capacity, which can be done without bringing the grid off-line.
I see the cloud as a huge preconfigured grid as the cloud administrator throws more processing power (e.g.: Microsoft deploys containers full of servers) based on the demand monitored from their customers.
Also, sustainable provisioning of Grid services must be about 99% or else sites can be black-listed. High throughput is an absolute necessity with Terabytes of storage at each site being provided. Resources are sought automatically with 16Gb RAM of memory suggested for many of the CERN experiments.
Foster's text is a nice read and whilst it's technically accurate, it misses to elaborate on the main difference: elasticity. Scale, virtualisation, security, programming models, even business models etc. can all be seen as very similar between grids and clouds - after all, these are mostly concepts and allow for a lot of freedom in their realisation.
What's more important though, is that in order for a provisioning environment to be cloudy (no matter whether platform, infrastructure or software) is that it has to be able to elastically adapt to your specific quality needs - typically "availability" through replication and destruction of the instances on the fly. Therefore, the use cases diverge slightly between grids and clouds - most typically, clouds are employed when the number of instances required is highly dynamic or unpredictable.
The degree of "instantaneousness" thereby still depends on the provider and in a good grid environment may be at least as fast. Availability means here in particular usage of the services, rather than their deployment. In other words, the infrastructure ensures that the service is "instantaneously" available, rather than the resource underneath it.
Check out the first two chapters of this report: http://cordis.europa.eu/fp7/ict/ssai/docs/cloud-report-final.pdf for more details
Historically, grid has been about resource sharing across institutions - much like power generators being taken together to meet the overall demand. Cloud, in most cases, is a single place resource. And the key is use of virtualisation to meet requirements of specific clients, and the resulting ability to support elasticity dynamically. I guess, there is nothing preventing the grid from using virtualisation, or the cloud from using federation -- and hence a convergence is certainly possible.