|By Dustin Amrhein||
|December 13, 2009 12:15 PM EST||
Defining cloud computing has proven to be nearly impossible. Ask ten different people and you'll get ten different answers. Countless discussion groups, blogs, articles, etc. have attempted to give their own take on cloud computing, and all to no avail. The industry just can't agree on a common definition. With that in mind, perhaps it's time to move past trying to define the cloud and look into the common characteristics of such solutions.
Many of us have heard or read about some of these cloud characteristics, so I thought I would offer up my top five cloud computing solution characteristics here.
Shared, virtualized infrastructure: At the heart of cloud computing is one of its key technological enablers, virtualization. Virtualization provides a path to share pools of IT resources such as servers, storage, data, and more. By virtualizing and sharing such resources, higher utilization rates can be realized. Effectively, more can be done with less, or more can be done with existing resources.
Self-service access: Cloud computing solutions should enable self-service capabilities to their users. The days of human-driven resource provisioning requests are replaced by some type of portal, usually web-based, that allows authorized users to directly access compute resources based on their need.
Elastic resource pools: Whether cloud computing concepts are being applied to a set of servers, blocks of storage, or shards of data, the resource pool should be elastic. This means that as more resource is needed, the system provisions more from the pool to ensure demand is met. Conversely, and just as importantly, when a resource is no longer needed it should be returned to the pool. This dynamic growth and contraction should be carried out autonomically based on parameters defined by users of the cloud.
Consumable output: Once the resources are provisioned by the cloud, they should be as close to “ready-to-go” as possible. Configuration, tuning, and integration should be handled by the cloud computing solution where possible allowing users to derive immediate value from the provisioned components.
User-based usage tracking: This feature is really a need created by the first characteristic mentioned. If the cloud is offering up shared resource pools, it is necessary to understand who is using those resources and how much they are using. Cloud computing solutions should provide a way to allocate usage of its resources to a particular user or group of users in order to facilitate chargeback within a business.
By coming up with a set of characteristics that define cloud computing solutions, users are armed with a list of criteria when they begin looking to the cloud. Also, characteristics seem easier to agree upon than a precise definition. The above list is not meant to be exhaustive, nor is it meant to represent the most important characteristics for every user or use case. I'm interested to hear what others have to say about important cloud computing characteristics, so let me know what you think.
- Forget Defining Cloud Computing
- IBM & Cloud Computing: Self-Service Clouds with Fine-Grained Control
- IBM & Cloud Computing: How WebSphere CloudBurst Delivers Consumability
- Cloud Computing and Virtual Images
- Bringing Cloud Computing to SOA
- Five Reasons to Choose a Private Cloud
- What's in a Cloud Appliance?
- Should Developers Care About Cloud Computing?
- Reference Architecture for Cloud Computing
- Confronting The Culture of Cloud Computing