OpenShift 3 is all about Docker containers.  More importantly, it is about management orchestration of containerized applications.  Red Hat IT was a big consumer of OpenShift 2 and likewise, we are moving as many applications as possible to containers.  OpenShift 3 is a big part of this strategy.  On a personal note, OpenShift 3 is an incredible product.  I even have it installed at home for various services :)

Grant Shipley gave his talk on "making applications great again" using OpenShift Online with the goal being how to deploy applications on OpenShift 3.

The basic premise is that we are living in one of the biggest disruption events in human history.  75% of the S&P 500 companies will be replaced in the next 11 years.  Everything is changing.  3 of the top 5 companies now are technology companies. One of the magic bullets for this brave new world are containers.  While they are great, they are a tool... nothing more.  Containers lack orchestration and rolling your own may work, but it ultimately leads to container sprawl and other management headaches.

OpenShift is not about creating containers for you (although with S2I, it can), rather is about orchestration and managing those containers to build your application.  It was designed to bring developers and operations together.  OpenShift is based on Kubernetes, Docker and many other technologies. Think of Kubernetes as something like the Linux kernel and OpenShift is everything else that goes into a Linux distribution, with a REST API wrapped around it as the bow.

"OpenShift is probably the easiest way to install and play with Kubernetes" - Grant Shipley

Grant spent a lot of time doing a real-time demo, which cannot really be represented in a blog.  I encourage you to view the various demos on YouTube.

OpenShift 3 can clone repos directly from GitHub or other git repos and use the Source2Image process to automatically build Docker images, pushing them to the OpenShift registry.  No Docker experience necessary, which is really cool.  S2I is a great way to start with containerizing your application.  Moreover, OpenShift can rebuild and redeploy your containerized application whenever there is an update pushed to the git repo (via a webhook).  Your container images will also rebuild if there are changes to the base or layered images, such as Red Hat pushing security errata.

Scaling up your application can occur automatically or at the click of the button in the GUI or via the CLI.  Of course, you get a load balancer automatically.  If you have multiple containers in your pod, they can be rolled such that you will not incur an outage when your images are rebuilt.  Related to this, if one of your containers or pods dies for some reason (hardware failures, etc), OpenShift will spin up new instances.

In short, OpenShift 3 gives IT departments a solution to container sprawl by offering a complete container management framework, supporting complete life-cycle management.  If you have not played around with it, you can try OpenShift Online for free at https://www.openshift.com/.  If you would like to try OpenShift Enterprise 3 on your own machine, see my post about the Red Hat Container Development Kit.

About the Author

Brian J. Atkisson is a Senior Principal Systems Engineer and the technical lead on the Red Hat IT Identity and Access Management team.  He has 18 years of experience as a Systems Administrator and Systems Engineer, focusing on identity management, virtualization, systems integration, and automation solutions. He is a Red Hat Certified Architect and Engineer, in addition to his academic background in Biochemistry, Microbiology and Philosophy.

Last updated: April 6, 2018