Table of Contents
OpenShift in One Sentence
OpenShift is a Kubernetes-based container platform that provides an integrated, opinionated environment for building, deploying, and running applications in a consistent way across on‑premises and cloud infrastructure.
Core Idea: A Platform, Not Just a Cluster
OpenShift is often described as a “Kubernetes platform” or “enterprise Kubernetes”. That means:
- It includes Kubernetes, but adds:
- Built‑in tools for developers (builds, web console, CI/CD integrations)
- Built‑in tools for operators (cluster install, upgrade, monitoring, logging)
- Security, governance, and multi‑tenancy features enabled by default
- Opinionated defaults that reduce the number of decisions you need to make
You can think of it as:
- Kubernetes = engine
- OpenShift = complete car (engine + body + dashboard + controls + safety features)
Key Characteristics of OpenShift
Kubernetes at Its Core
- Uses Kubernetes APIs and concepts (Pods, Services, Deployments, etc.).
- Adds OpenShift‑specific resources and behaviors on top.
- Compatible with most cloud‑native tooling that talks to Kubernetes.
You do not need to be a Kubernetes expert to start with OpenShift, but understanding that OpenShift builds on Kubernetes helps explain many of its behaviors and advantages.
Opinionated and Integrated
OpenShift aims to be a “batteries included” platform:
- Provides default components for:
- Ingress and routing
- Container image registry
- Monitoring and alerting
- Logging
- Identity and access control
- Integrates these components so they work together out of the box, with less manual assembly.
This opinionated approach:
- Reduces integration work for teams.
- Encourages consistent patterns for deployment and operations.
- Helps new users get productive faster, compared to stitching together many separate tools.
Enterprise-Grade and Production-Focused
OpenShift is designed for long‑running, production environments:
- Supports high availability at cluster and application level.
- Provides controlled upgrade and lifecycle management.
- Integrates role-based access control, security policies, and multi‑tenant isolation.
- Offers commercial support and tested combinations of components.
For organizations, this means OpenShift can serve as a standardized platform shared by many teams and applications.
Main Components at a High Level
Without going into deep architectural detail, OpenShift as a platform typically includes:
- A Kubernetes control plane and worker nodes where your containers run.
- A web console for visual management and development workflows.
- A CLI tool (
oc) to interact with the cluster from a terminal. - A built‑in container registry to store and pull application images.
- Networking capabilities to connect applications and expose them outside the cluster.
- Storage integration to provide persistent data volumes to applications.
- Operators that automate the management of platform services and applications.
Each of these areas will be explored in later chapters.
Who Uses OpenShift and For What
OpenShift is used by:
- Developers to:
- Build, deploy, and iterate on applications quickly.
- Use tools like Source‑to‑Image (S2I) or pipelines without managing the underlying infrastructure.
- Platform and operations teams to:
- Provide a shared application platform to many teams.
- Standardize deployment, scaling, monitoring, and security policies.
- Organizations to:
- Run microservices, APIs, web applications, data platforms, and batch workloads.
- Modernize legacy applications into cloud‑native architectures.
- Run consistent environments across on‑premises data centers and public clouds.
OpenShift as a Cloud-Native Application Platform
At its core, OpenShift is about running containerized, cloud‑native applications in a reliable, repeatable way:
- It uses containers as the unit of packaging and deployment.
- It orchestrates these containers with Kubernetes.
- It wraps this with processes and tools that support continuous delivery, scaling, resilience, and security.
Rather than only giving you raw cluster primitives, OpenShift presents itself as a platform that covers the typical lifecycle of an application:
- Build (turn code into container images)
- Deploy (run those images as applications)
- Operate (scale, monitor, secure, and upgrade them)
Variants of OpenShift
OpenShift is available in several forms, all based on the same core platform:
- Self‑managed OpenShift:
- Installed and operated by your own team on your chosen infrastructure (physical, virtual, or cloud).
- Managed OpenShift services (by cloud providers or Red Hat):
- The control plane and much of the platform are run for you.
- You focus more on applications than on cluster operations.
These deployment models let organizations choose how much they want to own and operate versus consume as a service, without changing the core platform concepts.
How OpenShift Fits into the Bigger Picture
Within a modern IT environment, OpenShift typically sits:
- Above infrastructure (bare metal, VMs, or cloud IaaS).
- Below applications and developer workflows (CI/CD, GitOps, development tools).
- Alongside other cloud‑native ecosystem tools (logging, monitoring, service mesh, etc.).
It acts as the common foundation that:
- Provides a consistent runtime across diverse infrastructure.
- Offers standard APIs and workflows for teams building and running software.
- Serves as a central platform around which additional services (data, AI/ML, HPC, serverless) can be built.
This course will explore each of these aspects in more detail, but for now you can remember:
OpenShift = a Kubernetes-based, integrated, opinionated platform for building and running containerized applications in production.