Red Hat has launched a "platform-as-a-service" cloud called OpenShift, a service for building, hosting, and readily scaling applications. Think of it as a Microsoft Azure that isn't so Microsoftee.
Initially, it's aimed at developers looking to test applications. By the end of the year, the OpenShift platform cloud will be able to support production applications and offer the sort of service level agreements that businesses expect.
At the Red Hat Summit today, Red Hat's Isaac Roth, who carries title PaaS master, said that the work that system administrators and developers have to do to cobble together n-tier infrastructure – virtualized or physical, plus the compilers and their application frameworks – is a nightmare.
"It's awful," said Roth. "I just want to write code. I just want to create Angry Birds."
You and about 10 million other people. And with the OpenShift cloud, which Red Hat is initially making available for free, those 10 million hackers will have a place to go to fiddle their bits and try to change them into app gold. (Well, not if they all hit the OpenShift platform cloud at the same time.) And if they strike it big, they will also have a place to run their apps and have Red Hat help manage them.
Red Hat's platform cloud can run Java, Ruby, PHP, and Python applications, and it supports Oracle's MySQL database and 10gen's MongoDB NoSQL big data stores. Nosh Petigara, director of product strategy for 10gen, said that the company helped Red Hat construct OpenShift's MongoDB offering and that it plans to eventually offer support and services to those using MongoDB atop the service. The appropriate open source frameworks for each language are also pulled into the platform cloud, says Roth, because "we want this stuff to look familiar to developers."
On top of this, Red Hat plops its own tools to manage Enterprise Linux, Enterprise Virtualization (the company's commercial implementation of the KVM hypervisor), and various JBoss middleware components, which take care of the managing, configuration, security, and automatic scaling up and scaling down of PaaS slices on OpenShift as developers create and test their code.
Red Hat has puffed up three different iterations of the OpenShift platform cloud. The entry platform cloud is called OpenShift Express, which runs on Red Hat's own infrastructure. It supports Ruby, PHP, and Python applications. You create the code and use a git push command to get the code out on the OpenShift cloud and then leave the setup to Red Hat's system. OpenShift Express is free, and according to Roth it is intended to remain free. The idea apparently is to use the Express edition as an onramp to paying customers, much as having open source software does the presales work for the percentage of customers who desire a support contract for a RHEL or JBoss stack when they put it into production.
OpenShift Express is running on Amazon's EC2 cloud, and so are the tools that Red Hat itself is using to manage the OpenShift platform cloud. You don't need an EC2 account to use OpenShift Express, however – Red Hat is picking up the tab, and all you need to do is give them your email address as an account user name and off you go coding.
If you need to create multi-tier application topologies for Java and PHP applications, then you need to get OpenShift Flex. This is also where MySQL and MongoDB data stores are an option, as is JBoss and Tomcat middleware, Memcached for Web caching, and other features. The Flex version gives developers more control over the configuration of the software layers, but still has Red Hat doing the monitoring to make sure it is all patched, updated, and working correctly. OpenShift Flex is not free, but Roth says that pricing has not been set for it.
If you want to create a development environment that links out to cloudy infrastructure running on public clouds, then you need to upgrade to OpenShift Power edition, which is based on a new infrastructure-as-a-service offering Red Hat is calling CloudForms (more on this below). OpenShift Power gives developers "complete control over cloud deployments," giving them root access to virtual machines, allowing them to customize topologies, and encapsulate any application developed on OpenShift so it can be puffed out into a public or private cloud. Initially, OpenShift is supporting deployment out to Amazon's EC2 compute cloud and related storage clouds, of course.
Any application or programming language that can compile on RHEL 4, 5, or 6 is supported on OpenShift Power edition, which includes an image configuration system that knows how to deploy to EC2 (which is based on a modified Xen hypervisor) and, soon, IBM's SmartCloud infrastructure cloud. Scott Crenshaw, general manager of Red Hat's cloud business unit, tells El Reg that any cloudy stack that supports Red Hat's Deltacloud API set will work with OpenShift Platform.
Applications can be hosted in virtual machine slices based on Microsoft's Hyper-V, VMware's ESX, and Red Hat's KVM hypervisor and when the Power edition ships later this year, it will also support the cloudy infrastructure on NTT, Savvis, and Fujitsu clouds. The OpenShift Power platform cloud knows how to package up the applications for each of these different clouds in such a way that they are portable between the clouds.
OpenShift Power is based on CloudForms, Red Hat's second iteration of its IaaS stack, following the Cloud Foundations stack announced at last year's Red Hat Summit. CloudForms is in developer preview right now and is based on 65 different open source projects that Red Hat has integrated into an IaaS stack complete with compute resource management, infrastructure service management, and application lifecycle management features.
Bryan Che, product marketing manager for Red Hat's cloud operations, says that other infrastructure clouds out there today are missing the application and infrastructure services management layers, even if they do a great job at managing infrastructure. Or, they only support virtualized server instances, not physical servers, or they only support a few hypervisors and server types. (While Red Hat didn't get into this, it is a safe bet that CloudForms only works on x64-based machinery, to give you a good example of this.)
CloudForms is in beta testing now and is expected to be available in the fall, Crenshaw tells El Reg. "We're primarily beta testing the integration and, in untypical Red Hat fashion, we are focusing on the user interface to make it simple and easy," he says.
The pricing methodology for CloudForms, and therefore OpenShift Power edition, has not been set yet. No matter what pricing Red Hat cooks up, Crenshaw says it will be based on some sort of capacity metric. "We need to get a model that fits all of the use cases but that is simple enough to understand," he says.
That is not an easy task in a world that mixes user, core, socket, server, partition, and enterprise licensing for software. ®