OpenShift — Basic
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
- Self-Hosted OpenShift clusters
- 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
- Red Hat OpenShift Cluster Manager
- Azure Red Hat OpenShift (ARO)
- 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
- 8 vCPU and 32 GB of RAM is recommended
- Running Linux kernel 3.10 (or) later and either an
xfs
orext4
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.
- 3 Control Plane (32 vCPU and 32 GB)
- 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
- Cost-Effective Deployment
- Simplified Management
- 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
- Manifests
- Helm Charts
- 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:
- HTTP routes (unsecured routes)
- 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:
- Edge Termination → Terminates encryption at the router.
- Passthrough Termination → Termination is passed from the router straight to the pod.
- 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.
Download finishes, decompress the crc
tool
Install the crc-windows-amd64
Automatically enabled
- Hyper-V installed
- Hyper-V administrator group add user
- Hyper-V service enabled
- 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.