Microsoft Orleans, Teil 3
15.07.2024, 00:00 Uhr
Der Cluster im Cluster
Mit REST-API-Fassade und Kubernetes-Hosting ins Finale der Orleans-Serie.
Im zweiten Teil dieser Serie [1] wurde die Anwendung funktional erweitert, um den neuen fachlichen Anforderungen gerecht zu werden. Dabei wurden die Features von Orleans hinsichtlich Event Sourcing und Pipeline-Middleware sowie unterschiedliche Grain-Typen vorgestellt. Bisher wurde der Orleans-eigene Cluster-Mechanismus verwendet und die Anwendung als allein stehendes System betrachtet. Heutzutage werden die meisten neuen Anwendungen, sofern dies notwendig beziehungsweise sinnvoll erscheint, als containerisierte Microservices umgesetzt und in irgendeinem Container-Orchestrator betrieben. Dafür kommt häufig Kubernetes (k8s) oder eine darauf basierende Plattform wie Azure Container Apps oder OpenShift zum Einsatz. In diesem abschließenden Artikel wird betrachtet, welche Schritte notwendig sind, um die existierende Orleans-basierte Anwendung zu containerisieren und anschließend in Kubernetes zu betreiben.
Als Werkzeuge werden dabei Podman Desktop [2] als Alternative zu Docker Desktop und kind [3] sowie kubectl (als CLI für das Kubernetes-API) verwendet; kind ist ein Werkzeug, um Kubernetes in Docker-Containern zu betreiben. Außerdem wird noch k9s [4] als Kommandozeilen-UI für die Analyse des Clusters verwendet, allerdings ist dies optional und für das Beispielprojekt nicht relevant. Die Werkzeuge sind gut integriert, aber es erfordert dennoch einige Schritte (siehe [5]), um Podman-Desktop und Kubernetes-Cluster zum Laufen zu bekommen. Dies wird im Artikel nicht betrachtet, sondern ein laufender kind-Cluster wird als Voraussetzung angesehen. Auch auf Kubernetes an sich wird nicht im Detail eingegangen, da dies den Rahmen sprengen würde, sondern nur so weit, wie es für das Gesamtverständnis notwendig ist.
Jetzt 1 Monat kostenlos testen!
Sie wollen zukünftig auch von den Vorteilen eines plus-Abos profitieren? Werden Sie jetzt dotnetpro-plus-Kunde.
- + Digitales Kundenkonto,
- + Zugriff auf das digitale Heft,
- + Zugang zum digitalen Heftarchiv,
- + Auf Wunsch: Weekly Newsletter,
- + Sämtliche Codebeispiele im digitalen Heftarchiv verfügbar