The Challenge is to find it !
The promise that Cloud Computing brings is that of a ubiquitous compute infrastructure that provides services accessible over the internet from anywhere, by any device, and as such Cloud Computing is currently getting lots of air-time on the web news services.
The challenge at present is much like in real life every cloud is different, offering different capabilities & services, different tools to manage, different SLA's different charging models etc - basically all clouds are unique.
Before embarking into the great unknown of Could Computing enterprise IT managers need to fully understand what they are being offered and to look closely at their current infrastructure to determine how best to utilise Cloud Computing. Its key to understand what apps and/or workload may be suitable for moving into the cloud - for many IT departments today this starts with assessing non-mission/business critical workloads, for Intel's IT department this meant starting with our internal travel expenses tool and hosting this as a cloud service. If you haven't seen it there is a great white paper that outlines IT@Intel's cloud strategy and how they assess which applications and workload to land into the cloud.
One of the initial considerations to make when deciding to use cloud computing is whether to move directly to using an external cloud service or to utilise resources within ones own data centres to setup 'internal clouds'. For many IT departments this is a logical extension of the ongoing work to virtualize their existing infrastructure and provides a valuable learning platform before setting out into the great unknown of the external 'public' cloud infrastructure.
Some of the questions IT managers need to ask when evaluating Cloud Computing offerings are
- What's the SLA being offered - how reliable is the service, what's the guaranteed uptime, what's the response time to fix failures ( nearly every week there are reports of cloud failures ), what's the financial impact of loss of cloud services and how would this be recompensed.
- What's the application latency/response time
- How secure is the service - backup policy for data, how secure is my data, what's the isolation between my app/data and other customers in a multi-tenanted cloud.
- Where is my app/data located - what's the impact on local data protection laws,
& the list goes on . . .
To add to the confusion around Cloud there are many different 'Service' offerings being discussed within the industry, these vary from renting raw compute resource by the hour - Virtual Machines that look like servers - through pay-per-use for complex business applications. Everything is a Service its just a case of what type of service you want to buy - Infrastructure as a Service ( IaaS ), Platform as a Service ( PaaS ) or Software as a Service ( SaaS ).
Today most vendors offering 'Infrastructure as a Service' have developed their own cloud platforms based around open source or commercially available hypervisors and these require specific tools and stack formatting to utilise the virtualised compute resources. Cloud vendors offering PaaS provide application/web frameworks enabling the use of higher levels of abstraction e.g. Python, Ruby or .Net. With both IaaS and PaaS the customer needs to develop and maintain the application stack that will run in the cloud, whereas with SaaS the provider maintains the application, the customer just provides the data and pays for use of the application.
All of this further drives the uniqueness of every cloud offering. This will no doubt change over time as the major virtualisation vendors make inroads into this space and standards get developed for packaging virtual machines to be loaded into the cloud and services interfaces.
But today there is little/limited interoperability between Cloud providers and this can limit the flexibility and usability of the Cloud.
So great promises, and lots of challenges, but as the saying goes 'every cloud has a silver lining' - IT just needs to work out how to extract the benefit before the clouds all float away.