Blog

OpenShift 4 – Neue Features

Das OpenShift 4 Release steht vor der Tür. Zeit die neuen Features zu beleuchten. In diesem Artikel gibt es einen Überblick/Ausblick der neuen Features. In weiteren Artikeln behandeln wir dann die jeweiligen Features etwas genauer.

CoreOS

Das wichtigste zuerst: Wie vielleicht alle interessierten mitbekommen haben hat RedHat die Firma CoreOS übernommen. CoreOS hat einige sehr wichtige Produkte mit ins Boot gebracht, die konsequent von RedHat in OpenShift integriert werden. Im speziellen sind das CoreOS als Container Betriebssystem, Tectonic (die Kubernetes Plattform von CoreOS) und Quay als Container Registry. Alle Drei Produkte werden in OpenShift 4.0 integriert und lösen teilweise OpenShift eigene Konstrukte ab, wie z.B. die Registry. Das Operator Framework war schon in OpenShift 3.11 am Start (hierzu auch später ein Artikel).

Installer

OpenShift 4.0 kommt mit einem Installer, der die Installation in ausgesuchten Clouds wesentlich vereinfachen soll. In der Version 4.0 unterstützt der Installer nur AWS (und on-prem) und übernimmt auch die Infrastruktur Provisionierung eines Best Practice OpenShift Clusters. Ab 4.2 werden auch GKE und Azure unterstützt. Ab 4.1 kann man auch OpenShift auf selbstprovisionierten Infrastrukturen installieren (VmWare, AWS und BareMetal). OpenStack Unterstützung kommt ab 4.3.

Masiar IghaniOpenShift 4 – Neue Features
Mehr

Services und Ingress in Kubernetes und OpenShift 2/2

Im letzten Artikel sind wir die Grundlagen von Services durchgegangen. Diese sind bei Kubernetes und OpenShift gleich. Bei Ingress kommen einige Unterschiede zum Vorschein, aber nur in der Implementierung und bei den verwendeten Tools. Es soll aber das Gleiche erreicht werden.

Was ist Ingress?

Wie wir gesehen haben ist es unpraktisch jeden Service einzeln nach aussen bekannt zu machen. Bei Hunderten von Diensten, die im Cluster laufen sollen und auch von aussen erreichbar sein sollen, muss ein anderer Mechanismus her. Mit Ingress ist allgemein eingehender Traffic ins Cluster gemeint. Man braucht einen Ingress Controller, welches den Entrypoint ins Cluster darstellt und einzelne Ingress Api Objekte , welche beschreiben wie mit dem Traffic umzugehen ist, z.B.: SSL Offload Ja/Nein, zu welchem internen Service soll weitergeleitet werden, etc. Das Konzept klingt bestimmt vertraut. Man denke an Apache oder Nginx als Webserver und einzelne Vhosts als Konfiguration.

Masiar IghaniServices und Ingress in Kubernetes und OpenShift 2/2
Mehr

Services und Ingress in Kubernetes und OpenShift 1/2

Dieser Artikel beschreibt die grundsätzlichen Möglichkeiten eine Anwendung / einen Service welches im Cluster läuft nach aussen verfügbar zu machen. „Aussen“ heisst dabei, dass ein Client / Webbrowser den Service aufrufen kann. Dabei betrachten wir die Möglichkeiten die Kubernetes und OpenShift bieten.

Ein Pod im Cluster erhält eine interne IP, welche nur im Cluster gültig ist. In dem Beispiel Bild kann Pod A mit Pod B kommunizieren und umgekehrt, aber von aussen kommt man so ohne weiteres an die Pods nicht dran.

Masiar IghaniServices und Ingress in Kubernetes und OpenShift 1/2
Mehr

Java Heap Settings in Docker Containern

Entwicklern sollte bewusst sein, dass sich Java Prozesse in Docker Containern anders verhalten als wenn sie direkt auf einem Host ausgeführt werden. Wenn wir z.B. eine Anwendung mit java -jar mypplication-fat.jar” starten, dann passt die JVM einige Parameter selbständig an, um die bestmögliche Performance zu gewährleisten.

