Kubernetes ist eine Open Source Container Cluster Management Software, die ursprünglich von Google entwickelt wurde und der Cloud Native Computing Foundation (eine Koop von Google mit der Linux Foundation) zur Verfügung gestellt wurde. Kubernetes wurde in der Entwicklung stark von einem umfangreichen Google Software System namens Borg beeinflusst, mit dem tausende von Googles Servern in den Rechenzentren rund um den Globus verwaltet werden und das es Google Ingenieuren ermöglicht, im Handumdrehen unfassbar viel Rechenpower aus den Rechenzentren des Konzerns zu reservieren und sie dort einzusetzen, wo sie sie gerade brauchen: Egal ob Tools wie die Google Suche, Gmail oder Google Maps.
Viele der Entwickler von Kubernetes haben vorher am Borg Projekt gearbeitet und mit Kubernetes haben nun viele Internet Unternehmen die Möglichkeit, Projekte in der Größe von Google Maßstäben zu entwickeln. Das Wort Kubernetes enstammt dem Altgriechischen und bedeutet etwa so viel wie Steuermann oder Pilot. Mit der Open Source Cluster Management Software Kubernetes lassen sich in Docker Container (wird auch bei Google Borg und seinem Nachfolger Google Omega verwendet) verpackte Software Applikation bequem über große verteilte Cloud Computersysteme deployen und orchestrieren.
Eine Besonderheit von Kubernetes ist dabei, dass es nicht nur relativ einfach in der Handhabung ist, sondern auch das Maximum aus der vorhandenen Rechenpower rausholen kann. Werden Software Applikationen in Docker Container auf verschiedenen Cluster Knoten wenig oder garnicht genutzt, kann Kubernetes diesen Cluster Knoten vorübergehend oder dauerhaft neue Aufgaben zuweisen und so vollautomatisch die vorhandenen Rechenleistung der Server oder Rechenzentren optimal auslasten.
Kubernetes definiert einen Satz von primitiven Bausteinen ("Building Blocks"), die gemeinsam die Mechanismen für das Deployen, Aufrechterhalten und Skalieren von Cloud Applikationen bereitstellen. Die Kern Komponenten von Kubernetes sind lose gekoppelt und in einer gewissen Weise flexibel und erweiterbar, so dass eine große Bandbreite möglicher Lastszenarien abgedeckt werden kann. Die Kubernetes API stellt diesen Mechanismus sowohl den internen Komponenten zur Verfügung, als auch sämtlichen Erweiterungen und Containern, die auf Kubernetes laufen.
Die kleinste Grundeinheit bei Kubernetes nennt sich "Pod". Ein Kubernetes Pod besteht aus einem oder mehreren Containern, die auf einer Maschine laufen und sich deren Resourcen und eine einzigartige IP Adresse teilen. Pods können über die Kubernetes API einzeln verwaltet werden, oder Ihre Verwaltung kann an einen Controller abgetreten werden.
Mit Labels und Selektoren bietet die Kubernetes API einen zentralen Gruppierungsmechanismus, mit dem Pods oder Knoten zusammengefasst und addressiert werden können. Mit Label Selektoren kann in einer Abfrage, die ein wenig an SQL queries oder CSS Selektoren erinnert, festgelegt werden, welche Operationen auf welche Komponenten angewendet werden sollen. Labels werden als Key-Value Paare belibigen API Objekten , wie Pods oder Knoten, zugewiesen.
Ein Controller ist bei Kubernetes ein Mechanismus, der den aktuellen Cluster Zustand in einen gewünschten Cluster Zustand überführt. Es gibt verschiedene Arten von Controllern, etwa für die Replizierung oder Job Controller. Ein Controller verwaltet einen Satz von Pods, die er über Label Selektoren festgelegt werden.
Ein Kubernetes Service ist ein Satz von Kubernetes Pods, die zusammenarbeiten. Der Satz an Pods, die einen Kubernetes Service ausmachen, wird über Label Selektoren festgelegt. Kubernetes bietet Service Discovery, DNS Namensauflösung für den Service sowie eine feste IP Adressierung. Standardmäßig sind Services nur innerhalb eines Clusters ansprechbar, können aber auch ausserhalb zugänglich gemacht werden.
Kubernetes nutzt eine Master Slave Architektur und lässt sich grob unterteilen in Kubernetes Nodes (Knoten) und Kubernetes Control Plane, der zentralen Steurungseinheit.
Die Master Komponenten von Kubernetes sind Bestandteil des sogn. Cluster Control Plane. Hierzu gehören der kube-apiserver, der die Kubernetes API bereitstellt, etcd, welches alle Cluster Daten speichert, kube-controller-manager, eine ausführbare Datei, die Kubernetes Controller ausführt, Hintergrund Prozesses oder Threads, die Routine Aufgaben erledigen und der kube-scheduler, der neu instanziierte Pods überwacht und ihnen Kubernetes Nodes zuweist, auf denen sie laufen können. Weitere Komponenten sind in addons zusammengefasst, wie etwa DNS, User Interface (nicht zu verwechseln mit WEB UI, dem Browser basierten Dashboard, mit dem man Applications deployen kann und den ubernetes Cluster und seine Resourcen steuern kann), Container Resource Monitoring oder Cluster Level Logging.
Ein Kubernetes Nodes ist der einzelne Rechner (oder virtuelle Maschine) eines Clusters, auf dem standardmäßig folgende Node Komponenten laufen: kubelet, der die einzelnen Pods des Nodes verwaltet, mounted, Container via Docker ausführt, Status Meldungen zwischen Pod und Node kapselt, kube-proxy, docker, rkt (eine experimentelle Docker alternative), supervisord und fluent.
Was auch immer Sie mit Kubernetes aufziehen wollen - eine lokale Testumgebung oder eine global verteilte Enterprise Applikation - wir können Ihnen helfen. Sprechen Sie uns an und binden Sie unsere Experten von Anfang an in Ihr Team ein!
Münster war vor der Gründung von Nordrhein-Westfalen die Hauptstadt der Provinz Westfalen. Münster liegt zwischen Dortmund und Osnabrück und hat etwa 310.000 Einwohner, wovon etwa 55.000 Studenten sind, was Münster zu einer der 10 größten Universitätsstädte Deutschlands macht. Die Westfälische Wilhelms Universität (WWU) mit 15 Fachbereichen und über 115 Studiengängen ist größter Arbeitgeber der Stadt Münster und eine der größten Unis in Deutschland. Weitere Hochschulen in Münster sind die Fachhochschule Münster, die Hochschule des Bundes für öffentliche Verwaltung, die Kunstakademie Münster sowie die Katholische Hochschule Nordrhein-Westfalen.
Münster gilt als Dienstleistungs- und Verwaltungsstandort und ist Sitz wichtiger Gerichte und Verwaltungseinrichtungen des Landes Nordrhein-Westfalen, wie Verfassungsgerichtshof (NRW) und Oberverwaltungsgericht. Große Industrieunternehmen findet man in Münster nicht, eher Tochterunternehmen großer Konzerne wie der BASF und viele kleine und mittelständische Unternehmen (KMU). Münster ist Sitz vieler Call Center und ein führender Standort in der Bio- und Nanotechnologie - auch durch die enge Zusammenarbeit mit der Universität und der Möglichkeit für Start-Ups, sich auf Technologiehof, dem Biotech-Campus oder dem Centrum für Nanotechnologie (CeNTech) anzusiedeln.
Münster ist Bischofsstadt und das Stadtbild von Münster wird von vielen Kirchen geprägt, allen voran der St.-Paulus-Dom und die Kirche St. Lamberti.
Wir sind gerne für Sie da, rufen Sie uns einfach an:
Tel.: +49 221 960 28 202
[email protected]