»Ich nutze HERO schon seit Jahren erfolgreich in meinem Betrieb.«
Jetzt testen
Bild: Hero Software Blog
HOME  /  Blog  /  Technik  /  Kubernetes bei HERO

Inhaltsverzeichnis

Tech-Insights: So nutzen wir Kubernetes für unsere Handwerkersoftware

Philipp Kloth  | 11.06.2021
Bild: Kubernetes bei HERO
Hier erfährst du, wie wir Kubernetes bei HERO nutzen. | © 2017 REDPIXEL.PL/Shutterstock.com

Kubernetes - hat das etwas mit Handwerk zu tun? Eigentlich nicht, bei HERO jedoch schon! Was auf der Baustelle vielleicht nur ein Klick in der HERO App ist, um ein PDF zu erzeugen, kann für allerhöchste Auslastung unserer Software-Infrastruktur sorgen, wenn es um große Datenmengen aus den unterschiedlichsten Quellen geht.

Damit unsere Handwerkersoftware mit all ihren Features dennoch zu jeder Tageszeit überall erreichbar ist, nicht abstürzt und gleichzeitig regelmäßige Backups und beste Datensicherheit bietet, setzen wir das sogenannte Kubernetes ein, das wir interessierten Lesern in diesem Artikel einmal näherbringen möchten. Tatsächlich ist Kubernetes als reines Schlagwort weit über die Grenzen der IT-Branche hinaus bekannt, jedoch wissen nur die wenigsten mit dem Begriff auch wirklich etwas anzufangen - das möchten wir ändern!

Zusätzlich wird es künftig eine ganze Reihe von Artikeln zu den technischen Aspekten der HERO Handwerkersoftware geben. Zum einen um die harte Arbeit unserer Programmierer zu würdigen, zum anderen wollen wir zeigen, dass hinter all den technischen Schlagwörtern rund um Softwares und Datenbanken keine mythischen Zauberformeln, sondern ganz pragmatische Lösungen stehen.


Zusammenfassung: Was ist Kubernetes?

Für unsere Kunden präsentiert sich die HERO Software als eine in sich geschlossene Software mit nur einem Login, die viele praktische Features für Handwerker in sich vereint. Das ist selbstverständlich auch der gewünschte Effekt, aber um das zu ermöglichen, müssen im Hintergrund eine Vielzahl einzelner Applikationen auf unterschiedlichen Servern miteinander in Einklang gebracht werden. Als weitere Dimension kommt hinzu, dass, falls mal eine Anwendung ausfallen sollte, ein passender Ersatz schnell an ihre Stelle tritt.

Diese Herausforderungen lassen sich nur mit einer Lösung wie Kubernetes bewältigen, denn ein Mensch wäre bei der Vielzahl unserer Nutzer in Verbindung mit den HERO White Label Angeboten schlichtweg nicht in der Lage dazu, immer sofort auf alle Veränderungen zu reagieren. Erstellt zum Beispiel ein Nutzer auf der Baustelle eine besonders große Rechnung aus den synchronisierten Stammdaten eines Großhändlers, erfordert das neben dem Zusammenspiel verschiedenster Anwendungen auch überdurchschnittlich viel Rechenkapazität, die kurzfristig bereitgestellt werden muss. Würde das nicht passieren, hätten alle übrigen Nutzer mit langen Ladezeiten oder gar mit Abstürzen zu kämpfen - das wollen wir bei HERO natürlich auf jeden Fall verhindern.

In Fachkreisen spricht man bei solchen Anwendungsfällen gerne von „Orchestrierung“, weil Kubernetes wie ein Dirigent die einzelnen Instrumente des Orchesters überwachen und harmonisch zusammenspielen lassen muss. Theoretisch benötigt man dafür nicht unbedingt Kubernetes und das wird im IT-Sektor auch als häufige Kritik angeführt, aber wenn es um Verlässlichkeit und Erreichbarkeit komplexer Lösungen geht, die direkten Einfluss auf die Nutzererfahrung nehmen, dann ist Kubernetes bzw. eine adäquate Alternative unumgänglich.

Bitte akzeptieren Sie die Marketing Cookies, um diesen Inhalt zu sehen.

Quelle: YouTube / Fireship

Die Vorteile für unsere Kunden

Die Einrichtung von Kubernetes ist durchaus mit einigem Aufwand verbunden, der immer gerechtfertigt sein muss, da ansonsten unnötig hohe Kosten entstehen, die letztendlich die Kunden eines Unternehmens zu tragen haben. In Summe macht sich Kubernetes jedoch jeden Tag bei HERO bezahlt, weil wir so eine hochkomplexe und dennoch leicht zu handhabende Software zu günstigen Preisen anbieten können.

AnwendungsbereicheVorteile mit Kubernetes
KomplexitätMit Kubernetes können wir viele verschiedene Features in nur einer Software vereinen.
SchnittstellenÜber Schnittstellen zu bestehenden Lösungen vereinen wir die Vorteile mehrerer Softwares in nur einer Lösung.
ErreichbarkeitDurch Kubernetes ist eine überdurchschnittliche gute Erreichbarkeit und Performance in HERO gewährleistet - unabhängig von der abgefragten Rechenleistung.
GeschwindigkeitUnsere Infrastruktur mit einer Kombination aus Docker und Kubernetes ermöglicht sehr kurze Ladezeit bei geringer Server-Auslastung (anders als z. B. bei virtuellen Maschinen).
BackupsIm Ernstfall stehen durch Kubernetes immer Daten-Backups zur Verfügung, die nur wenige Stunden alt sind.
Kosten für UserIn Summe sparen wir viel Arbeitszeit durch den Einsatz von Kubernetes und können diesen Kosten-Vorteil an unsere Kunden weitergeben.

