OpenShift — Basic

Always learning
6 min readSep 11, 2024

--

OpenShift is a family of containerization software products developed by Red Hat.

It gives organizations the ability to build, deploy, and scale applications faster both on-premises and in the cloud. It also protects your development infrastructure at scale with enterprise-grade security.

We have mainly 2 options

  1. Self-Hosted OpenShift clusters
  2. Hosted (or) Managed OpenShift clusters

Self-hosted OpenShift is a Red Hat OpenShift platform that you install and manage on your own, either on-premises or in a cloud provider’s infrastructure.

To set up a self-hosted OpenShift cluster, you need to configure the network, DNS, and load balancers, provision virtual machines, and install an operating system (OS).

buymeacoffee ☕ 👈 Click the link

Managed OpenShift is a service that helps you manage your Red Hat OpenShift clusters, including installation, modification, operation, and upgrades.

It also allows you to work with all your organization’s clusters from a single dashboard.

Some managed OpenShift services

  1. Red Hat OpenShift Cluster Manager
  2. Azure Red Hat OpenShift (ARO)
  3. Red Hat OpenShift Service on AWS (ROSA)

Host requirements

Specifically, the following requirements must be met on all hosts:

  • Red Hat OpenShift Container Platform 4.x+
  • Kubernetes versions 1.19 through 1.30

Physical (or) virtual machines

  1. 8 vCPU and 32 GB of RAM is recommended
  2. Running Linux kernel 3.10 (or) later and either an xfs or ext4 filesystem

More 👈👈👈

Openshift need to be lot of resources by default installation of openshift High Availability (HA)

High availability (HA) in OpenShift is a feature that ensures applications remain available even when there are underlying failures. HA systems are designed to tolerate service interruptions and handle problems while a system is running.

  1. 3 Control Plane (32 vCPU and 32 GB)
  2. 3, 4, 6 Worker Nodes

Single Node OpenShift (SNO) is a configuration of OpenShift that runs on a single server, providing control and worker node capabilities.

Single-node cluster in Red Hat® OpenShift® consists of a single control plane node that is configured to run workloads.

Benefits of SNO

  1. Cost-Effective Deployment
  2. Simplified Management
  3. Quick Rollout of Applications

Red Hat CodeReady Containers (CRC) provides a minimal, preconfigured OpenShift 4 cluster on a laptop or desktop machine for development and testing purposes. CRC is delivered as a platform inside of the VM.

CRC is a tool to help you run containers. It manages a local OpenShift 4.x cluster, Microshift (or) a Podman VM optimized for testing and development purposes.

MicroShift is a lightweight Kubernetes container orchestration solution built from the edge capabilities of Red Hat® OpenShift® and based on the open source community’s.

Openshift = Kubernetes + Advanced Feature

| — — CI/CD, Networking CRI-O, Overlay networking, SPN etc…,

Observability

GitOps

User Management

Operators → OLM (Operator Lifecycle Manager)

User Interface

A DeploymentConfig in OpenShift Container Platform is a template for running applications that includes the following features:

  • Custom strategies: Transition from one version to another
  • Hooks: Run custom code at various points in the deployment lifecycle
  • Triggers: Automatically deploy in response to events
  • Versioning: Support rollbacks
  • Scaling: Perform manual or automatic scaling

Operator Lifecycle Manager (OLM) helps users install, update, and manage the lifecycle of all Operators and their associated services running across their clusters.

Red Hat OpenShift Observability lets you innovate without interruption. With real-time visibility, monitoring, and analysis of various system metrics, logs, traces, and events to help you quickly diagnose and troubleshoot issues before they impact your applications (or) end users.

Read more Observability 👈

An identity provider (IdP) in OpenShift Container Platform is a system that stores and manages user identities and authenticates users to access applications.

You can specify an IdP in OpenShift Container Platform by creating a custom resource (CR) and adding it to the cluster

The OpenShift API Server Operator installs and maintains the OpenShift API server on a cluster.

The OpenShift Controller Manager Operator manages and updates the Kubernetes API server.

Read more Operator 👈

The OpenShift Controller Manager (OCM) is comprised of multiple controllers, many of which correspond to a top-level OpenShift API object, watching for changes and acting accordingly.

Different ways to installed the controller

  1. Manifests
  2. Helm Charts
  3. Operators → Robust

Robust Kubernetes is a container orchestration platform that provides a stable foundation for managing containerized applications at scale.

Oc” is the command-line interface (CLI) for OpenShift, an open-source container orchestration platform.

It allows you to interact with your OpenShift cluster from the command line.

  • Create and manage applications
  • Manage OpenShift Container Platform projects
  • Configure resources
  • Monitor your cluster
  • Interact with your OpenShift cluster
  • Simplify administrative tasks

Routes and Ingress are both components that help regulate traffic flow into clusters, but they are different in that Routes are only available in OpenShift, while Ingress is a native K8s API object.

Types of OpenShift Routes

There are two types of OpenShift routes:

  1. HTTP routes (unsecured routes)
  2. HTTPS routes (secured routes)

Unsecured Routes in OpenShift use plaintext HTTP communication.

Secured Routes are secured with TLS by providing a key and certificate. It’s offer various TLS terminations to serve certificates to the client. A TLS termination is the process of decrypting encrypted traffic.

Secured routes can use one of three types of secure TLS termination. The type of termination is determined by where the encryption is being terminated.
The three termination types are:

  1. Edge Termination → Terminates encryption at the router.
  2. Passthrough Termination → Termination is passed from the router straight to the pod.
  3. Re-encryption Termination → Is like Edge Termination, but it adds encapsulation.

GitOps is a set of best-practices where the entire code delivery process is controlled via Git, including infrastructure and application definition as code and automation to complete updates and rollbacks.

GitOps is an operator that provides a workflow that integrates git repositories, continuous integration/continuous delivery (CI/CD) tools, and Kubernetes to realize faster, more secure, scalable software development, without compromising quality.

Tekton is an open-source framework that helps developers build, test, and deploy applications across multiple cloud providers (or) on-premises systems. It’s designed to create continuous integration and delivery (CI/CD) systems.

Install Red Hat OpenShift Local on your laptop

Download the crc tool from the Red Hat Console. If you don't have a Red Hat account, you can create one for free with the Red Hat Developer program.

After you log in, download both the installation package and the pull secret from the Red Hat OpenShift Local screen.

OpenShift local link

Download finishes, decompress the crc tool

Install the crc-windows-amd64

Automatically enabled

  1. Hyper-V installed
  2. Hyper-V administrator group add user
  3. Hyper-V service enabled
  4. Hyper-V virtual switch

Create the ~/bin directory if it does not exist and copy the crc executable to it

Add the ~/bin directory to your $PATH

Verify that the crc executable is in use by checking its version

crc version
crc setup
crc start

Minimum RAM take 11.27GB required

Thank you 🙏 for taking the time to read our blog.

--

--

Always learning

கற்றுக் கொள்ளும் மாணவன்...