Red Hat's vision of the Cloud: not your father's XaaS

Red Hat announced two new cloud offerings at their Summit in Boston, OpenShift and CloudForms.  The OpenShift PaaS offering is aimed at developers who want a quick and easy way to deploy apps into an existing IaaS environment.  That is a key differentiator here, existing IaaS environments. OpenShift does have a 'locally' hosted PaaS flavor called Express.  This is for quick and dirty, not very scalable apps.  Using the distributed revision control system, git, a devvie can push a webapp up to the PaaS environment and get a URL for the running app.  It is possible to deploy simple apps with PHP, Python and Ruby support available.  With no access to database software, you can still install apps like Drupal or MediaWiki.  There are no promises here, so make no demands.  This is designed for quick prototyping and light use.  If you want more features or control, there's Flex and Power. OpenShift Flex will run PHP and Java, adds JBoss to the mix as well as support for MySQL and MongoDB.  But more importantly, it adds typical PaaS functionality like resource configuration, application definition, auto-scaling, performance monitoring and remote shell access. Define multiple clusters to designate development versus production to promote apps through their lifecycle and now we're cooking with PaaS. OpenShift Power is the ultimate in control and flexibility with support for 'anything built on Linux', C, Java, PHP, whatever.  Full OS control, full app controls, image and template building and multi-cloud spanning are on the roadmap for the Power version of the offering.  If you need the knobs to turn, Power will have them ready and waiting. But the real kicker isn't the very pretty interface and ease of use; it's the fact that OpenShift Flex is IaaS agnostic.  This bears repeating, the Flex and Power flavors of OpenShift deploy your application to multiple cloud providers.  Right now, AWS is the only one available, but more from the Red Hat Certified Cloud Provider program are on the way.  OpenShift is able to offer multiple IaaS backend partners and cloud spanning because it uses CloudForms under the hood.  And CloudForms is more than just IaaS.  In fact, you could argue it isn't IaaS, but an IaaS framework. CloudForms is a full lifecycle management tool for cloud environments.  From the bottom up, CloudForms can manage public or private resources, physical servers, local virtual machines and hypervisors, and remote cloud hosted guests.   The System Engine components manage the images and configuration of the base resources that make up the applications.  An application definition that pulls together these templates to describe a service is the next logical layer up.  These abstraction layers allow the Image Factory to build the artifacts on a multitude of platforms, each with different requirements for the functional build. If CloudForms was nothing but a nice self-service interface to define services, build and then deploy the resulting artifacts to a selection of private or public resources, it would be a nice piece of work.  We've got the service orientation, self-service portal covered, how about dynamic infrastructure? I've said CloudForms can handle deployment to multiple different infrastructure options: physical servers, local hypervisor platforms and public clouds.  The orchestration of these deployments can scale services up or down, make determinations about best fit location based on various criteria, and migrate workloads from one environment to another.  If a service requires a component, CloudForms will pick from the appropriate providers to find that component.  Utilization, cost, component availability, are a monitored, reportable and usable as criteria for locales. CloudForms is not yet another IaaS software offering.  CloudForms is a complete stack that not only will help you build and maintain a private IaaS, but easily bridge the gap to public clouds.  But the biggest win in my eyes is the single pane to manage physical, virtual or cloud resources from a service viewpoint.  Creating service definitions and resource templates that do the right thing regardless of underlying infrastructure will not only speed the uptake of cloud, but also make the move to virtualization and future planning easier.  Service level management with physical abstraction is the definition of cloud, and CloudForms provides that complete layer.