What is OpenShift?
As noted above, OpenShift is one example of a Kubernetes distribution. OpenShift, which is developed by Red Hat in conjunction with the open source community, combines Kubernetes with a variety of other tools to provide a complete platform for deploying and managing containerized apps.
The main components of modern OpenShift include:
- Kubernetes, for orchestrating containers.
- Docker, to provide the execution engine for containers.
- Open vSwitch, an open source virtual switching tool that provides software-defined networking for OpenShift environments.
- A Linux distribution (either Red Hat Enterprise Linux [RHEL] or Atomic Host, a version of RHEL) for hosting all of the above.
Earlier versions of OpenShift did not include all of these components. In fact, prior to the release of OpenShift version 3.0 (or OpenShift v3 for short) in 2015, OpenShift used a custom container and orchestration engine instead of relying on Docker and Kubernetes. But as the latter platforms became the go-to solutions for building containerized application environments, OpenShift was reengineered to place them at its core. It was at that point that OpenShift became a true Kubernetes distribution.
Key Features of OpenShift
Since OpenShift includes Kubernetes, it provides all of the same features of Kubernetes. However, the extra tools that are built into OpenShift offer additional functionality, including:
- A built-in framework for executing containers. "Plain" Kubernetes (meaning the pure open source version) is compatible with several container execution frameworks, but it does not come with any built in.
- Integrated support for building overlay networks with Open vSwitch. This is another feature that can be implemented in several ways using plain Kubernetes, but it is not built into Kubernetes by default.
- Linux-based operating systems for provisioning the infrastructure that hosts OpenShift.
OpenShift is available in several editions, each of which targets a different use case:
- OpenShift Container Platform: A commercial edition of OpenShift designed for organizations that want to build and manage an OpenShift environment on their own infrastructure.
- OpenShift Dedicated: A fully managed, commercial OpenShift implementation. OpenShift Dedicated runs on a company's own infrastructure, but Red Hat does the setup and management work, providing a hands-off experience from the user's perspective.
- OpenShift Online: A commercial edition of OpenShift delivered using a Software-as-a-Service model. OpenShift Online runs on infrastructure owned by Red Hat, allowing teams to spin up environments very quickly, without having to acquire their own host infrastructure.
- Origin Community Distribution, or OKD: A community-based project that is free for anyone to use. OKD provides the basis for Red Hat's commercial editions of OpenShift. (In this respect, OKD is to commercial OpenShift what Fedora is to Red Hat Enterprise Linux.)