Image

Image
von Raphael Wirtz
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).

"The big stones we have to overcome are day two operations. It is not a big deal to deploy Kubernetes clusters. The trouble starts when you want to start updating, upgrading, adding nodes, all that kind of stuff."
Im Folgenden wird dies in den Kontext zum Betrieb vom Cluster gesetzt und auch, weshalb und wie der Einsatz von mehreren Clustern erfolgen kann.

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 
Image

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.

Image

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. 

Image

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. 

Image

LangChain bei AWS CloudWatch protokollieren

LangChain macht LLM-Anwendungen flexibel – doch ohne sauberes Logging wird’s in der Praxis schwierig. Erfahre, wie du mit AWS CloudWatch deine KI-Systeme zuverlässig überwachst, Fehler aufdeckst und smarter analysierst.
zum Artikel
Image

Serverless Chatbot mit LangChain & AWS Bedrock

LangChain und AWS Bedrock versprechen schnelle KI-Entwicklung – doch selbst einfache Chatbots stellen hohe Anforderungen. Erfahre, wie du mit cleverer Kombination beider Tools smarte Features wie RAG, Verlaufsspeicherung und Mehrsprachigkeit meisterst.
zum Artikel
Securing API Teaser

Die wichtigsten Erkenntnisse aus der Sicherung von APIs in AWS

Wie kann man verhindern, das bestimmte APIs versehentlich ohne Authentifizierung öffentlich zugänglich werden?
zum Artikel
Image

Data Masking of AWS Lambda Function Logs

Beim Protokollieren von Ereignissen und API-Antworten in Lambda können sensible Daten wie PII in CloudWatch-Logs gespeichert werden. Wie lässt sich sicherstellen, dass Kundendaten aus allen Logs entfernt werden?
zum Artikel