MetaKube Support Policies

Support Policies für MetaKube

Dieses Dokument beschreibt detailliert in welchem Maße SysEleven technischen Support für MetaKube erbringt. Ebenfalls enthalten sind u.a. Beschreibungen zur Verwaltung der Workernodes, zur Art der Verwendung von 3rd-Party Komponenten und zur Patchverwaltung. Es soll Ihnen einen besseren Einblick in die Art und Weise der Zusammenarbeit mit SysEleven auf Basis unserer MetaKube Plattform geben.

Dieses Dokument bezieht sich in Teilen auf den SysEleven Stack als IaaS Provider. Im Detail kann es zu Unterschieden kommen, wenn Sie andere IaaS Provider über MetaKube nutzen. Bitte ziehen Sie dann die entsprechende Dokumentation des jeweiligen IaaS Providers zu Rate.

Einschränkungen

MetaKube bietet eine betriebsbereite Kubernetes-Umgebung, welche dem Nutzer die üblichen erforderlichen Konfigurationen und Funktionen bietet, um seinen Workload zu betreiben. MetaKube Nutzer müssen sich nicht um die Bereitstellung von Kubernetes kümmern. Demgegenüber steht, im Vergleich zu einer eigenen Kubernetes-Umgebung, eine Einschränkung der Möglichkeiten zur Anpassung der Kubernetes-Umgebung. Diese Einschränkungen sind notwendig, um einen sicheren und stabilen Betrieb gewährleisten zu können.

MetaKube bietet nur Support für Features aus stabilen Versionen im Rahmen des Upstream-Kubernetes-Projekts (sogenannte "stable releases") an. Falls nicht explizit an anderer Stelle dokumentiert, unterstützt MetaKube keine Alpha- oder Betaversionen (im Folgenden Vorabversionen genannt) und deren Features. Auch dann nicht, wenn diese im Upstream-Kubernetes-Projekt verfügbar sind.

In folgenden Ausnahmen kann SysEleven von dieser Verfahrensweise abweichen:

  • SysEleven hat Nutzer explizit darum gebeten diese neuen Features zu testen.
  • Features wurden durch ein Featureflag aktiviert. In diesem Fall müssen die Nutzer sich explizit für die Nutzung dieser Features entscheiden (siehe Previews weiter unten).

Verantwortungsbereiche

In der Natur eines "as as Service"-Dienstes liegt es, dass sich Anbieter und Nutzer die Verantwortung für die Verfügbarkeit teilen. In diesem Dokument zeigen wir auf, welche Teile der Verantwortung bei SysEleven und welche beim Nutzer liegen.

MetaKube ist keine vollständig verwaltete Clusterlösung. Einige Komponenten, z. B. Workernodes, weisen eine gemeinsame Verantwortung auf, wobei die Nutzer bei der Verwaltung ihrer Kubernetes-Cluster helfen müssen. Benutzereingaben sind z. B. erforderlich, um einen Sicherheitspatch für das Betriebssystem (OS) eines Workernode anzuwenden.

Wenn ein Cluster erstellt wird, definiert der Kunde die Kubernetes-Workernodes, die von MetaKube erstellt werden. Auf diesen Workernodes werden später die Workloads des Nutzers ausgeführt. Die Nutzer können diese konfigurieren.

Diese Workernodes führen privaten Code der Nutzer aus und können private oder vertrauliche Daten enthalten. Der SysEleven-Support kann nur eingeschränkt, nur nach ausdrücklicher Genehmigung und auf Wunsch des Nutzers auf Workernodes zugreifen, um im Problemfall helfen zu können. SysEleven hat technische und prozessuale Maßnahmen realisiert um zu gewährleisten, dass unbefugte Zugriffe auf Workernodes unter keinen Umständen stattfinden können.

Es liegt in der Verantwortung des Kunden bei von ihm vorgenommenen Änderungen an den Workernodes darauf zu achten, dass weder seine Daten noch seine Workload verloren gehen.

Von SysEleven verwaltete Funktionen in MetaKube

Mit MetaKube erhält der Kunde ein vollständig verwaltetes grafisches User-Interface (GUI) und eine vollständig verwaltete API. Diese enthält alle Komponenten und Dienste, die der Nutzer benötigt, um seine Kubernetes-Cluster zu betreiben und seinen Endbenutzern zur Verfügung zu stellen. Dazu gehören alle Master-Kubernetes-Komponenten, wie

  • API Server
  • Controller Manager
  • Cloud Controller
  • Etcd Cluster
  • Scheduler
  • Machine Controller, welche von SysEleven verwaltet und betrieben werden.

