Einführung
Angenommen, Sie haben einen neuen Job als Softwareentwickler beim Outdoor-Unternehmen Contoso begonnen, das Kleidung und Geschenke verkauft. Das Geschäft blüht, und die Contoso-Website, die angibt, ob Artikel vorrätig sind oder nicht, wurde vor Kurzem in Microservices umgestaltet, die in Docker-Containern gehostet werden.
Bei einem Entwicklungsansatz auf Basis von Microservices besitzt jeder Microservice sein Modell und seine Daten, sodass der Service im Hinblick auf Entwicklung und Bereitstellung von anderen Microservices unabhängig ist. Das Hosten von Microservices innerhalb eines Containers ist eine gängige Möglichkeit, dies zu erreichen. Diese Arten von Systemen sind komplex, was Aufskalieren und Verwaltung betrifft. Sie müssen den Prozess des Organisierens, Hinzufügens, Entfernens und Aktualisierens vieler Container berücksichtigen. Dieser Prozess wird als Containerverwaltung bezeichnet.
Vielleicht stellen Sie fest, dass zu bestimmten Tageszeiten die Anzahl der Containerinstanzen, die für das Zwischenspeichern zuständig sind, hochskaliert werden muss. Oder Sie haben eventuell ein Update für die Containerinstanz, die den Produktbestand überprüft.
Zur Unterstützung bei Aufgaben der Containerverwaltung können Sie einen Containerorchestrator verwenden. Kubernetes ist ein solcher Orchestrator. Dabei handelt sich um eine erweiterbare Open-Source-Plattform zum Verwalten und Orchestrieren von Containerworkloads.
In diesem Modul erfahren Sie mehr über Kubernetes und die damit zu lösenden Probleme sowie über die Bereitstellung einer .NET-Web-API und -Web-App in einem Kubernetes-Cluster.
Lernziele
In diesem Modul wird Folgendes thematisiert:
- Lernen Sie die Konzepte hinter Orchestratoren kennen, und erfahren Sie, warum Sie sie möglicherweise benötigen.
- Nehmen Sie einen vorhandenen .NET-Microservice, der in einem Docker-Container gehostet wird, und pushen Sie ihn auf Docker Hub.
- Stellen Sie den Microservice aus Docker Hub in einer lokalen Kubernetes-Instanz bereit.
- Erfahren Sie, wie Sie eine Containerinstanz in einem Kubernetes-Cluster skalieren.