Thesis:
Lens ist eine auf dem Electron Framework basierende IDE für die tägliche Arbeit mit Kubernetes Clustern und ermöglicht einen besseren Überblick über den Zustand eines Kubernetes-Clusters, dessen Echtzeit-Statistiken, Log-Streams und bietet weitere Möglichkeiten zur Fehlerbehebung und Fehleranalyse, z.B. mittels Pod Logins. Lens erhöht die Produktivität im Umgang mit Kubernetes Clustern und deckt umfangreich den Standard-Umfang üblicher Kubernetes Default-Installationen ab.
Auf Kubernetes Clustern werden jedoch häufig Erweiterungen wie z.B. Longhorn, Fluentd, ElasticSearch, Grafana, etc. für weitere Aufgaben ergänzend installiert. Diese Anwendungsfall-spezifischen Erweiterungen werden normalerweise nicht durch Lens abgedeckt und bieten oft eigene Web-UIs an. Um diese Web-UIs zu nutzen, muss man diese entweder über Ingress-Ressourcen Cluster-extern exponieren (was oft aufgrund von Sicherheitserwägungen nicht ratsam ist), oder mittels Port-Forwarding auf Administrations-Rechner umleiten (was in der täglichen Arbeit mühsam und fehleranfällig ist).
Lens kann jedoch über Extensions erweitert werden. In dieser Arbeit soll untersucht werden, inwieweit sich diese Erweiterungsmöglichkeiten von Lens dazu nutzen lassen,
Die Erkenntnisse sollen in Form einer funktionsfähigen Lens Extension implementiert, validiert sowie in einer Abschlussarbeit geeignet dokumentiert werden.
Die Installation oben genannter Erweiterungen und deren Web-UIs in Kubernetes ist nicht Gegenstand dieser Aufgabenstellung, nur die Darstellung von im Cluster laufenden Web-UIs im Allgemeinen.
Zur Föderung der Cloud-native Community und im Sinne des Open Source Gedankens sollte die/der Autor:in anstreben, diese Lens Extension als Open Source Projekt im Anschluss der Arbeit der Allgemeinheit zur Verfügung zu stellen und über die Abschlussarbeit hinaus als Open Source Projekt fortzuführen.
Abbildung: Lens UI