C++ und Kubernetes: Entwicklung von Cloud-Anwendungen
C++ und Kubernetes: Entwicklung von Cloud-Anwendungen
Zusammenfassung:
Das Buch „C++ und Kubernetes“ ist ein praktischer Leitfaden für Entwickler, die das Erstellen und Bereitstellen von leistungsstarken C++-Anwendungen im Kubernetes-Ökosystem erlernen möchten. Im Gegensatz zu typischen Leitfäden, die sich auf Java oder Go konzentrieren, legt dieses Buch den Schwerpunkt auf die Besonderheiten von C++: Speicherverwaltung, Low-Level-Optimierung und Integration mit Linux-Systemaufrufen.
Das Buch ist in drei Teile gegliedert:
- Grundlagen der Containerisierung für C++ — Erstellung minimaler Docker-Images mit Multi-Stage-Builds, statisches und dynamisches Linken, Arbeit mit musl libc und Alpine Linux zur Reduzierung der Containergröße.
- Interaktion mit der Kubernetes-API — Verwendung der Bibliothek cppkube zur Erstellung von Clients, Arbeit mit Custom Resource Definitions (CRD), Schreiben eigener Operatoren in C++.
- Leistung und Debugging — Profiling von Anwendungen in Pods, Konfiguration von CPU-/RAM-Ressourcenlimits, Arbeit mit gRPC und Protobuf für die serviceübergreifende Kommunikation.
Für wen ist dieses Buch:
- C++-Entwickler, die in die DevOps- und Cloud-Entwicklung einsteigen
- Systemprogrammierer, die Kubernetes für verteiltes Rechnen nutzen möchten
- Ingenieure, die mit High-Load-Systemen und Echtzeitanwendungen arbeiten
Was Sie lernen werden:
- Wie man einen C++-Mikroservice von Grund auf erstellt und in Kubernetes bereitstellt
- Optimierung von Binärdateien für den Einsatz in Containern (Größenreduzierung, Beseitigung von Abhängigkeiten)
- Schreiben von benutzerdefinierten Controllern und Operatoren in reinem C++
- Integration mit dem Monitoring-System Prometheus über native C++-Exporter
- Behandlung von SIGTERM-Signalen und Graceful Shutdown in der Container-Umgebung
- Arbeit mit ConfigMap und Secrets über C++-Datei-APIs
Das Buch enthält über 50 Codebeispiele, die für den Produktionseinsatz bereit sind. Alle Beispiele wurden auf Kubernetes 1.28+ getestet und sind mit den neuesten Versionen von GCC und Clang kompatibel. Ein eigenes Kapitel widmet sich der Sicherheit: Wie man Speicherlecks in langlebigen Pods vermeidet und seccomp-Profile für C++-Anwendungen konfiguriert.
„C++ und Kubernetes“ ist die Brücke zwischen klassischer Systemprogrammierung und moderner Cloud-Architektur. Das Buch eignet sich sowohl für erfahrene C++-Entwickler als auch für DevOps-Ingenieure, die mit den Grundlagen von C++ vertraut sind.