Everybody is talking about cloud computing as an alternative to traditional computing models, but many are leery of relinquishing control to a public cloud provider. As a result, companies looking to embrace cloud architecture are creating their own private cloud environments.
What defines a private cloud infrastructure compared to a traditional data center? Can you just declare your existing data center a private cloud and be done with it? It's not as simple as that. Private clouds are those that a company manages itself and deploys in its own data center, but they have several characteristics that distinguish them from traditional data centers, including:
- Dynamic scalability: The amount of available resources should be able to dynamically increase or decrease based on demand.
- High availability: The cloud infrastructure should have as much uptime as possible with minimal unplanned outages.
- Chargeback model: Cloud resource consumption should be monitored and measured to calculate user chargeback.
- Self service: Users themselves should be able to request and provision cloud resources as needed.
- Automation: Processes within the cloud infrastructure should be as automated as possible to ensure timely deliverables to users.
You should also assess your environment's readiness to become a private cloud. Virtualization is one of the key requirements for building a private cloud infrastructure, so you need to determine if your virtual environment can meet the demands of a cloud architecture -- and what changes you'll have to make if it can't.
Because clouds are dynamic environments, they must be able to handle peak workloads when they occur -- not just meet the demands of average workloads. You will most likely have to add features to your virtual environment to provide greater availability and automation, measure resource usage for chargeback and offer self-service capabilities.
Private cloud infrastructure products
These features are sometimes available from hypervisor vendors, either as companion products or in more expensive editions. For example, some VMware vSphere editions offer Dynamic Resource Scheduler, VMotion, High Availability and Fault Tolerance, which help balance host resources and also provide high or continuous availability for virtual machines. The VMware vCenter Server product line also has LifeCycle Manager, Orchestrator and Chargeback, which provide automation, chargeback and provisioning.
Otherwise, there are many third-party vendors that offer the features you will need in a private cloud infrastructure. VKernel has a Capacity Analyzer product for Microsoft Hyper-V and VMware environments and also a Chargeback product for VMware. Akorri's BalancePoint product provides many features that are critical to cloud environments, including chargeback, capacity planning and reporting. In addition to supporting both Hyper-V and VMware environments, Akorri also supports physical servers -- in case parts of your private cloud infrastructure are not virtualized.
Purchasing a storage system that meets the requirements of your private cloud but is inadequate for virtualizing the rest of your infrastructure can be an expensive mistake. Likewise, when it comes to networks, you must consider maximum redundancy and sufficient bandwidth capacity to ensure that your cloud is highly available.
Private cloud storage and network virtualization
There is more to private clouds than server virtualization. You should also look to deploy storage and network virtualization to ensure maximum interoperability between all the layers of your private cloud.
Storage virtualization consolidates multiple storage devices into a single resource that reduces the back-end complexities and provides a more simplified view. In addition, many storage products integrate directly with server virtualization platforms to provide automation, intelligent multi-pathing and failover, which are beneficial to cloud architectures.
Network virtualization combines the physical and virtual networks so you can manage and administer them as one network. Products such as the Cisco Nexus 1000v extend the advanced features commonly found in physical switches to virtual environments, providing better security, management and quality of service for your private cloud.
What not to virtualize in a private cloud
A final consideration is whether or not you need to virtualize everything in your private cloud. Cloud applications are typically multi-tiered, and you should consider whether or not you need to virtualize all those tiers to satisfy the requirements of your cloud.
The nature of a cloud may require some of the tiers to dynamically increase resources when needed, but it may not require that from all tiers. You should determine which applications will benefit most from virtualization and which ones you may not need to virtualize.
Even though virtualization does have additional benefits unrelated to cloud computing, it may not make sense to virtualize all existing applications -- especially those that would be expensive.
On the other side of that argument, however, not virtualizing all your tiers can make chargeback more difficult, because your resources will span both virtual and physical servers. Assessing your needs and requirements early on during the planning process is the key to deciding what you will virtualize in your cloud and what you will not.
Be sure to include your whole infrastructure in your analysis. Servers, storage and networks all have specific requirements and dependencies, and neglecting any one area can negatively affect the other areas.
About the expert
Eric Siebert is a 25-year IT veteran whose primary focus is VMware virtualization and Windows server administration. He is one of the 300 VMware vExperts for 2009, author of the book VI3 Implementation and Administration and a frequent TechTarget contributor. In addition, he maintains vSphere-land.com, a VMware information site.
Dig deeper on Improving server management with virtualization