Learning Library

← Back to Library

Kubernetes vs OpenShift: Deployment Comparison

Key Points

  • Kubernetes is a pure open‑source container orchestration platform, while OpenShift is Red Hat’s commercial offering built on OKD (Origin Kubernetes Distribution) that bundles Kubernetes with additional open‑source tools.
  • Deploying to vanilla Kubernetes typically requires manually handling code checkout, container image builds, registry selection, and CI/CD configuration, whereas OpenShift provides an opinionated workflow that auto‑creates projects, pipelines, and source‑to‑image builds.
  • Kubernetes gives teams maximal flexibility and is often preferred for legacy or highly customized architectures, while OpenShift’s guided, “turn‑key” DevOps experience speeds up onboarding for teams that want a streamlined process.
  • Both platforms support integrations with runtimes like Docker and service meshes such as Istio, and managed Kubernetes services often include built‑in private registries to simplify the deployment pipeline.

Full Transcript

# Kubernetes vs OpenShift: Deployment Comparison **Source:** [https://www.youtube.com/watch?v=cTPFwXsM2po](https://www.youtube.com/watch?v=cTPFwXsM2po) **Duration:** 00:07:25 ## Summary - Kubernetes is a pure open‑source container orchestration platform, while OpenShift is Red Hat’s commercial offering built on OKD (Origin Kubernetes Distribution) that bundles Kubernetes with additional open‑source tools. - Deploying to vanilla Kubernetes typically requires manually handling code checkout, container image builds, registry selection, and CI/CD configuration, whereas OpenShift provides an opinionated workflow that auto‑creates projects, pipelines, and source‑to‑image builds. - Kubernetes gives teams maximal flexibility and is often preferred for legacy or highly customized architectures, while OpenShift’s guided, “turn‑key” DevOps experience speeds up onboarding for teams that want a streamlined process. - Both platforms support integrations with runtimes like Docker and service meshes such as Istio, and managed Kubernetes services often include built‑in private registries to simplify the deployment pipeline. ## Sections - [00:00:00](https://www.youtube.com/watch?v=cTPFwXsM2po&t=0s) **Kubernetes vs OpenShift Deployment** - The speaker explains that Kubernetes is a bare‑bones open‑source platform while OpenShift (built on OKD) bundles additional tools and services, contrasting the manual steps required to deploy an application on plain Kubernetes with the more streamlined, integrated workflow offered by OpenShift. - [00:03:11](https://www.youtube.com/watch?v=cTPFwXsM2po&t=191s) **OpenShift’s Opinionated Dashboard & Node Management** - The speaker explains how OpenShift offers preset monitoring stacks (EFK/ELK, Grafana, Istio) and automated installers/Ansible playbooks for dashboards and cluster node provisioning, simplifying operations at the cost of reduced flexibility. - [00:06:15](https://www.youtube.com/watch?v=cTPFwXsM2po&t=375s) **OpenShift Ease vs Security Tradeoffs** - OpenShift streamlines Kubernetes setup with built‑in namespace and security policies, but its non‑root container restrictions can cause compatibility issues, so users must balance convenience with understanding core Kubernetes fundamentals. ## Full Transcript
0:00Hi everyone, my name is Sai Vennam 0:02and I'm with the IBM Cloud team. 0:04Today we want to talk about Kubernetes and OpenShift. 0:07Now it's not exactly fair for me to compare those two directly 0:10because Kubernetes is an open source project, 0:12whereas OpenShift on the other hand is an offering by Red Hat, 0:15but underneath the covers, OpenShift is actually powered by something called OKD, 0:19or Origin Kubernetes Distribution, 0:22and this includes Kubernetes as well as a number of other open source projects. 0:27So, we've got Kubernetes, 0:29maybe your favorite container runtime, something like Docker, 0:33and if you want to take advantage of service matching capabilities, 0:35they have integrations with Istio 0:37and a number of other open source projects that we'll talk about. 0:41But let's talk about a few different ways 0:44that kind of highlights the differences between working with your apps 0:47whether they're running strictly Kubernetes 0:49or if you’re using OpenShift. 0:51To start we'll talk about deploying an application. 0:55So, deploying an application to Kubernetes can actually be a little bit time consuming. 1:00So, first let's assume that you have your code up on something like GitHub. 1:04So, you'll pull that code to your local machine, 1:07maybe spin up a container. 1:09Once you've got that container you'll have to figure out 1:11where you want to actually host it. 1:14So, the registry. 1:15So, maybe you want to use something like Docker Hub 1:17or if you want a private registry you'll have to figure that out. 1:20One thing I want to mention if you take advantage of managed Kubernetes. 1:23So, something like Kubernetes from your favorite cloud provider. 1:27Generally, they have options to have a registry, or private registry, directly in that experience. 1:34Next, once it's on the registry, you actually have to figure out your CIDC story. 1:38And this is where things get complicated because there's so many different options 1:42for deploying your applications. 1:45On the OpenShift side of things, on the other hand, 1:47they have an opinionated approach. 1:49So, all you really have to do 1:51is create an application and a project 1:55at which point OpenShift does the heavy lifting on the back end. 1:58So, it's going to create those pipelines, it’s going to create 2:01all of that automation that you need to do things like 2:04development, test and production for your applications. 2:07So, really, it makes it a lot easier 2:10and you can get started on maybe using something like their Jenkins approach 2:14or sourced image capabilities. 2:16But one thing I do want to mention here: 2:18you have a lot more flexibility on the Kubernetes side of things 2:22as you don't have an opinionated, prescribed way of doing this. 2:26So, for power users and teams that are 2:29influenced by legacy architectures 2:32Kubernetes might be more effective. 2:34For teams that really just want to be told how to get everything done 2:38and have a streamlined approach for their DevOps and pipeline approach, 2:42the OpenShift side of things makes things quite easy. 2:47Next let's talk about managing your applications. 2:54So, there are two sides of the puzzle here. 2:57First let's start with how managing your apps looks like in Kubernetes, 3:01so you can take advantage of the default dashboard comes with any Kubernetes distribution, 3:06but unfortunately for most operations teams 3:10that's not quite enough. 3:11So, they'll have to take it a step further and install additional dashboards. 3:16So, maybe they'll use something like an ELK stack, 3:19maybe they want to use Grafana instead, 3:21maybe Istio, 3:24the options are kind of endless. 3:26So essentially, 3:27it's a lot of digging around to figure out the exact solution 3:31that fits their use-case. 3:34On the OpenShift side of things, again there's an opinionated, prescribed way of doing this. 3:39In addition, they have an awesome web console that builds on the Kubernetes API's 3:44and comes with a lot of different capabilities 3:46for SREs and operations teams to really manage their workloads. 3:51In addition, there's prescribed and opinionated ways 3:55to do those dashboards that we talked about. 3:58So, they suggest an EFK stack 4:00and have different ways to integrate capabilities like Istio if you wanted to use it. 4:05So again, by taking advantage of some of their automated installers and Ansible playbooks, 4:10managing applications is a little bit easier. 4:13With the caveat that you give up some of that flexibility 4:17as they do have prescribed approaches. 4:21Next, let's talk about a node configuration, 4:24or day-to-day operations. 4:27So, a cluster is going to be made up of a number of VMs 4:32whether they're virtualized or bare metal, whatever it might be, 4:35the cluster is going to have some VM's within it. 4:38The Kubernetes way of adding additional VM's into that cluster 4:42can be time consuming. 4:44So, setting up self-registration, 4:47or the different cloud automation of setting up or creating new VMs 4:51and bringing them into the cluster. 4:52This is time consuming and requires scripts to be developed. 4:56On the OpenShift side of things, it's a little bit easier. 5:00They have Ansible playbooks and installers 5:02to bring in new VM's into your cluster. 5:04So, it's a fairly straightforward process, 5:07and they even have ways to handle auto-scaling, 5:10or spinning up new VMs in response to load. 5:15The last thing I want to highlight is security. 5:19So, OpenShift and Red Hat 5:22tries to fill the gaps where the open source community maybe hasn't done so. 5:27So, by working with real enterprise customers 5:30they realize that by that creating best security practices from scratch 5:34they are able to tackle some of the problems that some of the customers need 5:38to be able to use Kubernetes. 5:42So, let's talk about a few different things here. 5:44So, in the Kubernetes side of things 5:46chances are you're not working on a project by yourself, 5:49there's a team of people, 5:50each of which have to have different permissions. 5:53So, in the beginning Kubernetes didn't even have something like RBAC 5:56which OpenShift solved, 5:58but now we can take it for granted that they have RBAC. 6:01They can have some other capabilities to do things like IAM, 6:05but at the end of the day, these are all things that you have to build out and are time consuming. 6:11On the OpenShift side of things, 6:13these all come out of the box. 6:15So, when you create that project 6:17you get access to all of these and you really just have to add the users 6:22and it will handle things like Kubernetes name spacing 6:25and creating different security policies, with the best practices, 6:29and you can get all of that from scratch. 6:33However, there's a small trade off. 6:35So, for example, in Kubernetes 6:37you can pretty much take any image out there 6:39in Docker Hub and expect that'll run as expected, 6:43but on the OpenShift side of things 6:45there are restricted permissions where the containers don’t run as root. 6:48So, sometimes images don't run as expected. 6:51So, that's kind of a small caveat for having those best practices 6:55of security instilled from the get-go. 6:58So, it's something that you kind of have to balance. 7:00At the end of the day, OpenShift is not a one-size-fits-all solution. 7:04It's very important to understand the fundamentals of Kubernetes that power OpenShift. 7:09For individuals and small IT teams 7:11OpenShift really streamlines a lot of those very difficult tasks. 7:14If you want to learn more, 7:15check out the description for more links. 7:17If you have any questions, be sure to drop a comment, 7:20and if you like this video be sure to subscribe 7:22and stay tuned for more videos in the future. 7:24Thank you.