Komponenten und Prinzipien für den Betrieb von Cloud-Native-Applikationen zu Hause
Physische und virtuelle Hardware
- Ein Server wird benötigt: CPU, Memory, Storage, Netzwerk
- Mittels Virtualisierung wird aus einem physischen Server eine Flotte von virtuellen Servern.
- Zum Betrieb der Netzwerk-Infrastruktur wird eine Firewall benötigt, die ein paar zusätzliche Dienste bereitstellt.
- Für die virtuellen Maschinen wird ein Linux-OS benötigt, welches im Betrieb wenig Pflegeaufwand bedarf.
- Ein standardisiertes Layout der Linux-VMs ist die Grundlage für die weiteren Ebenen.
Grundlagen für den Betrieb von virtualisierten Anwendungen
- Zum Betrieb von containerisierten Anwendungen braucht man eine Kubernetes-Distribution.
- Folgende Netzwerkdienste sind essentiell, damit die Anwendungen von Aussen erreichbar sind:
- Firewall- und Port-Freischaltungen im Internet-Access-Router
- Ein Dynamic-DNS-Client, der die wechselnde, externe IP-Adresse im DNS des Internets aktualisiert.
- Ein Load-Balancer, der die Datenpakete der ankommenden Service-Requests an den Ingress-Router schickt.
- Je nach Technik des Load-Balancers: eine Menge freier, reservierter IP-Adressen im DMZ-Netzwerk
- Ein Ingress-Router, der TLS-Terminierung durchführt und die Datenpakete aufgrund von Regeln an die richtigen Container weiterleitet.
Dienste zum Betrieb von Web-Anwendungen
- Für die Erstellung des Technik-Blogs wird ein Static-Site-Generator benutzt, der Markdown-Dateien in fertige HTML-Seiten übersetzt.
- Zum Ausliefern der HMTL-Seiten wird ein Web-Server benötigt.