SysEleven verwaltet und überwacht darüber hinaus die folgenden Komponenten:

  • Kubelet- oder Kubernetes-API-Server
  • Etcd
  • DNS-Dienste (z. B. CoreDNS)
  • Kubernetes-Proxy oder -Netzwerk

Die Dienste sind in dem Sinne verwaltet, dass SysEleven die Dienste bereitstellt, betreibt und für deren Verfügbarkeit und Funktionalität verantwortlich ist. Nutzer können diese verwalteten Komponenten nicht ändern. SysEleven beschränkt die Anpassung, um eine konsistente und skalierbare Benutzererfahrung zu gewährleisten.

In vielen Fällen wird der Workload der Nutzer weiterhin ausgeführt, auch wenn die Kubernetes-Masternodes, Etcd und andere von SysEleven verwaltete Komponenten ausfallen.

Supportabdeckung

MetaKube

SysEleven bietet technischen Support für:

  • Verbindungen mit allen von MetaKube bereitgestellten und unterstützten Kubernetes-Komponenten, wie beispielsweise dem API-Server.
  • Verwaltung, Betriebszeit, QoS und Vorgänge der Kubernetes-Control-Plane (beispielsweise Kubernetes-Masternodes, API-Server, etcd und CoreDNS).
  • Etcd
  • Unser technischer Support beinhaltet automatisierte, transparente Sicherungen sämtlicher etcd-Daten im 30-Minuten-Takt für die Planung der Wiederherstellung im Notfall und die Wiederherstellung des Clusterzustands. Diese Backups sind nur über SysEleven für Kunden oder Nutzer verfügbar.
  • Alle zusätzlichen Services, die SysEleven im Rahmen der Nutzung von MetaKube anbietet, wie z.B. persistente Speicher, CLOUD-API, etc.
  • GUI/API
  • Fragen oder Probleme zur Anpassung von Komponenten der Control-Plane wie Kubernetes-API-Server, CoreDNS (z.B. https://docs.syseleven.de/metakube/en/documentation/dns)
  • Netzwerk
  • Probleme in Verbindung mit Netzwerkzugriff und -funktionalität wie beispielweise DNS-Auflösung, Paketverluste, Routing, etc.

SysEleven bietet keinen technischen Support für:

  • Kubernetes
  • Die Nutzung von MetaKube setzt hinreichende Kenntnisse zur Nutzung der Möglichkeiten von Kubernetes voraus. Der technische Support durch SysEleven bietet ab der Erzeugung von Clustern keine weitere Unterstützung für die Erstellung oder Verwaltung von Workloads oder deren Störungsbehebung.
  • Software von Drittanbietern (Open- oder Closed-Source

SysEleven kann Sie hinsichtlich der Nutzung von Kubernetes mit MetaKube und dafür verfügbarer Software von Dritten im Rahmen von Workshops und durch Engineering Services beraten und betreuen.

Workernodes

Alle Workernodes unterliegen der gemeinsamen Verantwortung von SysEleven und des Nutzers. Nutzer haben die Möglichkeit sich bei ihren Workernodes anzumelden und eigenständig Änderungen vorzunehmen, wie zum Beispiel Kernelupdates oder die Installation bzw. das Entfernen von Paketen.

SysEleven rät allen Nutzern davon ab, den Zugriff für solche Änderungen zu nutzen es sei denn SysEleven fordert dazu auf. Andernfalls entfällt der Support für diese Workernodes, bzw. Cluster.

Zuständigkeiten von SysEleven für MetaKube Workernodes

SysEleven nimmt folgende Aufgaben war:

  • Die Workernodes erhalten automatisierte Betriebssystempatches je nach gewähltem und von SysEleven bereitgestelltem Image:
  • optional (Flatcar- vormals CoreOS) oder
  • mandatorisch (Ubuntu)
  • Bei undefinierten oder unklaren Zuständen unterstützen wir den Kunden bei der Fehlerbehebung, bzw. Wiederherstellung der Funktion der Workernode oder Bereitstellung einer neuen Workernode.
  • SysEleven stellt die für Kubernetes-Versionsupgrades notwendigen Pakete auf der Workernode bereit. Ebenfalls stellt SysEleven die entsprechenden Kubernetes Versionen bereit und testet diese zuvor auf Funktionsfähigkeit in MetaKube.
  • MetaKube verwaltet Sicherungen von Etcd-Snapshots der Cluster und kann den Cluster jederzeit neu zuweisen. Die Wiederherstellung erfolgt im Rahmen eines Service Requests des Nutzers.
  • Unter Umständen muss die Workernode zur Wiederherstellung neu gestartet werden. Ein automatischer Neustart findet nicht statt. Es sei denn es handelt sich um automatisierte Betriebssystemupdates. Je nach gewähltem IaaS-Anbieter können unterschiedliche Verfahren zum Einsatz kommen. Bitte konsultieren Sie die Dokumentation des von Ihnen gewählten IaaS Providers.
  • SysEleven bietet im Rahmen des technischen Supports für MetaKube keine Hilfestellung für Workernodes, die nicht auf dem SysElevenStack laufen.
  • Wenn ein schwerwiegendes Sicherheitsproblem (z.B. Google Rating 'Remote executable') in einer oder mehreren Komponenten von MetaKube auftritt, wird SysEleven alle betroffenen Cluster patchen, um das Problem zu beheben. Alternativ wird das Team den Benutzern eine Anleitung für ein Upgrade bereitstellen. Für Workernodes, die von einem Sicherheitsproblem betroffen sind, wendet SysEleven einen Patch ohne Downtime (sofern verfügbar) an und informiert die Benutzer über die Änderung. Wenn ein Sicherheitspatch einen Neustart der Workernode erfordert, wird SysEleven die Nutzer über diese Anforderung informieren.

Zuständigkeiten des Nutzers für MetaKube Workernodes

SysEleven startet Workernodes nicht automatisch neu, um Patches auf Betriebssystemebene anzuwenden. Obwohl Betriebssystempatches an die Workernodes verteilt werden, ist der Nutzer für den Neustart der Workernodes verantwortlich, um die Änderungen anzuwenden:

  • Für Flatcar Images kann der Nutzer den Neustart konfigurieren und automatisieren.
  • Für Ubuntu ist i.d.R. kein Neustart erforderlich.

Freigegebene Bibliotheken, Daemons wie SSHD und andere Komponenten auf System- oder Betriebssystemebene werden automatisch gepatcht.

Die Nutzer sind selbst für die Durchführung von Kubernetes-Versionsupgrades verantwortlich. Sie können diese Upgrades über das MetaKube GUI oder die API durchführen. Dies gilt für Updates zur Verbesserung der Sicherheit oder Funktionalität von Kubernetes.

MetaKube-Workernodes werden im MetaKube GUI als reguläre IaaS-Ressourcen angezeigt.

Nutzer können die Standardkonfiguration Ihrer Workernodes erweitern. Beispielsweise können Sie Secure Shell (SSH) verwenden, um Workernodes regulär wie VMs zu konfigurieren. Das Basis-Betriebssystem-Image kann jedoch nicht geändert werden. Von Nutzern vorgenommene Änderungen werden möglicherweise nicht beibehalten, wenn Upgrades, Skalierungen, Updates oder Neustarts durchgeführt werden.

Nutzer können jedoch ein eigenes, von MetaKube unterstütztes, Basis-Image erstellen und dieses in MetaKube nutzen. Der Nutzer trägt dabei die Verantwortung für die korrekte Funktionsweise dieses Betriebssystem-Images innerhalb von MetaKube. Für selbsterstellte Images und damit betriebene Cluster gewährt SysEleven keinen Support.

MetaKube verwaltet den Lebenszyklus und die Vorgänge von Workernodes im Auftrag von Kunden. Das Ändern der IaaS-Ressourcen, die den Workernodes zugeordnet sind, führt der Nutzer über die MetaKube GUI oder API durch.

Für workloadspezifische Konfigurationen oder Pakete empfiehlt SysEleven die Verwendung von Kubernetes-Daemonsets.

Durch die Verwendung von privilegierten Kubernetes-Daemonsets und -Startcontainern können Nutzer Software von Drittanbietern auf Clusterworkernodes optimieren, ändern oder installieren. Beispiele für solche Anpassungen sind das Hinzufügen von benutzerdefinierter Software für Sicherheitsscans oder das Aktualisieren von sysctl-Einstellungen.

Dieser Ansatz wird empfohlen, wenn die oben genannten Anforderungen zutreffen. Das MetaKube-Engineeringteam und der MetaKube-Support können Sie nicht bei der Diagnose oder Behebung von Problemen unterstützen, die aus fehlerhaften Änderungen oder sonstigen Änderungen hervorgehen, durch welche die Workernode aufgrund eines kundenseitig bereitgestellten Daemonsets nicht verfügbar ist.

Der Nutzer ist für den Neustart oder die Aktualisierung verantwortlich, um ein über SysEleven zur Verfügung gestelltes Clusterpatch abzurufen. Wenn Benutzer die Patches nicht gemäß den MetaKube-Anweisungen anwenden, ist ihr Cluster weiterhin anfällig für Sicherheitsprobleme, welche durch die Patches behoben werden.

Kernelupdates werden von Nutzern über die Neuerstellung von Workernodes durch Auswahl des entsprechenden Images installiert. SysEleven stellt dazu einen sogenannten Rolling-Update Mechanismus bereit, der vom Kunden ausgelöst werden muss. Die Konfiguration der Services durch den Kunden verantwortet dabei eventuell auftretende Ausfälle der Services.

Einschränkungen bei der Konfiguration von Workernodes

Als "as a Service"-Dienst benötigt MetaKube bestimmte Netzwerkkonfigurationen und Verbindungsmöglichkeiten. In MetaKube können Anpassungen von NSG-Regeln, das Blockieren von bestimmten Ports und die Verwendung von Block-, bzw. Allow-Listen dazu führen, dass MetaKube diese Workernodes nicht mehr verwalten kann.

Es ist nicht gestattet ausgehenden Datenverkehr komplett zu unterbinden. Sollte der Nutzer das vorgenommen haben, so liegt es in seiner Verantwortung dies wieder rückgängig zu machen. Der technische Support ist solange ausgesetzt.

Vorabversionen

Im Rahmen der stetigen Weiterentwicklung von MetaKube können ausführliche Tests und das Einholen von Benutzerfeedback erforderlich sein. Solcherart Previews ermöglicht SysEleven in Form der Bereitstellung hinter sogenannten Featureflags. Diese sind als Features einer Vorabversion zu betrachten und ausdrücklich nicht für den Produktivbetrieb vorgesehen, da diese häufigen und unangekündigten Änderungen unterliegen können.

Technischen Support erhalten Nutzer zu den Tagesarbeitszeiten nach Best-Effort.

Umgang mit Fehlern in Upstreams und Probleme bei deren Verwendung

Kubernetes ist eine sich schnell weiterentwickelnde Technologie mit einem hohen Community-Anteil, in dessen Folge auch immer mal wieder Fehler auftreten können. Nicht immer können diese Fehler innerhalb des MetaKube-Systems gepatcht oder durch einen Workaround umgangen werden. Häufig erfordern Fehlerbehebungen größere Patches für beteiligte Upstream-Projekte wie Kubernetes selbst, Betriebssysteme für Nodes oder anderes.

SysEleven selbst leistet einen Beitrag zur Weiterentwicklung bzw. Bereitstellung von Features, wie z.B. der ACME webhook Implementation for OpenStack Designate. Bei diesen Komponenten kümmern sich Mitarbeiter von SysEleven darum, die Fehler im Upstream zu beheben.

Probleme, die auf einen oder mehrere Upstream-Fehler zurückzuführen sind, werden vom technischen Support wie folgt gehandhabt:

  • SysEleven wird versuchen das Problem nachzuvollziehen, um ein Workaround anbieten zu können, soweit das möglich ist.
  • SysEleven recherchiert, ob es sich um ein bekanntes Problem handelt, für das Lösungen entwickelt werden.
  • SysEleven informiert Kunden, welche sich mit diesem Problem gemeldet haben, über die weitere Verfahrensweise und gibt einen ungefähren Ausblick, wann das Problem behoben sein wird.
  • Der Kunde wird aktiv informiert, sobald das Problem dauerhaft behebbar ist.

Add-Ons

Je nach MetaKube Version stellt SysEleven sogenannte Add-Ons zur vereinfachten Installation für den Nutzer zur Verfügung. Darüberhinaus stellt SysEleven Dokumentation zur Einrichtung dieser Add-Ons bereit. SysEleven leistet keinen weiteren technischen Support für die Konfiguration oder Nutzung dieser Add-Ons. Je nach Add-On kann der Nutzer selbst diese in Dialogboxen oder per API konfigurieren oder Konfigurationsskripte einfügen. Diese Add-Ons werden von SysEleven gepflegt. Dazu gehören auch das Beseitigen von Fehlern oder unerwünschten Verhalten.

Multi-Cloud

Eine Liste der unterstützten IaaS Provider und Hinweise zu deren Nutzung finden Sie unter https://docs.syseleven.de/metakube/de/documentation/supported-cloud-providers

Unterstütze Versionen

Eine Liste der von MetaKube unterstützen Kubernetesversionen finden Sie unter https://docs.syseleven.de/metakube/en/documentation/supported-kubernetes-versions

Unterstütze Betriebssystemimages

SysEleven stellt Betriebssysteme zur Nutzung in Clustern bereit. Mehr dazu und welche das sind erfahren Sie unter https://docs.syseleven.de/metakube/de/documentation/supported-operating-systems

Release Notes

Interessante Neuigkeiten rund um MetaKube finden Sie in den Release Notes unter https://docs.syseleven.de/metakube/de/metakube/release-notes