Gerne gefragt: Docker oder Kubernetes nutzen?

An dieser Stelle möchten wir gern noch einige Hinweise an alle weitergeben, die sich gerade erst in die Thematik einfinden. Basierend auf einigen Missverständnissen taucht immer wieder die Frage auf, ob man lieber Docker oder Kubernetes nutzen sollte. Um überhaupt zu einer Antwort zu gelangen, müssen der Anwendungsfall und Docker als solches zunächst präzisiert werden.

Bild: Kubernetes vs. Docker
Docker oder Kubernetes? Agile Container Orchestrierung. © 2017 REDPIXEL.PL/Shutterstock.com

Docker Container als Basis

Ohne zu technisch zu werden, lässt sich knapp sagen, dass beispielsweise alle einzelnen Teil-Awendungen, die später in der HERO Software zu einem großen Ganzen werden, in sogenannten Docker Containern unabhängig voneinander arbeiten. Diese Aufteilung ist ein gängiger Standard und bietet viele Vorteile (Geschwindigkeit, einfache Verwaltung etc.), durch die Docker so bekannt geworden ist. Erst wenn der Umgang mit diesen Containern im Alltag zu komplex wird, schalten Unternehmen ein Orchestrierungs-Tool wie Kubernetes hinzu.

Die Docker Container sind in der Regel allerdings genau das, womit Docker an sich identifiziert wird, obgleich hinter dem Namen ein ganzes Unternehmen, eine Open Source Community, und nicht zuletzt mit weiteren Tools wie Docker Swarm auch eine Alternative zu Kubernetes stecken.

Kubernetes steuert das Zusammenspiel der Container

Werden also Docker und Kubernetes direkt gegenübergestellt, dann wurde entweder das Verhältnis zwischen Docker Containern und dem Orchestrierungs-Tool Kubernetes falsch verstanden oder unterschlagen, dass es eigentlich um Docker Swarm vs. Kubernetes gehen soll.

Wir nutzen Kubernetes anstatt Docker Swarm

Kubernetes ist nicht das einzige Werkzeug seiner Art und lange Zeit war Docker Swarm eine valide Alternative. Es zeichnet sich jedoch ab, dass letzteres nicht mehr zukunftsfähig weiterentwickelt wird, weshalb wir bei HERO Software rechtzeitig von Docker Swarm auf Kubernetes umgestiegen sind. Im Bereich der Software-Infrastruktur muss man trotz rasanter Technologie-Fortschritte immer langfristig planen, weshalb eine fortdauernde Nutzung von Docker Swarm irgendwann einen teuren Umstieg auf andere Lösungen nach sich ziehen würde. Der Wechsel muss jedoch nicht in allen Unternehmen von heute auf morgen passieren und es muss auch nicht unbedingt Kubernetes sein. Je nach Anwendungsfall könnten auch folgende Tools besser geeignet sein:

Alternativen zu KubernetesVorteileNachteile
Managed KubernetesAlle Vorteile von Kubernetes, aber Verwaltung durch DienstleisterKann sehr teuer und wenig effizient sein
Docker SwarmEinfacher zu handhaben als KubernetesWeniger Detail-Features als Kubernetes
Docker ComposeGute Lösung für einfache Container LösungenKein echtes Tool zu Orchestrierung
NomadBei hoher Skalierungs-Rate ist Nomad einfacher zu handhaben als KubernetesIn Summe weniger Features als Kubernetes
OpenStackNützliche Features zur Verwaltung von CloudsKeine Nachteile, wenn OpenStack zusammen mit Kubernetes eingesetzt wird
Apache MesosVorteilhaft für einen Mix aus Container und Non-ContainerKubernetes ist besser für Container-Lösungen geeignet
Mesos DC/OSEinfacher zu bedienen als KubernetesNicht alle Features sind kostenlos und die Community ist vergleichsweise klein
HerokuEinfacher zu bedienen als KubernetesKein echtes Tool zu Orchestrierung, nicht auf eigenen Servern einsetzbar
Amazon Elastic BeanstalkSehr gut mit Amazon Clouds (AWS) nutzbarImmer wieder Berichte über fehlerhafte Deployments
Cloud FoundryVereinfachter Aufbau gegenüber KubernetesNicht alle Details sind einsehbar / lassen sich managen
OpenShiftGanzes Ökosystem inklusive KubernetesMit Kosten verbunden, nicht so detailliert anpassbar wie Kubernetes

Fazit: Lohnt sich der Einsatz von Kubernetes?

Weil es einen so großen Hype um Kubernetes und die Docker-Orchestrierung gibt, wollten wir einmal ganz allgemein zeigen, warum wir uns bei HERO Software für Kubernetes entschieden haben und wie unsere Kunden dadurch profitieren. Ob sich ein ähnliches Konstrukt auch in anderen Unternehmen lohnt, hängt immer ganz konkret vom Anwendungsfall und der notwendigen Skalierbarkeit für die Zukunft ab.

In Summe schadet es jedoch vermutlich nicht, einer Einführung von Kubernetes sehr kritisch gegenüberzustehen, da diese zwangsläufig mit einem hohen Verwaltungsaufwand einhergeht, der gerechtfertigt sein muss. Bei HERO überwiegen jedoch aus unserer Sicht ganz klar die Vorteile!

Digitalisierung starten mit HERO Software

Bild: Hero Handwerkersoftware kostenlos testen
Bild: Hero Handwerkersoftware kostenlos testen

HERO: Handwerker Software für Profis

Kostenlose Beratung