âĸ API LB: Active/Passive or Active/Active configuration
âĸ Ingress LB: HAProxy with Router pods distribution
âĸ MCS LB: Machine Config Server for node bootstrapping
OpenShift Container Platform 4 is a comprehensive enterprise Kubernetes platform built on Kubernetes with Red Hat's enterprise enhancements. It provides a complete application platform for developing, deploying, and managing containerized applications at scale.
A container-optimized operating system designed specifically for OpenShift 4.
Control plane components run as static pods on all master nodes, managed by kubelet. API servers are load-balanced, etcd uses Raft consensus.
A distributed, reliable key-value store that persistently stores all Kubernetes cluster data.
Manages OS and config updates for RHCOS nodes, ensuring consistency and enabling automated updates.
MCPs group nodes based on their role:
Worker nodes communicate with the control plane via the API server, reporting status and receiving instructions.
An implementation of the Kubernetes Container Runtime Interface (CRI) enabling OCI-compatible runtimes.
A method of packaging, deploying, and managing a Kubernetes application. It encodes operational knowledge into software, automating complex tasks like deployment, scaling, backup, and updates.
Manages Operators throughout their lifecycle: installation, updates, and removal.
Framework for building Operators in multiple languages:
Provides tools to scaffold, test, and package Operators for distribution through OLM.
The default CNI plugin in OpenShift 4.12+, replacing OpenShift SDN. Uses Open Virtual Network (OVN) to provide a robust, scalable software-defined networking solution.
Routes provide a simpler, more powerful way to expose services externally. Predating Kubernetes Ingress, Routes offer enhanced features and tighter OpenShift integration.
Uses HAProxy as the default ingress controller, deployed as a DaemonSet on infrastructure nodes.
TLS terminated at router, plain HTTP to pod. Default configuration.
DefaultEncrypted traffic passed directly to pod without decryption at router.
SecureTLS terminated at router, then re-encrypted to pod. Best practice.
Best PracticeUse when: Router manages certificates, pod doesn't need TLS, performance is priority
Use when: Pod needs direct TLS termination, end-to-end encryption required, router shouldn't decrypt
Use when: Maximum security required, defense in depth, separate certificates for router and pod
The standard for exposing block and file storage to containerized workloads. OpenShift uses CSI drivers for all storage operations.
Manages storage classes and CSI drivers, setting up default storage based on cloud provider.
Fully automated installation where the installer provisions all infrastructure components.
Full control over infrastructure provisioning. You create VMs, networks, and load balancers.
Manages cluster updates by coordinating component updates, ensuring consistency, and maintaining cluster stability.
Provides update recommendations via hosted service maintaining graph of valid update paths.
Security Context Constraints control the actions pods can perform and resources they can access. They define conditions a pod must run with to be accepted.
Denies privileged access, most restrictive. Default for all pods.
DefaultAligns with Kubernetes Pod Security Standards. Updated security defaults.
NewAllows running as any UID. Legacy applications requiring specific users.
LegacyFull access, bypasses all checks. Admin-only infrastructure components.
AdminPods are validated against SCCs in priority order. The first matching SCC is used.
OpenShift includes built-in OAuth server supporting multiple identity providers:
Kubernetes RBAC with OpenShift-specific roles for fine-grained access control.
Forward logs to external systems:
Istio-based service mesh with enhanced observability and traffic management.
Run VMs alongside containers with unified management and networking.
Software-defined storage with enhanced data services and disaster recovery.
ArgoCD integration for declarative continuous delivery and configuration management.
Complete application platform for developing, deploying, and managing containerized applications at scale with enterprise-grade security and automation.