Definicja #
Red Hat OpenShift to enterprise'owa platforma konteneryzacyjna zbudowana na fundamencie Kubernetes, rozwijana przez Red Hat (część IBM od 2019). OpenShift dostarcza pełny stos narzędzi do budowania, wdrażania i zarządzania aplikacjami kontenerowymi — zarówno on-premise, jak i w chmurze.
Co OpenShift dodaje do Kubernetes:
- OpenShift Container Registry (OCR) — wbudowany rejestr obrazów Docker zintegrowany z pipeline'ami build
- BuildConfigs i Source-to-Image (S2I) — automatyczne budowanie obrazów Docker z kodu źródłowego bez Dockerfile'a; wsparcie dla Java, Node.js, Python, PHP, Ruby
- DeploymentConfigs / Deployments — zaawansowane strategie wdrożeń (Rolling, Recreate, Blue-Green, A/B Testing)
- Routes — odpowiednik Kubernetes Ingress: ekspozycja serwisów na zewnątrz klastra z TLS termination
- OperatorHub — katalog operatorów Kubernetes do instalacji oprogramowania (bazy danych, monitorowanie, middleware)
- OpenShift Pipelines (Tekton) — cloud-native CI/CD pipeline'y jako zasoby Kubernetes (CRD)
- OpenShift GitOps (ArgoCD) — GitOps do synchronizacji stanu klastra z repozytorium Git
- Security by default — Security Context Constraints (SCC): kontenery nie działają domyślnie jako root; RBAC, Network Policies
Warianty OpenShift: OCP (on-premise), ROSA (AWS), ARO (Azure), OpenShift Dedicated (cloud managed).
Zastosowania #
OpenShift stosuje się do:
- Enterprise'owych platform kontenerowych z wymogami bezpieczeństwa i compliance — banki, ubezpieczyciele, sektor publiczny wybierają OpenShift ze względu na wsparcie Red Hat i certyfikacje bezpieczeństwa
- Wewnętrznych platform deweloperskich (Internal Developer Platform) — samoobsługowe środowiska dla deweloperów z gotowym CI/CD, registry i monitoringiem
- Migracji legacy aplikacji do kontenerów — S2I umożliwia konteneryzację bez pisania Dockerfile'ów
- Środowisk hybrydowych i multi-cloud — OpenShift działa spójnie on-premise (OCP), na AWS (ROSA) i Azure (ARO)
- Zarządzania wieloma klastrami — Red Hat Advanced Cluster Management (ACM) do centralnego zarządzania flotą klastrów OpenShift/Kubernetes
Ścieżka nauki #
OpenShift wymaga znajomości Kubernetes i konteneryzacji. Zacznij od K8s, potem poznaj co OpenShift dodaje.
Zacznij od:
- Fundamenty Docker — budowanie obrazów, uruchamianie kontenerów, Dockerfile
- Podstawy Kubernetes — Pods, Services, Deployments, ConfigMaps, Secrets;
kubectlCLI - OpenShift CLI:
oc(odpowiednik kubectl z dodatkowymi poleceniami);oc login,oc project,oc new-app - Darmowe środowisko: OpenShift Local (dawniej CodeReady Containers) — lokalny klaster OpenShift na laptopie; Developer Sandbox na developers.redhat.com
Następnie poznaj:
- S2I (Source-to-Image) — wdrożenie aplikacji z kodu:
oc new-app python~https://github.com/repo.git - Routes — ekspozycja serwisu z TLS:
oc expose svc/moj-serwis - OpenShift Pipelines (Tekton) — definiowanie pipeline'ów CI/CD jako YAML CRD
- Security — Security Context Constraints (SCC), runAsNonRoot, NetworkPolicy
- Certyfikacje Red Hat: EX180 (Containers), EX280 (OpenShift Administration) — uznane certyfikaty na rynku
FAQ #
- Czym różni się OpenShift od Kubernetes?
- Kubernetes to open-source'owy system orkiestracji kontenerów. OpenShift to platforma enterprise zbudowana na K8s przez Red Hat, która dodaje wbudowane CI/CD (Pipelines/Tekton), rejestr obrazów, zaostrzony model bezpieczeństwa (SCC, brak root), konsolę webową i komercyjne wsparcie. OpenShift jest często opisywany jako 'Kubernetes gotowy do produkcji'
- Czy OpenShift jest darmowy?
- OpenShift Container Platform (OCP) jest produktem komercyjnym Red Hat — wymaga subskrypcji. Darmowe są: OpenShift Local (lokalne środowisko deweloperskie), Developer Sandbox (klaster w chmurze, 30 dni), OKD (open-source dystrybucja bazowa OpenShift). Red Hat oferuje też ROSA (na AWS) i ARO (na Azure) jako zarządzane serwisy.
- Co to jest Source-to-Image (S2I)?
- S2I (Source-to-Image) to technologia OpenShift automatycznie budująca gotowe obrazy Docker bezpośrednio z kodu źródłowego bez Dockerfile'a. Wystarczy wskazać repozytorium Git i wybrać builder image (Java, Node.js, Python). S2I pobiera kod, buduje aplikację i tworzy gotowy obraz.
- Ile zarabia OpenShift/Kubernetes Administrator?
- Kubernetes/OpenShift Administrator lub DevOps Engineer w Polsce zarabia od 14 000 do 28 000 zł brutto. Certyfikacja Red Hat (EX280 OpenShift) lub CKAD/CKA dla Kubernetes znacząco wspiera wynagrodzenie. Stawki kontraktowe dla doświadczonych wynoszą 180-280 zł/h.