Posts Tagged 'Definition'

September 24, 2012

Cloud Computing is not a 'Thing' ... It's a way of Doing Things.

I like to think that we are beyond 'defining' cloud, but what I find in reality is that we still argue over basics. I have conversations in which people still delineate things like "hosting" from "cloud computing" based degrees of single-tenancy. Now I'm a stickler for definitions just like the next pedantic software-religious guy, but when it comes to arguing minutiae about cloud computing, it's easy to lose the forest for the trees. Instead of discussing underlying infrastructure and comparing hypervisors, we'll look at two well-cited definitions of cloud computing that may help us unify our understanding of the model.

I use the word "model" intentionally there because it's important to note that cloud computing is not a "thing" or a "product." It's a way of doing business. It's an operations model that is changing the fundamental economics of writing and deploying software applications. It's not about a strict definition of some underlying service provider architecture or whether multi-tenancy is at the data center edge, the server or the core. It's about enabling new technology to be tested and fail or succeed in blazing calendar time and being able to support super-fast growth and scale with little planning. Let's try to keep that in mind as we look at how NIST and Gartner define cloud computing.

The National Institute of Standards and Technology (NIST) is a government organization that develops standards, guidelines and minimum requirements as needed by industry or government programs. Given the confusion in the marketplace, there's a huge "need" for a simple, consistent definition of cloud computing, so NIST had a pretty high profile topic on its hands. Their resulting Cloud Computing Definition describes five essential characteristics of cloud computing, three service models, and four deployment models. Let's table the service models and deployment models for now and look at the five essential characteristics of cloud computing. I'll summarize them here; follow the link if you want more context or detail on these points:

  • On-Demand Self Service: A user can automatically provision compute without human interaction.
  • Broad Network Access: Capabilities are available over the network.
  • Resource Pooling: Computing resources are pooled to serve multiple consumers using a multi-tenant model, with different physical and virtual resources dynamically assigned and reassigned.
  • Rapid Elasticity: Capabilities can be elastically provisioned and released.
  • Measured Service: Resource usage can be monitored, controlled and reported.

The characteristics NIST uses to define cloud computing are pretty straightforward, but they are still a little ambiguous: How quickly does an environment have to be provisioned for it to be considered "on-demand?" If "broad network access" could just mean "connected to the Internet," why include that as a characteristic? When it comes to "measured service," how granular does the resource monitoring and control need to be for something to be considered "cloud computing?" A year? A minute? These characteristics cast a broad net, and we can build on that foundation as we set out to create a more focused definition.

For our next stop, let's look at Gartner's view: "A style of computing in which scalable and elastic IT-enabled capabilities are delivered as a service using Internet infrastructure." From a philosophical perspective, I love their use of "style" when talking about cloud computing. Little differentiates the underlying IT capabilities of cloud computing from other types of computing, so when looking at cloud computing, we really just see a variation on how those capabilities are being leveraged. It's important to note that Gartner's definition includes "elastic" alongside "scalable" ... Cloud computing gets the most press for being able to scale remarkably, but the flip-side of that expansion is that it also needs to contract on-demand.

All of this describes a way of deploying compute power that is completely different than the way we did this in the decades that we've been writing software. It used to take months to get funding and order the hardware to deploy an application. That's a lot of time and risk that startups and enterprises alike can erase from their business plans.

How do we wrap all of those characteristics up into unified of definition of cloud computing? The way I look at it, cloud computing is as an operations model that yields seemingly unlimited compute power when you need it. It enables (scalable and elastic) capacity as you need it, and that capacity's pricing is based on consumption. That doesn't mean a provider should charge by the compute cycle, generator fan RPM or some other arcane measurement of usage ... It means that a customer should understand the resources that are being invoiced, and he/she should have the power to change those resources as needed. A cloud computing environment has to have self-service provisioning that doesn't require manual intervention from the provider, and I'd even push that requirement a little further: A cloud computing environment should have API accessibility so a customer doesn't even have to manually intervene in the provisioning process (The customer's app could use automated logic and API calls to scale infrastructure up or down based on resource usage).

I had the opportunity to speak at Cloud Connect Chicago, and I shared SoftLayer's approach to cloud computing and how it has evolved into a few distinct products that speak directly to our customers' needs:

The session was about 45 minutes, so the video above has been slimmed down a bit for easier consumption. If you're interested in seeing the full session and getting into a little more detail, we've uploaded an un-cut version here.

-Duke

March 7, 2012

"That Cloudamajigger Thing"

At my house, we share a single iTunes account because as much as I hate to admit it ... I listen to the same music as my 11-year-old on occasion, so why buy the same music twice? I have my iPhone setup to automatically sync via any wireless connection, so I occasionally get new apps when someone else in the house downloads something.

Last week, my 8-year-old handed me his iPod and said, "Dad, can you enter the password so I can install BloodnGuns?" No way. He went through three or four reasons that he thought he needed the game, and I just went about my business. A couple of minutes later, he hands me the iPod again and says, "Dad, can you enter the password so I can install Temple Run?" Being a much tamer game, I said I would, but (knowing my son) I followed that up by saying, "Just remember: Anything you install goes to my iPhone, too." If I entered the password for him for Temple Run, he would be authenticated and could then get BloodnGuns, so I just wanted to remind him that I was born at night, not last night.

The sneaky little guy looked up to me and grinned, "Oh yea, 'cuz of that cloudamajigger thing."

Once I finished laughing, I asked him what he meant by Cloudamajigger, and before he could answer, I told him to wait ... I wanted to document how he would describe "The Cloud." With two other kids at home, I thought it might be an interesting focus group of the way kids are learning about technology, so I made it a family project.

I asked each of them three questions and told them to email their answers to me"

  1. What is "The Cloud?"
  2. Where does "The Cloud" live?
  3. What is SoftLayer?

Here are the responses:

The 6-year-old

  1. The cloud shoots out a ball and the cloud is awesome!
  2. In the sky. It is made out of water.
  3. Where dad works, I think he makes monitors.

The 8-year-old

  1. It's a cloud in the sky and they shot a satellite in it. And they could see all the things you need to see on the internet.
  2. See number 1 (Yes, he really typed that).
  3. Where dad works, he works to make the Internet, and the Internet makes him work.

The 11-year-old

  1. It is a group of people where when you post something everyone will be able to see it.
  2. I don't know.
  3. A company.

You can see that the 11-year-old is darn close to those wonderful teenage years with that loquacious participation ... Wish me luck!

I ask these same questions of people at conferences I attend and get generally the same answers as above. We can write reams of descriptions of the cloud, but in my world, it's simply "The Cloudamajigger Thing."

How would you answer those three questions?

-@Skinman454

September 18, 2009

Ninjas in the Datacenter

We tecchies are a weird bunch.  We equate everything to mythical figures and mysterious characters.  All around at SoftLayer, you can see and hear references to nerdy and mysterious things.  From Brad's incessant General Grievous-ish throat clearing, to FreeBSD's 'beastie' daemon:

Beastie
Copyright 1988 by Marshall Kirk McKusick.

Mythical figures surround us all the time.  IT guys tend to have a reputation for being a little, well, different, than the rest of the world.  Now that you're shaking your head, wondering what I'm rabbling about, allow me to introduce the one mythical figure that reigns supreme, especially here at SoftLayer.  That's right, it's the Ninja.

That's right, we've taken one of the most ridiculously awesome figures in modern mythology, and verbed it.  Not sure what verbing is?  Allow me to utilize one of my personal favorite comic strips as a visual:

Calvin
by Bill Watterson.

The ninja has a couple of meanings here at SoftLayer.  Allow me to give a few examples:

nin-ja [nin-juh]
-verb

  1. To Steal, as in a ticket that looked interesting or challenging: "Dude, you totally ninja'd that Network Question ticket from me!  I'm interested to know what you did to diagnose and fix it!"
  2. To fix an issue, against all probability that it is even fixable: "Wow, I thought that database was hosed.  He totally ninja'd that, and now it works like a charm."

The above are just two of the many examples of ninjas in our datacenter.  It's just one of the many ways we separate ourselves from the pack.  Our responsibilities are not only demanding, but unrelenting.  While we take these many responsibilities quite seriously (such as our commitment to the best support in the industry), we are always quick to lighten each other up.  As our big boss would say it:  "We are defining new standards and setting the tone for others to follow. Leading by example, pushing our luck, and having fun every step of the way."  Working at (and hosting at) SoftLayer is about kicking butt, leaving others in the dust, and relishing in every minute of it.

Subscribe to definition