The walls that began a-tumblin’ down when Microsoft and Red Hat announced their historic partnership agreement last week, just keep on a-fallin’ . In time for the KubeCon conference going on now in San Francisco, Red Hat released for general availability version 3.1 of its OpenShift platform. This new version establishes critical bridges that didn’t exist before that link major parts of its technology stack — some of which were Red Hat’s parts to begin with.
With OpenShift, it will soon be feasible for distributed applications built on OpenShift to incorporate the recently open-sourced .NET Core — which, we learned, Red Hat will now distribute — as well as Red Hat’s JBoss Fuse Enterprise Service Bus, plus Red Hat Gluster distributed file storage, and the Red Hat Ceph software-defined data access.
State of Affairs
“PaaS has been defined for quite a while. It’s really been about making sure you can have a great amount of flexibility and elasticity at scale, for certain classes of applications,” explained Ashesh Badani, vice president and general manager of OpenShift at Red Hat. “Heroku was one of the earliest proponents of a 12-factor application, and that style of development. But it thinks of applications as apparently being stateless only, and not really thinks about applications that are more traditionally built, or are less scalable in nature.”
Badani’s goal for OpenShift 3.1 is to enable stateless and stateful applications to co-exist. He told us the story of one very major customer in the financial services industry that has upwards of 700 legacy applications, only a dozen or so of which could be re-architected using cloud-native frameworks. Tying in OpenShift with Gluster and Ceph, he said, will enable persistent storage for all containers running on its platform.
The next point is very important: Last June at DockerCon, a team of third-party Docker supporters including Weaveworks and ClusterHQ first demonstrated a persistent storage capability, made feasible through what was then a prototype concept for Docker add-ons — modules that extend the functionality of the underlying platform, while also networking with one another. That demonstration showed the one bit of functionality that most every developer was yearning for at the time: persistent storage.
As Red Hat’s Badani told us, OpenShift now enables persistent storage, including for Docker containers (and conceivably for Windows containers as well), without the need for these plug-ins. As a result, he contends, conventional applications need not be altered in order to continue accessing persistent storage, once they are moved into a containerized architecture and into OpenShift 3.1.
With OpenShift version 3.0, the PaaS platform began an entirely new journey for Red Hat, by integrating with the Kubernetes orchestrator. It’s through the expansion of this relationship, Badani said, that version 3.1 is making Gluster volumes accessible through Kubernetes as storage abstractions.
“You really are able to see this promise of this immutable infrastructure,” he continued, “and have containers be ephemeral in nature. But in the past, you had to do something over and above the way the platform was designed, to be able to support attached storage. So containers were ephemeral, but when you blew them up, you lost where they stored the data. Now we’re able to say, you can lose the containers, but we’re going to persist the data around them. So you can move them around from node to node … and you’re able to start supporting this notion of running clusters of containers at much larger scale than you’ve done before, for different kinds of applications.”
Same Time, Same Channel
OpenShift 3.0 was the first version of Red Hat’s PaaS platform to enable support, through JBoss, for Java EE as well as Apache Tomcat-based Java. Now with 3.1, the Red Hat VP told us, the platform adds support for the Fuse enterprise service bus, within containerized apps including Java. This could finally bring to fruition a level of co-existence that could enable that financial services company’s 688-some-odd old style applications to co-exist harmoniously with the dozen or so that it was able to migrate thus far, giving all these apps a common messaging component.
“There is actually a lot of real work to start getting Java developers into the fold,” he said, citing Oracle’s announcement just last month of its Java SE Cloud Service. “We did a bunch of work to integrate them into the JBoss IDE, to make it easier for people who are using Eclipse-based IDEs to be able to create, and then deploy, projects into OpenShift.”
As developers move more toward a microservices model, Badani added, they’ll need to understand the relationships between the objects they’re creating, even though those relationships will undoubtedly become more complex. “Now we’re taking this promise of the next generation of container-based deployment, and all this excitement around Docker and Kubernetes, to people who have done development and integration of applications in a more traditional way, but really bring the power of this new, cloud-based technology into their world.”
Red Hat, Docker, and Weaveworks are sponsors of The New Stack.