Cloud Engineer
Verwalten von mehreren hybrid Multi-Cloud Kubernetes Clustern mit Nutanix NKP
Der Wandel zu containerisierten und cloudbasierten Anwendungen betrifft nicht nur die Entwicklung von Applikationen, sondern geht darüber hinaus.
Durch die Virtualisierung können Applikationen effizienter betrieben werden, da Ressourcen besser genutzt und flexibel zugewiesen werden können. Dies ermöglicht eine schnellere Skalierung und einfachere Verwaltung der Anwendungen. Über die Virtualisierung lassen sich Applikationen in Containern aufteilen oder auch mit neuen erweitern. Diese Flexibilität erfordert den Kompromiss, dass die Interaktionen und Funktionalitäten der Container selbst verwaltet werden müssen. Hierfür helfen Container Management Systeme wie Kubernetes um die Container zu orchestrieren.
Diese Gegebenheiten verändern nicht nur die Softwarearchitektur, sondern auch den Betrieb der Anwendungen und die Arbeitsweise über den gesamten Lifecycle. Es muss unteranderem entschieden werden, wie die Business Applikation integriert und betrieben wird, aber auch auf welcher Cloud Infrastruktur.
Veränderungen für den operativen Betrieb
Insgesamt betrachtet ist die Schnittstelle zwischen Entwicklung und Betrieb ein zentraler Aspekt. Ein Beispiel hierfür ist der Onlinehändler ricardo.ch, der die Zusammenarbeit nach der DevOps Methodik umgestellt hat und auch die Mittel für den Betrieb wie Logging und Monitoring Stack anpassen musste.
Eine solche Umstellung ist auch mit Herausforderungen verbunden. Stephan Massalt vom Telekommunikationsunternehmen Swisscom erwähnt hierbei insbesondere die Anpassungen für den laufenden Betrieb, also Day 2 Operationen als entscheidend (Swisscom, 2020).
Nutzen von mehreren Clustern
Zuerst müssen wir betrachten, welche Gründe für den Betrieb von mehreren Clustern sprechen.
- Trennung von Produktion-, Test- und Entwicklungsumgebung
- Ausfallsicherheit durch Redundanz
- Compliance und Sicherheitsanforderungen
- Unterschiedliche Cloud Provider
- Isolation von Workloads
Es stellt sich nun die Fragen, wie eine Übersicht über die Cluster beibehalten und Day-2 Operationen gelöst werden können.
Im Folgenden wird eine Lösung mit Nutanix Kubernetes Platform (NKP) betrachtet, welches in einer on-premise oder public Cloud Infrastrukturen betrieben werden kann.
NKP bietet eine Web-Oberfläche, sowie eine entsprechende CLI-Schnittstelle und kann in einer air-gapped oder eine non-air-gapped Umgebung verwendet werden Kernstück von NKP bildet das sogenannte ‘Management Cluster’ mit folgenden Funktionen.
- Zentralisiertes Management Oberfläche
- Auslastung der Cluster und Skalierbarkeit
- Lifecycle Management von Softwarekomponenten im Cluster
- Hybrid-Cloud Cluster Anbindung
- Betrieb auf On-Premise, Public-Cloud oder Edge Umgebung
- Access Management für die Zugangsberechtigung
- Nutzbar in einer airgapped oder non-airgapped Umgebung
Verwalten von Clustern mit NKP
NKP bietet ein Dashboard für die Verwendung vom NKP Management Cluster. Darin können neue on-premise oder public Cloud Infrastruktur Provider angebunden werden und anschliessend Kuberntes Cluster direkt im UI hinzugefügt oder erstellt werden.
NKP übernimmt das Bereitstellen der nötigen Ressourcen und Initialen Installation vom Cluster, wobei der Anwender bei der Konfiguration vom Cluster angeleitet wird.
Als Beispiel beinhaltet das Erstellen von einem on-premise Nutanix Cluster folgende Bestandteile. Es wird das zu verwendende Netzwerk, Speicher Container und Nutanix AOS Cluster selektiert. Anschliessend wird für das Kubernetes Cluster selbst wird die Anzahl Control und Worker Nodes und deren Rechnerressourcen und OS definiert. Zudem wird für das Netzwerk der IP-Bereich für die Pods, Services und den Load Balancer gesetzt.
Zugangsmanagements
Bereits verwendete Identity Provider können über die Authentifizierungsverfahren wie OIDC, SAML oder via GitHub eingebunden werden.
Granulare Berechtigungen für Gruppen oder Benutzer lassen sich mit dem RBAC definieren und ermöglichen nebst dem Zugriff auch Self-Service-Funktionen wie das Erstellen von Clustern.
Platform Applications & Lifecycle
In einem Cluster werden Container gruppiert und vernetzt, wobei einige zusätzliche für den Betrieb der Business Applikation und vom Cluster selbst nötig sind. Um den Aufwand für zusätzliche Applikationen im Cluster zu vereinfachen, bietet NKP sogenannte ‘ Platform Applications’ an, die fortlaufend aktualisiert und aufeinander abgestimmt.
Es handelt sich vor allem um Open Source Projekte die Day-2 Operationen und Integration von anderen Systemen vereinfachen und selbst modifizieren lassen.
Wie hilft NKP für den Berieb von Cluster
Es wurde aufgezeigt, dass containerbasierte Anwendungen technische und organisatorische Anpassungen bedingen oder ermöglichen.
Nutanix bietet mit NKP eine hilfreiche Lösung für diese Herausforderungen und die Verwendung, Bereitstellung von Kubernetes Clustern.
NKP bietet eine flexible und zukunftsorientierte Lösung mit der Unterstützung von mehreren Infrastrukturen & Identity Providern.
Die bereitgestellten Platform Applications sind einsatzbereit für Day-2 Operationen und ermöglichen so einen vereinfachten und stabilen Unterhalt.