Beermann / Kastl / Rost | Terraform | E-Book | sack.de
E-Book

E-Book, Deutsch, 495 Seiten

Beermann / Kastl / Rost Terraform

Das Praxisbuch für DevOps-Teams und Administratoren

E-Book, Deutsch, 495 Seiten

ISBN: 978-3-8362-8915-3
Verlag: Rheinwerk Computing
Format: EPUB
Kopierschutz: Wasserzeichen (»Systemvoraussetzungen)



Mit Terraform errichten Sie komplexe Infrastrukturen automatisiert in der Cloud und orchestrieren Deployments, die genau Ihren Anforderungen entsprechen. Tim Beermann, Johannes Kastl, Christian Rost, Thorsten Schifferdecker und Eike Waldt zeigen Ihnen, wie Sie Deployments verwalten, Ressourcen mit HCL skripten und den State Ihres Setups verwalten. So gerüstet entwerfen Sie wiederverwendbaren Code, vermeiden Fallstricke und schaffen einen komfortablen Arbeitsweg zur Verwaltung Ihrer Cloud-Landschaften. Aus dem Inhalt: Infrastructure as Code Was ist Terraform? Installation und alle Grundlagen Provider: Konfiguration und Beispiel-Setups State - Der Zustand der Umgebung Variablen und Datenquellen HCL: Terraform programmieren Updates und Day-2-Operations Terragrunt und weitere Tools Best Practices: Terraform richtig nutzen Multi-Cloud-Deployments
Beermann / Kastl / Rost Terraform jetzt bestellen!

Weitere Infos & Material


