No matter how well-documented, understood or contractually defined a public cloud service might be, the technologies that power them are, as of right now, known only to the provider. How machines are deployed in the cloud, the means by which backups are performed and the process by which provisioning occurs; all are shielded from the typical enterprise consumer of public clouds. Situations like these, especially when sensitive data is involved, are one of the many reasons that private clouds continue to garner enterprise interest.
It is in management where elasticity and resources meet to produce a true private cloud.
In order to gain complete control over their cloud environment, many organizations are shelling out for the benefits of in-house cloud elasticity. For those of you who've wrapped your heads around the basics of cloud computing and the early stages of private cloud construction, here are some intermediate-level tips on private cloud adoption and implementation.
Consider the existing virtual infrastructure
Any company seeking private cloud should consider its existing infrastructure before moving forward. If a company has already made significant virtualization inroads, it makes sense to favor the same platform for cloud. This will allow the least amount of soft-money to be invested into the project, especially when it comes to familiarizing IT staff.
It also allows for synergies in using existing hard-cost infrastructure components. If a company has invested heavily in virtualization, with the necessary network and storage systems already in place, migrating those systems to a brand new environment (or worse, re-tasking the existing environment) makes little sense when compared to expansion. Gone are the days of consultants adding a new tray of raw disk to a storage area network and installing licenses for storage management, at least for those companies taking advantage of modern storage architecture.
This isn't to say that making cloud decisions are a snap. IT shops using VMware will still have to think about how vCloud interoperates with their existing vSphere environment. Companies using Amazon today, and looking to do some testing "off-the-credit-card" using Eucalyptus, still need to think about how their Walrus Storage should be configured.
The key, however, is to understand that the private cloud is an evolution, not a revolution. Many people compare virtualization to mainframe technology because they have some similar elements -- shared resources being the largest similarity. There is a bit of debate on how deep those similarities go, but the point is that there is an evolutionary process that occurs in technology design and the cloud is the next step in this evolutionary path.
Private cloud scalability and elasticity
Cloud's elasticity is well-suited to virtualization, which makes it crucial to properly manage the flexibility of your private cloud environment. Having too few physical hosts available, too few resources on those hosts, too little storage or not enough bandwidth will stifle performance. Conversely, leaving an army of servers powered on does not help energy costs, and only invites the inevitable specter of MTBF issues on idle hardware components.
Network and storage resources dedicated to a system that doesn't need them are a waste, plain and simple, and just as much of a risk as having too few resources. Any cloud computing design must include a successful scaling review as a key milestone. What's more, these subsystems are elemental to existing virtualization systems.
There is a plethora of information on scaling storage and network resources, as well as server resources, to meet the needs of virtualization. For example, in a Citrix Systems XenDesktop design (a decidedly non-cloud use case but valuable here for demonstration), a conservative estimate is that six to nine desktops can live on each core of a system. Using that estimate, a six-core quad processor system should support 144-216 users. With 1 GB of RAM per user for Vista, and 2 GB or RAM for Windows 7, that's an awful lot of memory. Even with a 50% share rate, which is considered high, that's still 144-216 GB of RAM for Windows 7 per server.
Why the virtual desktop infrastructure (VDI) reference? Many cloud deployments are simple Web and app servers that use similar specifications for systems per core, share a similar percentage of memory and are meant to be highly dense like VDI. Scaling to 100 Web servers on a large server is easier than scaling up 50 Web servers on a woefully underpowered system. Also, many storage designs implement deduplication at the virtualization layer, allowing for shared storage resources as the guest operating systems use the same block-level storage from a "golden image," similar to XenDesktop's VDI offering.
Keep your private cloud managed
Management is also similar to virtualization, in that hosts and guests are monitored from a higher level and acted against based on pre-set rules. The key differentiator is that while the rules in virtualization are often invoked to ensure uptime (VMotion, LiveMigrate, etc.), the rules in private clouds are invoked to ensure that service-level agreements (SLAs) are met. It is in management where elasticity and resources meet to produce a true private cloud: scaling those virtual systems across physical systems, contracting and expanding based on demand, and ensuring the health and stability across the entire cloud stack.
The private cloud is an evolution, not a revolution.
Private clouds from commercial vendors often have this well covered. VMware leads the pack with its Operations Manager offering and the Hyperic software that was acquired in the SpringSource buyout. Citrix and Microsoft are hurrying to catch up with their respective systems, as well. Open source tools are good but not as robust; Eucalyptus in particular can be managed via its own management product (available in the commercial version) or several open source tools. None of these have the raw depth of VMware's combined offerings, but they will get the job done.
Regardless of the technical merits of a private cloud, if management tools don't measure up, the offering runs the risk of under-delivering or outright failing in its mission to provide the elasticity of the public cloud without the risks.
When designing a private cloud, take these lessons -- along with a lot of technical information -- into consideration. Due diligence and understanding when to choose cloud and when to hold back are the keys to the private cloud kingdom.
ABOUT THE AUTHOR
Joseph Foran is the IT director for Bridgeport, Con.-based FSW, Inc., and principal at Foran Media, LLC. He has been in IT since 1995, specializing in infrastructure, and involved in virtualization and cloud computing since 2002. Email Joe at email@example.com or follow him on Twitter (@joseph_foran).