Man neigt dazu zu denken, dass Container genau wie virtuelle Maschinen sind, wo wir eine Reihe von virtuellen CPUs und virtuellen Speicher vollständig definieren können. Container sind eher ein Isolationsmechanismus, bei denen die Ressourcen (CPU, Speicher, Dateisystem, Netzwerk, etc.) für Prozesse voneinander getrennt sind. Diese Isolation wird durch eine Linux-Kernelfunktion namens cgroups ermöglicht. Einige Anwendungen, die Informationen aus der Ausführungsumgebung benutzen, wurden jedoch vor der Existenz von cgroups implementiert. Tools wie ‚top‘, ‚free‘, ‚ps‘, und selbst die JVM ist nicht dafür optimiert, innerhalb eines Containers einen stark eingeschränkten Linux-Prozess auszuführen. Schauen wir uns das mal an.

Masiar IghaniJava Heap Settings in Docker Containern
Mehr

Tutorial: IT-Basiswissen für DevOps, Big Data, Developer

Nachdem wir im Artikel „Onboarding neuer IT-Mitarbeiter (DevOps, Big Data, Developer)“ die grundlegenden Themen für neue IT-Fachkräfte vorgestellt haben, möchten wir nun anhand eines Tutorials zeigen, wie Wissen zu diesen Themen praktisch angewendet werden kann. Neue IT-Mitarbeiter können die nachfolgenden Tutorialaufgaben Schritt für Schritt durchlaufen und zum Abschluss die Projektdokumentation und die beiden kurzen Präsentationen einem Senior Entwickler vorlegen bzw. präsentieren.

Maurice KnoppTutorial: IT-Basiswissen für DevOps, Big Data, Developer
Mehr

Onboarding neuer IT-Mitarbeiter (DevOps, Big Data, Developer)

Damit Hochschulabsolventen aus MINT Fächern als IT-Fachkräfte möglichst schnell produktiv im Firmenumfeld arbeiten können, sollten diese die gebräuchlichsten Technologien und Werkzeuge kennen und verwenden können. Nachfolgend heben wir die wichtigsten Themen heraus und verweisen auf Ressourcen um diese schnell zu erlernen.

Maurice KnoppOnboarding neuer IT-Mitarbeiter (DevOps, Big Data, Developer)
Mehr

OpenShift Deployment Szenarien

Aus welchen Komponenten besteht eine OpenShift Installation und was sind die gängigen Szenarien für die Verteilung dieser Komponenten in einer hochverfügbaren Umgebung.
OpenShift hat drei wesentliche Komponenten: ein oder mehrere Master, ein oder mehrere Etcd Instanzen und ein oder mehrere Nodes. Das „mehrere“ bezieht sich auf eine Installation in einer produktiven Umgebung wo es um eine hochverfügbare Lösung geht. Der Master ist das „Gehirn“ und übernimmt sämtliche Management Aufgaben des Clusters. Etcd ist ein verteilter key-value store, welches den Cluster Status und Konfiguration persistiert (aktuelle nodes, Secrets, Imagestreams, usw.). Die Nodes verrichten die eigentliche Arbeit. Der Master entscheidet was zu tun ist und welcher Node welchen Container bekommt.

Masiar IghaniOpenShift Deployment Szenarien
Mehr

OpenShift Schnell Installation mit minishift

Die Minishift-Bereitstellung wird auf den Betriebssystemen Windows, MacOS und Linux unterstützt. Minishift verwendet libmachine, um eine virtuelle Maschine bereitzustellen, boot2docker als Betriebssystem und OpenShift Origin, um den Cluster auszuführen. Minishift benötigt einen Hypervisor, um die virtuelle Maschine mit OpenShift auszuführen. Abhängig von Ihrem Host-Betriebssystem haben Sie die Wahl zwischen den folgenden Hypervisoren:

Masiar IghaniOpenShift Schnell Installation mit minishift
Mehr

OpenShift Schnell Installation mit oc tool

Es gibt verschiedene Use Cases, um schnell mal eine OpenShift Plattform zu starten. Sei es für eine erste Evaluation, Demonstration oder auch mal als fortgeschrittener User etwas auszuprobieren. Wenn man im Netz sucht, dann findet man viele verschiedene Arten OpenShift zu installieren:

Masiar IghaniOpenShift Schnell Installation mit oc tool
Mehr