Infrastructure as Code richtig umgesetztMit 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 Dieses Buch ist das erste deutschsprachige Werk zu Terraform.Inkl. umfassender Kommandoreferenz und Best Practices für den alltäglichen Betrieb.Aus dem Inhalt:Infrastructure as CodeWas ist Terraform?Installation und alle GrundlagenProvider: Konfiguration und Beispiel-SetupsState Der Zustand der UmgebungVariablen und DatenquellenHCL: Terraform programmierenUpdates und Day-2-OperationsTerragrunt und weitere ToolsBest Practices: Terraform richtig nutzenMulti-Cloud-Deployments

Konfigurationsverwaltung und State, Sicherheit, Updates und Day-2-Management

Inhalt

Materialien zum Buch ... 12
1. Einleitung ... 13

1.1 ... Gliederung ... 13
1.2 ... Voraussetzungen für das Arbeiten mit Terraform ... 16
1.3 ... Zu den Autoren dieses Werks ... 17

2. Was ist Terraform? ... 21

2.1 ... Cloud Computing und seine Auswirkungen ... 21
2.2 ... Das Prinzip Infrastructure as Code ... 22
2.3 ... Terraform, seine Geschichte und seine Funktionsweise ... 23
2.4 ... Wie funktioniert die Cloud? ... 24
2.5 ... Ansible, Chef, Salt, Puppet, Terraform -- welches Werkzeug für welche Aufgabe? ... 26

3. Erste Schritte mit Terraform ... 29

3.1 ... Installation von Terraform ... 29
3.2 ... Schnelleinstieg: Ein typischer Terraform-Workflow ... 40
3.3 ... Konventionen für Dateinamen und Unterordner ... 53
3.4 ... Ordnerstruktur ... 56

4. Provider ... 57

4.1 ... Provider finden und installieren ... 57
4.2 ... Konfiguration und Authentifizierung ... 66
4.3 ... Szenarien: So deployen Sie Terraform ... 68

5. State -- der Zustand der Umgebung ... 185

5.1 ... Interaktion mit dem State ... 187
5.2 ... Format ... 189
5.3 ... Speicherort des State ... 190
5.4 ... State durch Locking verriegeln ... 208
5.5 ... Sicherheit ... 210

6. Variablen und Datenquellen ... 213

6.1 ... Was sind Variablen? ... 214
6.2 ... Eingabevariablen setzen und verwenden ... 214
6.3 ... Ausgabewerte (Outputs) ... 238
6.4 ... Lokale Variablen oder Werte ... 241
6.5 ... Datenquellen (Data Sources) ... 243
6.6 ... Interne Werte und Block-lokale Werte ... 247

7. Terraform programmieren -- die Sprache HCL ... 255

7.1 ... Logikfunktionen ... 255
7.2 ... Provisioner als Schnittstellen zum Konfigurationsmanagement ... 268
7.3 ... Abhängigkeiten verwalten ... 290
7.4 ... Arbeiten mit Terraform-Modulen ... 295
7.5 ... Deployments versionieren ... 304
7.6 ... Code modularisieren und strukturieren: Best Practices für Terraform ... 309
7.7 ... Funktionen ... 315
7.8 ... Ausdrücke und Expressions ... 332
7.9 ... Nützliche Funktionen und Beispiele ... 338

8. Updates und Day 2 Operations ... 353

8.1 ... Backup, Backup, Backup ... 353
8.2 ... Überprüfung und automatische Qualitätskontrollen für Terraform-Code ... 354
8.3 ... Mit Terraform arbeiten ... 355
8.4 ... Überwachung (Monitoring) der Umgebung ... 355
8.5 ... Updates und Änderungen einspielen ... 359
8.6 ... Lifecycle-Management mit Terraform ... 369
8.7 ... Day 2 Operations für Terraform ... 379

9. Erfahrungswerte, Tipps und Tricks ... 387

9.1 ... Versionsverwaltung nutzen ... 387
9.2 ... Remote Backends nutzen ... 390
9.3 ... Terraform-Code strukturieren durch Nutzung von Modulen ... 390
9.4 ... Terraform-Code und Repository logisch strukturieren ... 398
9.5 ... Terraform-Code prüfen, kontrollieren und testen ... 404
9.6 ... Variablen mit Standardwert null ... 411
9.7 ... Zugriff auf geschachtelte Listen ... 412

10. Vorgefertigtes Beispiel ... 415

10.1 ... Szenario ... 415
10.2 ... Vorbereitung ... 416
10.3 ... Das Deployment ... 419

11. Ausblick ... 423

11.1 ... Automate the Automation ... 423
11.2 ... Terraform Cloud und Enterprise ... 425
11.3 ... Terragrunt, Timon und weitere Tools ... 437
11.4 ... Cloud Development Kit Terraform (CDKTF) ... 442

12. Kommandoreferenz ... 445

12.1 ... Allgemeine Parameter ... 445
12.2 ... Wichtige Befehle ... 446
12.3 ... Weniger häufig verwendete Befehle ... 458
12.4 ... Konfigurationsoptionen für die Terraform-CLI (alias Terraform Settings) ... 485

Index ... 491
Titel
Terraform
Untertitel
Das Praxisbuch für DevOps-Teams und Administratoren
EAN
9783836289153
Format
E-Book (epub)
Hersteller
Veröffentlichung
05.04.2023
Digitaler Kopierschutz
frei
Dateigrösse
7 MB
Anzahl Seiten
495
Lesemotiv