1    Einleitung
Sehr geehrte Leserin, sehr geehrter Leser, wir freuen uns, dass wir Sie auf eine Reise in Richtung Infrastructure as Code und Terraform mitnehmen dürfen. Wir wünschen Ihnen einen angenehmen Flug, am Ziel erwartet uns herrliches Wetter. Spaß beiseite, schön, dass Sie den Umgang mit Terraform lernen wollen. Infrastructure as Code ist aus unserem Alltag nicht mehr wegzudenken. Nehmen Sie sich Zeit, sich über die Vor- und Nachteile des Arbeitens mit Terraform zu informieren. Finden Sie den passenden Weg für sich, Ihr Team und Ihr Unternehmen, um Ihre Infrastruktur zu organisieren und zu verwalten. Wir wünschen gutes Gelingen! Tim Beermann Johannes Kastl Eike Waldt Christian Rost Thorsten Schifferdecker 1.1    Gliederung
Die nächsten Abschnitte verraten Ihnen, was Sie wissen sollten, bevor Sie mit diesem Buch loslegen können. Sie erfahren, was Sie lernen werden und was nicht zum Ziel dieses Buchs gehört. Kapitel 2 führt in grundlegende Prinzipien und Denkweisen ein und unterfüttert das beliebte Buzzword Bingo (DevOps! IaC! Cloud!) mit solidem Hintergrundwissen. Ziel ist es nicht, Sie mit langatmigen Ausschweifungen zu langweilen. Dennoch sollen Sie verstehen, wieso Terraform in den letzten Jahren so eine steile Karriere hingelegt hat und womit das zusammenhängt. Kapitel 3 zeigt die Installation von Terraform und bringt Ihnen die ersten Befehle zum Arbeiten mit Terraform näher. In Kapitel 4 dürfen Sie dann die ersten Ressourcen bei einem Cloud-Anbieter aufbauen. Das Beispielszenario wird für die Cloud-Anbieter AWS, Microsoft Azure und Google Cloud Platform sowie die Technologien OpenStack, VMware und libvirt gezeigt. Kapitel 5 behandelt das Gehirn von Terraform, den sogenannten State, und zeigt, was Sie darüber wissen müssen und was Sie damit machen können. In Kapitel 6 zeigen wir Ihnen Eingabevariablen, Ausgabewerte und dergleichen mehr. Sie lernen verschiedene Wege kennen, auf denen Sie Variablen Werte zuweisen können, und erfahren, wann welcher Weg sinnvoll oder schwierig umzusetzen ist. Die von Terraform verwendete Beschreibungssprache HCL (HashiCorp Configuration Language) wird in Kapitel 7 detailliert behandelt. Sie erfahren (fast) alles über Anweisungen, Funktionen, Module und derlei Dinge mehr. Auch das Thema Versionsverwaltung wird hier erstmalig eingehender besprochen. Kapitel 8 befasst sich mit den anstehenden Aufgaben nach dem ersten erfolgreichen Aufbauen Ihrer Infrastruktur. Dies umfasst Themen wie Aktualisierungen für Terraform und dessen Provider, den Lebenszyklus erstellter Ressourcen und wie Sie Datenverlust vermeiden. Die Organisation und Struktur Ihres Terraform-Codes ist eines der Themen, die in Kapitel 9 abgehandelt werden. Auch die Handhabung von Zugangsdaten bei der Nutzung einer Versionsverwaltung oder eines Remote Backend werden thematisiert. In Kapitel 10 wollen wir Ihnen ein in sich abgeschlossenes Deployment vorstellen, das als Beispiel für viele Anwendungsszenarien steht. Kapitel 11 wagt den Blick über den Tellerrand und schneidet Themen an, die den Umfang dieses Buchs sprengen würden. Dazu gehören Automatisierung rund um Terraform, die Terraform Cloud und Terraform Enterprise sowie Werkzeuge aus dem Terraform-Umfeld, wie z. B. Terragrunt oder Timon. Eine Kommandozeilenreferenz zu Terraform, all seinen Befehlen und deren Parametern finden Sie in Kapitel 12. 1.1.1    Was Sie schon wissen sollten
Terraform dient zur Verwaltung von Infrastrukturressourcen. In diesem Buch werden Ihnen Ressourcen wie virtuelle Maschinen, Netzwerke, Blockstorage und Ähnliches begegnen. Sie werden es außerdem mit Begriffen wie Webserver, Datenbanken, Loadbalancer und Backups zu tun haben. Sie müssen nicht alle diese Ressourcen und Begriffe im Schlaf definieren und beschreiben können, es reicht, wenn Sie ein Grundverständnis dieser Ressourcen mitbringen. Grundlegende Kenntnisse zu Virtualisierung (Was ist eine virtuelle Maschine?), Netzwerktechnik (Was ist eine IP-Adresse?) und Administration (Wie melden Sie sich per SSH an?) sollten vorhanden sein. Kapitel 2 führt in Terraform, dessen Nutzung und verwandte Bereiche wie Cloud Computing, DevOps und Infrastructure as Code ein und stellt Terraform in den größeren Kontext. Terraform ist ein Kommandozeilenprogramm ohne grafische Oberfläche. Sie sollten daher mit dem Arbeiten auf einer Kommandozeile vertraut sein. Im Idealfall kennen Sie sich auf der Kommandozeile des Betriebssystems aus, auf dem Sie Terraform installieren und nutzen wollen. Die Installation selbst wird in Kapitel 3 für verschiedene Betriebssysteme beschrieben. Die meisten Beispiele werden auf einem Linux-System in einer bash-Shell gezeigt. Linux-Kenntnisse sind nicht notwendig, hier aber durchaus hilfreich. Sie sollten jedoch auch ohne Vorerfahrung verstehen können, was in den Beispielen gezeigt wird. Anmerkungen In den Beispielen werden Sie häufiger IP-Adressen sehen. Diese sind lediglich beispielhaft gewählt und werden eventuell nicht bei Ihnen funktionieren. Die Kapitel führen abwechselnd in femininer und maskuliner Schreibweise durch den Inhalt, um den Lesefluss nicht zu stören. 1.1.2    Was Sie in diesem Buch lernen und nicht lernen werden
Ziel dieses Buchs ist es, Ihnen die Idee hinter Terraform und Infrastructure as Code nahezubringen und Ihnen grundlegende Kenntnisse in Terraform und Terraform-Code zu vermitteln. Hierzu werden »in verschiedenen Clouds«, d. h. bei verschiedenen Cloud-Anbietern, Ressourcen aufgebaut. Sie müssen nicht alle Beispiele durchexerzieren. Es wäre jedoch von Vorteil, wenn Sie Zugang zu einem der vorgestellten Cloud-Anbieter bzw. einer der Technologien haben. Selbstverständlich müssen Sie auch nicht alle Dienste im Portfolio aller Cloud-Anbieter kennen, erklären und verwenden können. Dieses Buch beschränkt sich auf grundlegende Ressourcen. Sollten Sie noch unerfahren sein, was das Arbeiten mit Cloud-Anbietern angeht, empfehlen wir die hauseigenen Tutorials der Cloud-Anbieter. Hier lernen Sie die Grundlagen zum Arbeiten mit dem Cloud-Anbieter Ihrer Wahl. Wenn Sie diese kennen, können Sie sich voll und ganz darauf konzentrieren, die bekannten Ressourcen mithilfe von Terraform aufzubauen, zu verwalten und gegebenenfalls zu entfernen. Für Anwender, die für den Cloud-Provider ein Benutzerkonto ihrer Organisation verwenden, mag es einfacher sein, sich einen neuen Benutzerzugang zu erstellen, der nicht mit ihrer Unternehmensorganisation verbandelt ist. Zum einen reicht das kostenlose Probekonto aus, um die Beispiele in diesem Buch durchzuspielen, zum anderen besteht weniger Risiko, existierende Infrastruktur während Ihrer Experimente zu beeinträchtigen. Darüber hinaus kann es sein, dass Dinge wie Tokens oder technische Benutzer mit den Rechten Ihres Unternehmenszugangs nicht erstellt werden dürfen. Im Zweifel hilft hier Ihr unternehmensinterner Ansprechpartner für den Zugang zu Ihrem Cloud-Anbieter. Zertifizierung zu Terraform Ein Hinweis in eigener Sache: Die Firma HashiCorp bietet eine Zertifizierung zu Terraform an. Wir weisen darauf hin, dass dieses Buch nicht für die Vorbereitung auf die Zertifizierung ausreicht. Sollte eine Zertifizierung geplant sein, verwenden Sie bitte zusätzlich das Lernmaterial, das HashiCorp selbst frei zugänglich bereitstellt. Lesen Sie die gesamte Dokumentation zur Terraform-Sprache HCL. Es werden zum Beispiel detaillierte Fragen zu Funktionen oder auch zur Terraform Cloud gestellt. Dieses Buch hat den Anspruch, Neulingen und Einsteigerinnen die Grundlagen des Arbeitens mit Terraform beizubringen. Sie werden an die Hand genommen und durch die ersten Beispiele geführt. Sie erhalten solide Grundkenntnisse in Terraform wie dem State und in der Terraform-eigenen HCL-Auszeichnungssprache und den darin enthaltenen Funktionen. Sie erhalten Erfahrungswerte zu Dingen wie Ordnerstrukturen und Dateinamenskonventionen, zur Modularisierung des Terraform-Codes und zu den weiteren Schritten nach dem berühmten ersten Schritt. Dieses Buch erhebt keinen Anspruch auf Vollständigkeit. Es ist schlicht nicht das Ziel, alle verfügbaren Konstellationen, Parameter und Sonderfälle bis ins kleinste Detail zu beschreiben. Sie erhalten ein wertvolles Rüstzeug, mit dem Sie gut vorbereitet in Ihre ersten Terraform-Projekte gehen können. Aufgrund der Fortentwicklung von Terraform können Unterschiede im Funktionsumfang zwischen der im Buch beschriebenen Terraform-Version und der bei Erscheinen dieses Buchs aktuellen Version nicht vermieden werden. Im Zweifelsfall gilt die...


Ihre Fragen, Wünsche oder Anmerkungen
Vorname*
Nachname*
Ihre E-Mail-Adresse*
Kundennr.
Ihre Nachricht*
Lediglich mit * gekennzeichnete Felder sind Pflichtfelder.
Wenn Sie die im Kontaktformular eingegebenen Daten durch Klick auf den nachfolgenden Button übersenden, erklären Sie sich damit einverstanden, dass wir Ihr Angaben für die Beantwortung Ihrer Anfrage verwenden. Selbstverständlich werden Ihre Daten vertraulich behandelt und nicht an Dritte weitergegeben. Sie können der Verwendung Ihrer Daten jederzeit widersprechen. Das Datenhandling bei Sack Fachmedien erklären wir Ihnen in unserer Datenschutzerklärung.