By far the biggest change coming in Openshift is the integration of Docker. Basically the cartridge will be replaced by a Docker container. This is great for application developers, who will have far more control over how they build and package their application for the cloud.
Docker was designed for Openshift. Openshift was already utilising Linux containers to run applications side by side in a multi-tenant way. Docker as introduced a well thought out API, and incremental storage strategy for Linux containers, which make them much easer for developers to use.
So it’s a happy marriage between Openshift and Docker. But how will it work under the covers. A recent presentation by Michal at the Openshift meet up in Brisbane shed some light on that. Keep in mind it’s still early days for Openshift version 3, it’s exciting times ahead. Here’s a preview of what it might look like.
– Securely isolate containers
– quota restrictions
– user namespaces
– Makes containers isolated, and resilient to failure
– use SystemD to track, recover and limit processes
– failure of other containers should not effect other containers
– Make containers portable between hosts
– links, port mappings and environment vars
– easy to share amongst gears, and between hosts
– Make containers audible, constrained, and reliably logged
– leverage SystemD patterns for each of these
– Similar to the current, binary deployment model
– Build source code, and deploy it, followed by a Docker commit
Support Cartridges using Centos
– To avoid licensing issues with using RHEL
eg: Ruby cart: https://github.com/openshift/ruby-19-centos
Stateless cartridges first, not sure about stateful cartridge implementation at this stage.
What this space!