The beta release of OpenShift uses Amazon as a platform for building interoperable cloud workloads
By Charles Babcock, InformationWeek
Red Hat's first shot at cloud computing was too painful for customers, needing either deep open source expertise or a consulting contract with Red Hat. Now, Red Hat's coming out with something more promising, a platform-as-a-service called OpenShift that uses tools familiar to many open source developers.
It's an approach that has a chance--with some important caveats. Among other things, it's taking on platforms from Microsoft and VMware.
In addition, Red Hat said at its annual user group Summit in Boston Wednesday that it is not trying to target one type of cloud but produce standardized workloads that can be exported to either a company's private cloud or a variety of public clouds, including Amazon Web Service's EC2. In another departure, it's trying to shift the focus of cloud building away from creation and management of virtual machine workloads to the creation and management of cloud applications that endure for a long lifecycle. That lifecycle would include frequent alterations to match changing business needs.
With these moves, Red Hat is trying to differentiate itself from VMware and Microsoft. It's trying to offer a more open development platform compared with those two vendors, which are the leading contenders for companies building private and hybrid cloud architectures. VMware and Microsoft have each provided extensive platforms to support their virtual environments. Each results in some degree of lock in.
Red Hat is one of the few companies that could bring this combination of elements to do-it-yourself cloud building. It has a backbone constituency of Enterprise Linux users throughout the corporate world and is the only open source company with revenue that are expected to cross the 1 billion dollar mark for the first time this fiscal year. Perhaps the second most successful open source company is MySQL AB, which was sold in 2008 to Sun Microsystems for 1 billion dollar, and its annual revenue was less than 200 million dollar, by most accounts.
Red Hat is moving far beyond its previous "support" for cloud builders, represented by its announcement of Cloud Foundations at last year's Red Hat Summit in Boston. Cloud Foundations was a stack built on Enterprise Linux and JBoss middleware but, like other cloud products, was focused on building virtual machines suitable for Amazon or other targeted VM environments.
OpenShift provides an application development environment initially hosted on Amazon's EC2 cloud. Developers may work there in a variety of open source languages, including Ruby, Python, and PHP, and then target the application for deployment in the cloud. For now, the default deployment environment is also EC2 or an organization's internal cloud data center.
But in talking to Red Hat CTO Brian Stevens, he says that OpenShift environment supplies standardized APIs for cloud services, and "with a one line command," the application can be deployed to a different cloud "without figuring out all the nuances" of the target environment. This approach hinges on developers adopting Red Hat's recommended Deltacloud APIs, and at least some public cloud suppliers supporting them. More typically, a developer would need to master the details of a target's API set.
Red Hat has been an advocate of its Deltacloud interoperability API standard and has submitted it to the DMTF standards body. But Red Hat hasn't published even a short list of cloud environments that support Deltacloud. In addition, there are competitors with open APIs, such as Simple Cloud API sponsored by Zend Technologies, IBM, and Microsoft; or open source versions of EC2's APIs, supplied by Eucalyptus. The OpenStack project is creating another set of open source cloud APIs and has submitted them to DMTF as well.
Red Hat is making a bet on Deltacloud APIs, saying that by building services calls to its neutral Deltacloud APIs, cloud developers at least have the option of finding conversion services to a cloud of choice or using those clouds that have chosen to recognize it.
OpenShift expands on the platform-as-a-service that Red Hat acquired last November with its purchase of Makara, a startup offering an application building platform on EC2. Stevens says that Red Hat has adopted the Git deployment engine that comes out of the Linux kernel development process. Linus Torvalds wrote Git, a directory of a developer's files with a repository for tracking each version created. Red Hat offers a hosted version for joint cloud projects with multiple developers. Stevens says it can push code out to a targeted recipient as well as track source code changes, which gives developers an automated deployment tool once an application is built.
Unlike predecessors VMware, Citrix Systems, or Eucalyptus Systems, Red Hat is separating formation of private and hybrid clouds workloads from their dependence on virtual machines. Heretofore, cloud vendors have assumed the private cloud will be a heavily virtualized environment, but there is no reason it has to be. Virtualization vendors just tend to assume it will be. Red Hat is shifting the focus more toward application management, even if the application runs on bare metal--a server with nothing but the application and its operating system.
In the end, Red Hat has got it right. Cloud computing is more about applications than virtualization. As a practical matter, most implementers are pursuing the private cloud as a step toward greater efficiency and the most efficient internal servers have been heavily utilized virtual ones. In the future, the private cloud setting is likely to be a mix of virtualized and unvirtualized servers.
Before, building a private cloud with Enterprise Linux, JBoss middleware, and the KVM hypervisor required deep open source expertise or consulting services from Red Hat, Stevens admits. Now the JBoss middleware exists as an easily invoked service in the background of OpenShift application building.
The platform supports use of different frameworks, including VMware's Spring Framework, Ruby on Rails, Zend Framework for PHP, JBoss Seam, Rack (an interface for Ruby web servers), the Symfony PHP framework, and Java Enterprise Edition 6.
With Microsoft approaching cloud application development from the strength of its Visual Studio tools in the Azure cloud, and VMware approaching it from its virtual machine management, it's time for a third major option appealing to the open source corner of the universe. Stevens contends that that's Red Hat's OpenShift, available in beta with delivery of a 1.0 version to come later this year.
As a result, building workloads to run in the private cloud with the potential to move into the public cloud may have gotten a little easier. There are still miles to go before OpenShift can become the kind of generally interoperable cloud platform that Red Hat talks about. The most troubling issue is who, besides Red Hat, supports Deltacloud APIs, given the proliferation of competing APIs. But a comprehensive open source effort has got to start somewhere. Red Hat has made its best effort at launching that platform.