OpenShift Tutorial

Guide to OpenShift Tutorial
calendar June 16, 2022

Red Hat’s OpenShift Container Platform (OCP) is Red Hat’s enterprise-grade security and support
integrated with Kubernetes.
Kubernetes is a platform for deploying, scaling, and managing — also known as orchestrating — container
workloads on-premise and in the cloud.

In this series of articles, we’ll explore the OpenShift container platform in depth. To help you get
started before moving on to advanced topics
like OpenShift Architecture, OpenShift Mesh, and OpenShift Route, we’ll start with OpenShift basics in
this introduction.

OpenShift and Kubernetes History

Server virtualization helped the software industry abstract underlying computer hardware from workloads.
Since then, containerization has risen in popularity,
further abstracting away underlying system components, and becoming the cornerstone of microservices
architecture.

The microservices architecture design pattern allows services to be developed, maintained, and scaled
individually
while communicating with other microservices via an API. With this application architecture, developers
can create
a microservice without dependencies on other microservices. In this paradigm, the container hosting a
microservice
is terminated and replaced each time a new version of the microservice is released by developers.
This allows the teams that develop microservices to iterate and innovate faster using short-lived
containers.

As microservices architecture grew in popularity, so did the need for container orchestration at scale.
Container orchestration is the problem that platforms like Kubernetes — a
Google project released in June 2014 and eventually handed over to the Cloud Native Computing Foundation
(
CNCF) — and OpenShift help solve.

Machine learning for Kubernetes sizing

LEARN MORE
Visualize Utilization Metrics Set Resource Requests & Limits Set Requests & Limits with Machine Learning Identify mis-sized containers at a glance & automate resizing Get Optimal Node Configuration Recommendations
Kubernetes ✔ ✔
Kubernetes + Densify ✔ ✔ ✔ ✔ ✔

Container Orchestration through Kubernetes and OpenShift

To understand OpenShift, you need to understand Kubernetes and container orchestration.

As microservices-based applications grow, efficient container orchestration becomes crucial.
Orchestration streamlines and automates many
tasks an administrator or developer must otherwise do manually.
These tasks include managing most aspects of resource utilization, including networking and storage,
essentially any computing resource.

Much like how the Linux operating system manages an individual system’s computing resources, it might be
helpful to think about
OpenShift as the operating system for a data center or a collection of resources. It manages the CPUs,
RAM, storage, and
communication between all functions through APIs.

Scratching the surface here, Kubernetes groups workloads into pods at a high level. Pods are a group of
one or more closely
related containers. Pods represent a workload in an OpenShift environment. These pods are placed on
machines (physical or virtual)
in the cluster called worker nodes. At least three other control nodes, collectively called the control
plane, manage a production cluster.

For more on how all the components work, check out our
OpenShift Architecture
article.

Meet us at KubeCon + CloudNativeCon North America. Salt Lake City, Utah | November 13-15, 2024

Schedule a Meeting

Difference between OpenShift and Kubernetes

Because OpenShift is a version of Kubernetes, there are many similarities between the two platforms. For
example, much like the kubectl command,
OpenShift has the oc command that allows interaction with the OpenShift API via the command line.

However, they are not the same. OpenShift takes opinionated stances, provides more structure around
specific topics, and adds value for end users.
Many OpenShift value-adds are developer tools such as the Source-2-Image (S2I) workflow, where a
container image can be built from a source code
repository. Here are several other areas where RedHat OpenShift and Kubernetes differ:

  1. Support – Red Hat’s OpenShift is supported by Red Hat. Developers and administrators have
    trusted images, updates,
    and support professionals to help with the platform. Kubernetes is community-supported.
  2. Security – OpenShift limits running containers to non-root users and has built-in
    role-based access controls (RBAC) defining who can do what with regards to the cluster.
  3. Image Registry – OpenShift has a built-in image registry that integrates with DockerHub and
    RedHat, while Kubernetes relies
    on public images or user-configured private registries for image sources.
  4. Web Interface – Out of the box, OpenShift has a web-based cluster management interface. On
    the Kubernetes side,
    you need to install an additional dashboard.
  5. RedHat CoreOS – OpenShift uses RedHat CoreOS (RHCOS). RHCOS is a lightweight,
    container-optimized, and immutable
    base operating system. Red Hat acquired CoreOS in 2018 and has integrated it into OpenShift, the
    default supported host
    operating system on both the controller and worker nodes.

Meet us at FinOps X Europe. Barcelona, Spain | November 12 -13, 2024.

Schedule a Meeting

Deploying OpenShift

One of the benefits of OpenShift is that it can be deployed in the cloud, on-premise, or with a mixture
of both. It allows for the usage of many resources,
allowing developers and administrators to use the right resources for the right workload.

OpenShift deployment models

Platform Description
OpenShift Dedicated A fully managed instance of OpenShift on AWS or GCP
Azure Red Hat OpenShift OCP on Azure cloud; this is a managed instance of OpenShift on Azure cloud
Red Hat OpenShift on IBM cloud A fully managed OCP service on the IBM cloud
Red Hat OpenShift Container Platform Self-managed install of OCP in the cloud or on-premise

Additionally, Red Hat Code Ready Containers are a way
to deploy a local instance of OpenShift to your laptop or test machine. As noted before, a
production cluster needs at least three control nodes and then some number of worker nodes. Code Ready
Containers(CRC) runs OpenShift on a single machine.

Be aware that Code Ready Containers are not viable for production deployment. Many of the
high-availability and production level features are not available.

A free 30-day trial for cloud & Kubernetes resource control. Experience in your environment or use sample data. See optimization potential in 48 hours. No card required.

Free Trial

Learning More about OpenShift

If you’d like to learn more about RedHat OpenShift, check out these detailed technical articles:

Chapter 1: OpenShift Architecture

Learn the core concepts and components that are the building blocks of OpenShift.

OpenShift Architecture

Chapter 2: OpenShift Route

Routes are the way Openshift exposes services to the public.

OpenShift Route

Chapter 3: OpenShift Service Mesh

A service mesh is a networking design pattern that gives the cluster more control over network functions.

OpenShift Service Mesh

Chapter 4: Openshift Alternatives

Understand the pros and cons of OpenShift alternatives such as AWS ECS for Kubernetes (EKS), Google Kubernetes Engine (GKE), and Azure Kubernetes Service (AKS)

Openshift Alternatives

Chapter 5: Understanding OpenShift Container Storage

Deep-dive into OpenShift container storage to understand its benefits such as environment independence, scalability customizability built-in monitoring, and more

Understanding OpenShift Container Storage

Chapter 6: Using Azure OpenShift

Explore the benefits of using OpenShift on Azure including built-in security, cloud-native integrations, quick startup, flexible instance types, and more.

Using Azure OpenShift

Chapter 7: Rancher vs. Openshift: The Guide

Learn how Rancher and Openshift offer similar features, and how their differences influence when to use each tool. Understand when to use each through recommendations and examples.

Rancher vs. Openshift: The Guide

More chapters to come soon.


Discover the benefits of optimized cloud & container resources. Try Densify for free for 30 days!

Free Trial