Vorwort
Diese Arbeit wurde mithilfe von KI übersetzt. Wir freuen uns über dein Feedback und deine Kommentare: translation-feedback@oreilly.com
Software ist für mehr Menschen wichtiger als je zuvor. Diese beiden Anforderungen werden allgemein als Skalierung und Zuverlässigkeit bezeichnet. In den letzten zehn Jahren hat die Softwarebranche die Skalierung und Zuverlässigkeit mit Taktiken, Infrastrukturen und kulturellen Initiativen wie DevOps vorangetrieben, bei denen die Entwickler die Verantwortung für den Betrieb der Anwendungen übernehmen.
Eine dieser Taktiken ist die Automatisierung von Betriebsabläufen: das Schreiben von Software, um deine Software zu betreiben. Die Automatisierung sich wiederholender Aufgaben gehört zu den Grundpfeilern des Site Reliability Engineering (SRE), einer IT-Disziplin, die durch den gleichnamigen O'Reilly-Titel definiert wird. DevOps und sein jüngerer Cousin GitOps wenden beide die Automatisierungsideen von SRE auf Entwicklungsmaschinen und die Praxis der Softwareentwicklung an. Die einfachste Form ist das Auslösen automatischer Bau- und Bereitstellungsprozesse, sobald sich der Quellcode einer Anwendung ändert.
Die moderne Software-Infrastruktur strebt nach Skalierbarkeit und Zuverlässigkeit durch verteiltes Rechnen. Trotz der vielen Silben bedeutet verteiltes Rechnen nur, dass viele Computer wie ein großer Computer funktionieren. Das zusammengesetzte System kann mehr Arbeit erledigen (Skalierung) und es kann mögliche Schwachstellen ausschließen (Zuverlässigkeit).
Kubernetes ist ein System zur Verwaltung von Anwendungen auf verteilten Computern, indem es diese in einzelne, austauschbare Artefakte, sogenannte Container, kapselt. Kubernetes kann verwalten, wo und wann Container laufen, ohne alles über sie und ihre Abhängigkeiten zu wissen. Kubernetes wird auch als Container-Orchestrator bezeichnet.
OpenShift nutzt im Kern die Kubernetes-Orchestrierung, um Computer zu einem Cluster zusammenzuschalten. Die Computer, die den Cluster bilden, werden Nodes genannt. OpenShift definiert, wie diese Knoten zusammenhängen und wie die Arbeit auf ihnen ausgeführt wird. Indem OpenShift die Grundprinzipien des verteilten Rechnens mit Tools, Richtlinien und Schnittstellen für ihre Verwendung zusammenfasst, hilft es den Teams, moderne Praktiken aus DevOps und GitOps zu übernehmen und sich wiederholende Prozesse gemäß den SRE-Vorgaben zu automatisieren.
Für wen dieses Buch ist
Wenn du ein Anwendungsentwickler bist, der sich mit Datenstrukturen und Funktionen auskennt und weiß, wie man sie in Programme einbaut, aber noch keine Erfahrung mit Containern, Kubernetes und Anwendungsplattformen hat, ist dieser Leitfaden zu OpenShift genau das Richtige für dich. Er zeigt dir, wie du mit OpenShift deine Software erstellst, bereitstellst, skalierst und verwaltest, und wie du diese Aufgaben mit OpenShift-Funktionen wie Build-Triggern, Pipelines und bedarfsgesteuerter Autoskalierung automatisieren kannst. Du musst weder Kubernetes noch OpenShift vorher benutzt haben.
Was du lernen wirst
In diesem Buch erfährst du, was OpenShift ist und wie du damit deine Anwendungen erstellst, sie ausführst und am Laufen hältst, auch wenn sich die Nachfrage ändert, Ausfälle behebst und kontinuierlich neue Versionen herausbringst, während du den Quellcode mit neuen Korrekturen und Funktionen verbesserst.
-
In den Kapiteln 1 und 2 werden OpenShift, seine Komponenten und Konzepte vorgestellt.
-
Kapitel 3 zeigt dir, wie du OpenShift auf deinem Computer ausführst, damit du einen virtuellen Cluster hast, um die Übungen des Buches durchzuführen.
-
In Kapitel 4 wirst du OpenShift so konfigurieren, dass es den Quellcode für eine einfache Hello World-Anwendung abruft, sie in ein Container-Image baut und ausführt.
-
Kapitel 5 stellt OpenShift Pipelines vor, ein Framework zum Zusammenstellen von Continuous Integration und Continuous Deployment (CI/CD) Routinen, und zeigt dir, wie du Pipelines zu deinem Cluster hinzufügst.
-
In Kapitel 6 wirst du eine realistischere Anwendung mit einer mehrstufigen Architektur und mehreren Komponenten einsetzen.
-
In Kapitel 7 wirst du das Backend der Anwendung erweitern, um die Daten zwischen den Sitzungen zu speichern.
-
In Kapitel 8 erfährst du, wie du die laufende Anwendung sowohl manuell als auch automatisch untersuchen, manipulieren und skalieren kannst, wie du OpenShift so einrichtest, dass es regelmäßig den Zustand der Anwendung überprüft, und wie du den Rollout neuer Versionen deiner Anwendung steuerst.
-
Kapitel 9 bietet einen umfassenden Überblick über die Überwachungs- und Alarmfunktionen von OpenShift.
-
In Kapitel 10 werden die OpenShift-Automatisierungsfunktionen erläutert, die du auf deinem Weg zur Beseitigung von Mühen nutzt, indem du die Plattform die sich wiederholenden Arbeiten erledigen lässt.
In diesem Buch verwendete Konventionen
In diesem Buch werden die folgenden typografischen Konventionen verwendet:
- Kursiv
-
Weist auf neue Begriffe, URLs, E-Mail-Adressen, Dateinamen und Dateierweiterungen hin.
Constant width
-
Wird für Programmlistings sowie innerhalb von Absätzen verwendet, um auf Programmelemente wie Variablen- oder Funktionsnamen, Datenbanken, Datentypen, Umgebungsvariablen, Anweisungen und Schlüsselwörter hinzuweisen.
- Kühn
-
Zeigt Befehle oder anderen Text an, der vom Benutzer wortwörtlich eingetippt werden sollte.
Tipp
Dieses Element steht für einen Tipp oder eine Anregung.
Hinweis
Dieses Element steht für einen allgemeinen Hinweis.
Warnung
Dieses Element weist auf eine Warnung oder einen Warnhinweis hin.
Code-Beispiele verwenden
Zusätzliches Material (Code-Beispiele, Übungen usw.) steht unter https://github.com/openshift-for-developers zum Download bereit .
Wenn du eine technische Frage oder ein Problem mit den Codebeispielen hast, sende bitte eine E-Mail an bookquestions@oreilly.com.
Dieses Buch soll dir helfen, deine Arbeit zu erledigen. Wenn in diesem Buch Beispielcode angeboten wird, darfst du ihn in deinen Programmen und deiner Dokumentation verwenden. Du musst uns nicht um Erlaubnis fragen, es sei denn, du reproduzierst einen großen Teil des Codes. Wenn du zum Beispiel ein Programm schreibst, das mehrere Teile des Codes aus diesem Buch verwendet, brauchst du keine Erlaubnis. Der Verkauf oder die Verbreitung von Beispielen aus O'Reilly-Büchern erfordert jedoch eine Genehmigung. Die Beantwortung einer Frage mit einem Zitat aus diesem Buch und einem Beispielcode erfordert keine Genehmigung. Wenn du einen großen Teil des Beispielcodes aus diesem Buch in die Dokumentation deines Produkts aufnimmst, ist eine Genehmigung erforderlich.
Wir freuen uns über eine Namensnennung, verlangen sie aber in der Regel nicht. Eine Quellenangabe umfasst normalerweise den Titel, den Autor, den Verlag und die ISBN. Zum Beispiel: "OpenShift for Developers, 2. Auflage von Joshua Wood und Brian Tannous (O'Reilly). Copyright 2021 O'Reilly Media, 978-1-098-10336-1."
Wenn du der Meinung bist, dass deine Verwendung von Codebeispielen nicht unter die Fair-Use-Regelung oder die hier erteilte Erlaubnis fällt, kannst du uns gerne unter permissions@oreilly.com kontaktieren .
O'Reilly Online Learning
Hinweis
Seit mehr als 40 Jahren bietet O'Reilly Media Schulungen, Wissen und Einblicke in Technologie und Wirtschaft, um Unternehmen zum Erfolg zu verhelfen.
Unser einzigartiges Netzwerk von Experten und Innovatoren teilt sein Wissen und seine Erfahrung durch Bücher, Artikel und unsere Online-Lernplattform. Die Online-Lernplattform von O'Reilly bietet dir On-Demand-Zugang zu Live-Trainingskursen, ausführlichen Lernpfaden, interaktiven Programmierumgebungen und einer umfangreichen Text- und Videosammlung von O'Reilly und über 200 anderen Verlagen. Weitere Informationen erhältst du unter http://oreilly.com.
Wie du uns kontaktierst
Bitte richte Kommentare und Fragen zu diesem Buch an den Verlag:
- O'Reilly Media, Inc.
- 1005 Gravenstein Highway Nord
- Sebastopol, CA 95472
- 800-998-9938 (in den Vereinigten Staaten oder Kanada)
- 707-829-0515 (international oder lokal)
- 707-829-0104 (Fax)
Wir haben eine Webseite für dieses Buch, auf der wir Errata, Beispiele und zusätzliche Informationen auflisten. Du kannst diese Seite unter https://oreil.ly/openshift-for-developers-2 aufrufen .
Schreib eine E-Mail an bookquestions@oreilly.com, um Kommentare oder technische Fragen zu diesem Buch zu stellen.
Neuigkeiten und Informationen über unsere Bücher und Kurse findest du unter http://oreilly.com.
Finde uns auf Facebook: http://facebook.com/oreilly
Folge uns auf Twitter: http://twitter.com/oreillymedia
Schau uns auf YouTube: http://www.youtube.com/oreillymedia
Danksagungen
Wir möchten dem Red Hat OpenShift-Team und insbesondere der OpenShift Developer Advocates Group für ihre Unterstützung bei der Erstellung dieses Textes und generell für ihre unermüdlichen Bemühungen danken, OpenShift seit seiner ersten Veröffentlichung im Jahr 2011 zu verbessern und zu erweitern. Während sich OpenShift von einer Pionierplattform zu einem Kubernetes-Kern entwickelt hat, ist das Ziel dasselbe geblieben: die Automatisierung und Rationalisierung der Arbeit, die mit dem Betrieb von Anwendungen auf einer modernen, massiv skalierbaren Infrastruktur verbunden ist, damit sich die Entwickler auf ihren Code konzentrieren können. Dieses Buch teilt dieses Ziel.
Wir danken auch denjenigen, die dieses Buch redigiert, überprüft, Vorschläge gemacht, gelegentlich verspottet und auf so viele Arten ihre Zeit und ihren Verstand zur Verfügung gestellt haben, um es nützlicher und konsistenter zu machen, darunter Jason Dobies, Daniel Hinojosa und Tero Ahonen. Sun Seng David Tan hat den ursprünglichen Code erstellt, auf dem die wichtigste Beispielanwendung des Buches, "Noted", basiert, und unsere Familien und Freunde haben uns geduldet, während wir sie geschrieben haben.
Get OpenShift für Entwickler, 2. Auflage now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.