What Is Best Suited For The Cloud?
This is the second in a series of four articles discussing infrastructure as a service (IaaS) clouds. The series started at basic level setting and we will now begin diving progressively deeper. The topics for the series are:
- What is cloud
- What value should cloud provide
- Public, private, and hybrid cloud
- Starting on a cloud project
- Application taxonomy, what belongs in the cloud, and why
- What you should look for in cloud infrastructure software
- Evaluating different approaches to cloud infrastructure software
What is Best Suited for the Cloud?
Cloud is obviously a serious transformation for your datacenter, but that transformation does not need to be far off or futuristic. If you pick the right applications owned by the right users with the right needs and if you partner with the right cloud software provider, cloud and its many benefits are achievable today.
When first deploying a cloud, it is critical to choose the right applications to move to the cloud initially. Given that cloud is about allowing business units to manage their own computing needs, it follows that the ideal place for cloud is where the business units:
- Expect self-service.
- Are tolerant of incorporating provisioning logic into their day-to-day work.
- Have variable compute needs for the tasks that generate the need for frequent provisioning and de-provisioning activities.
- Have multiple tasks that cause context switching in the customers’ work, with different tasks acquiring and yielding compute resources over time.
- Have workloads that, even at maximum interaction, do not cause complex resource contention issues on shared resources so that as much or as little can be deployed as necessary with little if any forethought or calculation.
If you break down the types of workloads in a datacenter, you get three major types:
- Traditional, monolithic, and stateful client/server apps – things like Exchange Servers and traditional databases
- Scale-out load balanced apps with disposable stateless instances
- Batch type computing jobs that can be decomposed into small chunks of compute and storage and distributed across a pool – things like Hadoop, Monte Carlo simulations, business analytics, and media processing and conversion
For each class of application, there are dev/test deployments and production deployments. This gives us a simple six-way classification of what runs in a datacenter that we can use to select our cloud candidates.
The following chart shows which workloads are good for early cloud adoption and what should be dealt with later on in the process. Beneath the chart is some explanation and justification for this assessment.
(Green represents near-term opportunity and red represents something that should be sent to the cloud later on)