Private Cloud Architecture – Part 2: Principles

In the first part of this series (here and here), I started by some discussion regarding the basic definition that we will build upon toward achieving the Private Cloud Promises.

In this post, I will discuss the main principles behind Private Cloud

Let’s agree first some terminology; the cloud promise is to provide computing as a utility. Let me explain, we need to reach a model where the user of the cloud service will use the computing power as if he uses electricity. When he needs it, he will find it… and he will get as much or as little as he wants. So, let’s name the user who uses this service as a consumer.

So, the principles are:

Infinite Capacity: Users will see the service appears as if it has unlimited capacity. Consumers use the service as much or as little as he wants. To achieve that by not using the cloud model, you will need a great amount of resources and will end up – for sure – with an underutilized servers / infrastructure resources and will cost you a huge amount of money.

Continuous Availability: the service will appear to be available when the consumer wanted it with no interruption of services. We will achieve this by providing a mature approach for governance and management in combination with resiliency at the application level and redundancies at the infrastructure level (computing, storage and network)

Drive Predictability: Consumer should find the service consistence with the same quality and functionality any time they are used. From the service provider view, standardization will be the key for services and processes manageability.

Service Provider’s approach to delivering infrastructure: the current data center approach for providing IT Services to business is on per need bases. This will lead to longer time to provision servers and services (more cost due to duplicate infrastructure).

Resiliency over redundancy: Normally, It provides high availability by H/W redundancy at all the layers of the stack by providing another H/W component that will start to serve the request if the original component failed. This comes at a prime cost (consider active/passive cluster were the passive server is just there doing nothing). In contrast, Private Cloud provides that through resiliency. The design depends on the fact that a failure will happen. It focuses instead on rapidly restoring the service through virtualization and real-time detection and automated response to health states that will allow the workload to be moved to another working node.

Minimize human involvement: by dynamically detect and respond to failure and elastically add or reduce capacity per the need

Optimization of resource usage By allowing resource sharing, optimization of resources usage can be achieved.

Influence Good Consumer Behavior by using a cost per use bases, consumer will pay according to his actual use. For example, in the electrical utility world, consumers are charged a lower multiplier when utilization is below an agreed upon threshold. If they reach the upper bounds of the threshold, a higher multiplier will be used as additional resources are consumed.

In the next blog I will discuss the concepts behind Private Cloud.

Credit and thanks go to the Microsoft Team (Kevin Sangwell, Laudon Williams and Monte Whitbeck), the authors of the original document, for allowing me to summarize and publish to the community.