Cloud Foundry shines with broad application support and stellar ease of use, but OpenShift has the edge in management and automation Credit: Thinkstock PaaS (platform as a service) occupies an interesting niche in the cloud ecosystem. It typically sits on top of IaaS (infrastructure as a service), which provides the ability to access remote computing resources. With IaaS you have machines, or virtual machines, that are not on your premises, that you can use as you wish. An example of IaaS would be Amazon EC2. PaaS includes infrastructure, storage, database, information, and process as a service. Think of PaaS as providing remote computers, disks, databases, information streams, and business processes or meta-applications, all tied up in one “stack” or “sandbox.” The applications may well be SaaS (software as a service), such as a CMS (content management system) or CRM (customer relationships management) system. Where a PaaS adds value over IaaS is to automate all the provisioning of resources and applications, which can be a huge time-saver. [ Also on InfoWorld: Cloud Foundry brings power and polish to PaaS | OpenShift shines for developers and ops | Puppet vs. Chef vs. Ansible vs. Salt | Work smarter, not harder — download the Developers’ Survival Guide | Keep up with the latest developer news with InfoWorld’s Developer World newsletter. ] The two major open source PaaS systems are Red Hat’s OpenShift and Pivotal’s Cloud Foundry. Both are available in three flavors: hosted, enterprise, and open source. For this review, I looked primarily at the enterprise versions, which are fully supported and intended for businesses that want to run PaaS in their own cloud or data center. In both cases, the hosted and enterprise versions are based on the open source versions. Don’t confuse PaaS systems with configuration management and orchestration tools, such as Puppet, Chef, Ansible, and Salt. You can use Puppet or the others to set up a PaaS or SaaS, or simply to manage the configuration of a whole bunch of servers. OpenShift does in fact use Puppet, and it’s compatible with the others. Cloud Foundry uses a different configuration management tool: BOSH. Small differences Cloud Foundry and OpenShift are quite similar in their capabilities and their approach to the PaaS. While the terminology they use and the exact deployment methods differ, they are very much the same thing: Each offers a Linux platform with lightweight containers that can run applications against open source languages and frameworks, using common services such as databases. For deployment of application source code, OpenShift uses Git, but it also allows you to deploy binary packages. Cloud Foundry only takes your binaries (.WAR files for now, with other formats to be supported later), then automatically combines them with buildpacks of languages and frameworks (such as Java and Tomcat) and services such as databases. The buildpack format was developed by Heroku and contributed to the open source community, spawning many community buildpacks, most of which work on Cloud Foundry. Four buildpacks are standard in Cloud Foundry: Java, Node.js, Ruby, and Go. In most cases, the open source language or framework you need will be available as a buildpack, and to load it, you’ll simply note the Git repository on the Cloud Foundry command line when you push your app. If the necessary buildpack is not readily available, you can easily create it in a few lines of Ruby or another scripting language. OpenShift doesn’t have buildpacks. Instead it has cartridges, which include databases as well as languages and frameworks, and QuickStarts, which are applications with code and libraries already configured for you. InfoWorld Scorecard Breadth of support (20.0%) Ease of use (20.0%) Documentation (15.0%) Installation and setup (15.0%) Value (10.0%) Management (20.0%) Overall Score (100%) Pivotal CF 1.2 9.0 9.0 8.0 7.0 9.0 8.0 8.4 Red Hat OpenShift Enterprise 2.1 8.0 9.0 8.0 9.0 9.0 9.0 8.7 OpenShift cartridges are pluggable components that can be combined within a single application. The built-in cartridges are different for the three versions of OpenShift, but the lists are all extensive, albeit limited to things that run on Red Hat Enterprise Linux (or Fedora, in the case of Origin, the open source version of OpenShift). QuickStarts combine code and one or more cartridges, making it easy to install whole applications. While the OpenShift team doesn’t maintain QuickStarts, anyone who is willing to be responsible for keeping one up-to-date with security issues is free to create and post one. WordPress, Drupal, and Ghost are among the top QuickStarts. Like Cloud Foundry buildpacks, OpenShift cartridges and QuickStarts are simple to build. OpenShift runs applications in containers called gears. Cloud Foundry runs built and packaged applications called droplets, in Droplet Execution Agents. These containers are isolated from the other gears or droplets in the PaaS, and they are lightweight compared to virtual machines. In the future, both Cloud Foundry and OpenShift will support Docker containers. Larger considerations A key differentiator for Cloud Foundry — that is, Pivotal’s two Cloud Foundry offerings, Pivotal Web Services and Pivotal CF — is support for the Pivotal Big Data Suite, which includes Pivotal HD (Pivotal’s Hadoop distribution), HAWQ SQL for Hadoop, GemFire XD analytics, and the Spring for Apache Hadoop Java framework. The Pivotal Big Data Suite is an enterprise data warehouse that includes unlimited Pivotal HD. According to Pivotal, in practice an administrator defines a service pool of HDFS and MapReduce instances, which take about five minutes to provision from scratch on Pivotal CF. Then a developer or an application can ask for an instance from the pool, obtain it in about two seconds, and a new instance can be created for the pool in the background. When the requested instance is no longer needed, it can be released. Pivotal also offers a Mobile Services Suite that’s integrated with both Pivotal CF and Pivotal HD. This is based on seven years and 400 apps’ worth of know-how acquired with Xtreme Labs last year. It’s basically an MBaaS (mobile back end as a service) on Pivotal’s PaaS, with the integration extending out to mobile applications built on the platform. A big differentiator for OpenShift is automatic application scaling, which adds gears and even nodes when an application becomes heavily used. It’s built into OpenShift and doesn’t require a front-end scaling service. You simply check a box when creating the application, then configure the traffic trigger points for adding and dropping gears. Similarly, OpenShift automatically detects when an application is not getting any HTTP traffic and will eventually idle the gears without any intervention needed by the developer or operations. At such time as the application is requested again, OpenShift will automatically load it back into memory and handle the HTTP requests. OpenShift will even automatically start and restart misbehaving applications. All of these features reduce the amount of monitoring and operations work required to run an application on OpenShift. Picking a PaaS My experience installing OpenShift locally went very smoothly, once I got over my misguided attempt to use an unsupported virtual machine manager. My experience installing Cloud Foundry locally was not smooth, although ActiveState’s Stackato variant was easier to install than Cloud Foundry open source. These experiences caused me to rate OpenShift higher than Cloud Foundry for installation. On the other hand, using the online version of each platform was a snap, and enterprises installing a PaaS in their own data center or on a private cloud are likely to use experienced consultants to do the setup. The biggest pluses I see currently for OpenShift are its gear idling, which allows very high application density, and its automatic application scaling. These two features bring OpenShift up to a 9 on Management. Pivotal CF’s lack of these features lower its Management score to 8. I think most enterprise customers will appreciate both gear idling and automatic application scaling. Note that Pivotal CF does have automatic application scaling on its road map. The biggest pluses I see currently for Cloud Foundry — specifically Pivotal CF — are its integrations with Pivotal’s big data and mobile services suites. These two very large feature areas raise Pivotal CF’s Breadth of Support score to 9. OpenShift’s lack of these integrations lower its Breadth of Support score to 8. You may or may not care about either of these integrations, depending on your plans for deployments. Which PaaS should you choose? It depends on a lot of factors, and your IT department should do a careful evaluation. If application density is a driving factor for your installation, I would expect your team to wind up favoring OpenShift. Similarly, if your developers use Git heavily, they may favor OpenShift. On the other hand, if integrating your PaaS with big data and mobile services is high on your priority list and you don’t already have other solutions for your big data and mobile services needs, then your team may favor Pivotal CF. For more in-depth looks at Cloud Foundry and OpenShift, read the complete reviews: Review: Cloud Foundry brings power and polish to PaaSReview: OpenShift shines for developers and opsCloud Foundry vs. OpenShift at a glance Cloud Foundry OpenShiftProsWide assortment of languages, Web frameworks, and databases available and supportedEasy and fast self-service deployment for developers and cloud operatorsApplication container, service, and node health are all monitored, and automatically restarted if not in the expected stateBig data and mobile services are supported in the PaaSCan deploy from the command line, Eclipse, Spring Tools Suite, Maven, and Gradle Wide assortment of languages, Web frameworks, databases, and application stacks available and supportedEasy and fast self-service deployment for developers and cloud operatorsAutomatic application scalingGit integration at the source code level, with automatic deployment triggered by a git pushGear idling allows OpenShift to support a very high density of applicationsRuns on any hardware or cloud or virtual machine that supports Red Hat Enterprise LinuxConsAutomatic horizontal scaling is still in beta, but scheduled for Q3 release in Pivotal CF; another PaaS based on Cloud Foundry, ActiveState’s Stackato, already has it No downloadable “micro” VM for Cloud Foundry v2 as yet, but you can download Stackato Micro or use one of two Cloud Foundry installers to install Cloud Foundry in a local VMLimited to applications that run on Ubuntu Linux, unless you use the Uhuru Windows version of Cloud Foundry, which we have not reviewed Largely limited to applications and services that run on Red Hat Linux, unless you use the Uhuru OpenShift.Net product, which we have not reviewedPlatformsPivotal CF: VMware vSphere, OpenStack, Amazon Web Services, Google Cloud Platform OpenShift Enterprise: Red Hat Enterprise Linux. OpenShift Origin: KVM, VirtualBox, VMware Fusion/Player CostCloud Foundry, free open source; Pivotal Web Services, 3 cents per gigabyte per hour after two-month free trial with up to 2GB of app memory and 10 free Marketplace services; Pivotal CF, priced by number of application instances running and number of Operations Manager instances running, with a 90-day evaluation license available for free OpenShift Origin: free open source. OpenShift Online: first three gears and first gigabyte storage free, then a per-hour, per-gear charge for usage (ranging from 2 to 10 cents), plus a $1-per-gigabyte, per-month charge for additional storage; to use more than 16 gears online, there’s an additional $20 per month service charge. OpenShift Enterprise: pricing starts at $4,000 per year depending on configuration (core/VM or socket pair). This article, “PaaS shoot-out: Cloud Foundry vs. OpenShift,” was originally published at InfoWorld.com. Follow the latest developments in application development, cloud computing, and open source at InfoWorld.com. For the latest business technology news, follow InfoWorld.com on Twitter. Related content opinion The dirty little secret of open source contributions It isn’t the person making the contributions—it’s how easy the contributions make it to use the software. By Matt Asay Nov 18, 2024 4 mins Technology Industry Open Source news ‘Package confusion’ attack against NPM used to trick developers into downloading malware Attackers gunning for supply chains again, deploying innovative blockchain technique to hide command & control. By John E. Dunn Nov 06, 2024 4 mins Vulnerabilities Open Source Security news Meta offers Llama AI to US government for national security US government agencies and private sector partners can now use the Llama model, but many other restrictions on its use remain. By Prasanth Aby Thomas Nov 05, 2024 1 min Generative AI Open Source Artificial Intelligence news OSI unveils Open Source AI Definition 1.0 The Open Source AI Definition will provide a reference for determining whether an AI system is truly open source AI, OSI said. By Lynn Greiner Oct 28, 2024 7 mins Generative AI Open Source Artificial Intelligence Resources Videos