Think private clouds offer all the flexibility and none of the risk? IT is missing out if it doesn’t prepare for public cloud use.
It isn't only OpenStack that's in flux but the whole realm of open source code for private cloud computing. Eucalyptus Systems, for instance, does many of the same things as OpenStack but in an Amazon-specific context. Its open source APIs are compatible with Amazon Web Services' APIs, so if you're already an Amazon customer, you can develop a compatible private cloud on premises and your workloads will run in both. Critics complain that an open source project shouldn't be tied to a proprietary vendor's approach. Given Amazon's popularity, "we think it would be lunacy not make those two things compatible," counters Eucalyptus CEO Marten Mickos.
Somewhere in between OpenStack and Eucalyptus is a commercial implementation of OpenStack from Cloudscaling, called the Open Cloud System. Cloudscaling is betting that both OpenStack and Amazon are long-term survivors in cloud computing and it supports both of their APIs. "Amazon is a de facto standard," says Randy Bias, CTO of Cloudscaling. Even the most stringent open source advocates must support it, he says.
Three Private Cloud Approaches
OpenStack is just now coming together as a set of cloud computing modules, so few large companies are implementing it. And those companies that are implementing it are careful in how they talk about it. PayPal, for example, has devoted a few servers to an OpenStack implementation and is running two "isolated" applications on them. That is, it's running two applications that can operate independently of each other and with few dependencies on PayPal's software infrastructure outside their own application logic. (The PayPal project gained notoriety because it was reported as a sign that parent company eBay -- with its many thousands of servers -- would adopt OpenStack and replace VMware software throughout the company. That isn't correct, a PayPal spokesman says, although it made no guarantees to any vendor.)
A common criticism of OpenStack is that the code is only loosely integrated; one of the six services works fine but a second and third don't work robustly with it. PayPal offers some counter-testimony. Its private cloud "went from idea to reality in six weeks," says Saran Mandair, in an email exchange. Once in operation, an engineer ran into a problem launching a workload and, facing a 45-minute deadline, sought support from developers on the OpenStack chat board. Within 10 minutes, he had seven or eight helpful responses and solved the problem and still made his deadline, Mandair says.
Eucalyptus is criticized for riding on Amazon Web Services' coattails, but one implementer, AppDynamics, an application performance monitoring software maker, has found a mission-critical use for it. AppDynamics' marquee customer, Netflix, uses AppDynamics to watch its customer-facing systems running in the Amazon cloud.
AppDynamics tests whether its systems are working in an Amazon environment by using virtual machines to mimic activity of thousands of server CPUs, banks of RAM, storage devices and transactions. But doing those tests on Amazon's cloud often hits limits AppDynamics set on Amazon capacity. Its solution was to build an AWS-compatible cloud in-house using Eucalyptus software running on 21 blades. With minor tweaks, AppDynamics was able to use the same scripting infrastructure it had used on Amazon because the Eucalyptus APIs behaved in identical ways.
Trek Bicycle is typical of many enterprise IT teams: It's exploring different cloud paths, testing two private cloud options while increasing its use of the public cloud. The private cloud approaches it's looking at include a VMware virtualized data center at its headquarters and the increasing use of Windows Server with Hyper-V for its Microsoft application, database and development environment.
Trek is "dabbling in private cloud" with the installation of VMware vCloud director software, says Adam Salvo, DevOps manager for Trek's Ascend retail point-of-sale and dealer management application. Trek is using vCloud to let some employees self-provision VMs. At the same time, however, teams working on the POS software and business intelligence are making use of Microsoft's Azure cloud service. Trek's Microsoft development has moved onto Azure, where C# tools and a SQL Server-compatible database service are readily available. Five developers work on the &dcThree;POS system in Trek's headquarters and two work remotely, but all access the same development tools and project software on Azure. They also use Azure's online computing capacity to perform software testing and quality assurance to avoid overburdening headquarters systems. Trek also uses Azure to stage pre-production systems to make sure they'll run as planned.
Trek hasn't mapped out its cloud strategy yet, but Salvo says it might make sense to run business analysis reports it does for independent bike shop owners on Azure and let the shop owners access them there, while keeping core business data on premises in SQL Server. What about its VMware virtualized data center? Salvo says it could use tools that convert a VMware virtual machine into a Hyper-V VM, to ensure that VMware workloads can find an external host if needed in Azure.
There are few clear choices in today's private cloud debate. But the trick isn't making that one perfect choice, because there isn't one option --VMware, Microsoft, Amazon, OpenStack -- that IT can embrace for all its private cloud needs. The trick is to avoid creating a private cloud that won't smoothly mesh with a public cloud should you ever want it to. A private cloud architecture has considerable flexibility and cost savings advantages, but the hybrid private-public data center infrastructure will be reality soon for many more companies. --With Chris Murphy
Multicloud Infrastructure & Application ManagementEnterprise cloud adoption has evolved to the point where hybrid public/private cloud designs and use of multiple providers is common. Who among us has mastered provisioning resources in different clouds; allocating the right resources to each application; assigning applications to the "best" cloud provider based on performance or reliability requirements.