10 Gründe für OpenShift. Ein Vergleich mit Kubernetes
Kubernetes (K8s) oder doch lieber OpenShift? Wer eine große Anzahl von Containern betreiben will und dabei zeitgemäße Anforderungen bzgl. Skalierung und Resilienz stellt, kommt am Betrieb eines Kubernetes-Clusters nicht vorbei.
Allerdings bietet Kubernetes an sich nur die Basis-Funktionalität für den Betrieb von Containern und Nodes. Infrastruktur-Komponenten, die für den Betrieb eines Clusters unentbehrlich sind, sind nicht Bestandteil des originären K8s. Dazu zählen unter anderem:
- Storage (persistenter Datenspeicher)
- Netzwerk (für die Kommunikation mit den Containern & der Container untereinander)
- Authentifzierung und Autorisierung (Benutzer- und Rechteverwaltung)
Kubernetes bietet hierfür zwar Schnittstellen an, über die spezialisierte Komponenten angebunden werden können. Doch das Aufsetzen eines Kubernetes-Clusters auf diesem Level bietet zahllose Fallstricke und ist die Domäne von absoluten Experten: K8s the hard way.
OpenShift Kubernetes Vergleich: 10 Gründe für OpenShift
Beim Aufsetzen eines Kubernetes-Clusters empfiehlt es sich also, auf ein wohl abgestimmtes Gesamtpaket zurückzugreifen! Die Red Hat OpenShift Container Platform ist eine auf Kubernetes aufsetzende K8s-Distribution. Wir zählen 10 Vorteile der Plattform auf, um damit unternehmenstaugliche (enterprise-ready) Kubernetes-Cluster aufzusetzen und zu betreiben – egal ob in der Public oder in der Private Cloud oder im eigenen Rechenzentrum. Also "K8S the easy way"!
Builder Images sind spezielle Images, mit denen neue Images gebaut werden können. Es gibt sie in der Ausprägung Docker-Builds (Images anhand eines Dockerfiles bauen) oder Source-to-Image-Builds (Images komplett aus den Sources einer Anwendung bauen). Letztere werden für viele gängige Programmiersprachen von Red Hat zur Verfügung gestellt.
Die integrierte CI/CD-Lösung OpenShift Pipelines (basierend auf Tekton) ermöglicht es, cloud-native CI/CD-Pipelines zu implementieren, d.h. den kompletten Workflow zu automatisieren: vom Auschecken der Sourcen über Bauen der Artefakte, Code-Analyse, Tests auf verschiedenen Levels bis zum automatischen Deployment der neuen Images.
Zusätzlich gibt es noch OpenShift GitOps (basierend auf ArgoCD), um den Ansatz "everything as code" umsetzen/nutzen zu können.
Beides sind integrierte Produkte in OpenShift - es entstehen also keine Zusatzkosten und Sie profitieren vom Support durch Red Hat.
Die integrierte Image Registry ist der Ort, an dem die selbst gebauten Images gespeichert werden, bevor sie für das Deployment aktualisierter Container verwendet werden. Die Images (sprich: ihre unternehmenskritische Software) verlassen ihren Cluster nicht.
Für extrem kurze Round-Trip-Zeiten beim Entwickeln steht seit OCP4 das Tool odo zur Verfügung. Artefakte, die auf dem Arbeitsgerät eines Entwicklers gebaut wurden, können damit direkt in einen laufenden Container injiziert und dort sofort ausprobiert werden. Über entsprechende Plugins von Red Hat steht diese Funktionalität auch in den IDEs Eclipse und IntelliJ zur Verfügung.
OpenShift Dev Spaces, basierend auf Eclipse Che, bringt die Entwickler noch näher an den Ort des Geschehens (sprich die Pods). Es bietet eine Entwicklungs-Umgebung, die auf ihrem OpenShift Cluster läuft und über den Internet-Browser bedient wird. Durch selbst vorkonfigurierte und versionierte Umgebungs-Beschreibungen wie z.B. Programmiersprachen oder Build-Frameworks, kann der Onboarding-Aufwand für Entwickler auf ein Minimum reduziert werden. Dabei haben Entwickler die freie Wahl, welche web-basierten IDEs sie in ihrer Cloud-Entwicklungsumgebung nutzen wollen: Microsoft Visual Studio Code oder JetBrains IntelliJ IDEA.
Den umgekehrten Weg geht OpenShift Local. Damit ist es möglich, einen kleinen OpenShift-Cluster lokal auf dem Arbeitsrechner eines Entwicklers zu starten und dort die Arbeitsergebnisse auszuprobieren.
Last but not least gibt es eine dedizierte Entwickler-Konsole, die eine alternative Sicht auf die Ressourcen eines OpenShift-Projekts bietet. In grafisch übersichtlicher Weise werden die Komponenten einer Applikation präsentiert und wie sie miteinander in Beziehung stehen. Erst im zweiten Schritt erfolgt der Zugriff auf die Ressourcen, die die einzelnen Komponenten konstituieren.
OpenShift Consulting. Unser Baukasten für Ihren Erfolg.
Plain Kubernetes oder Enterprise-ready OpenShift - noch Fragen?

Lassen Sie uns sprechen!
Andreas Schilz