4 Punkte von ironlung 2023-11-06 | Noch keine Kommentare. | Auf WhatsApp teilen
  • Beim Aufbau von Infrastruktur in der Cloud sollte man Kostenersparnis, schnellere Bereitstellung, Konsistenz, Stabilität und Wiederverwendbarkeit berücksichtigen; statt über die Web-Konsole zu arbeiten, ist es sinnvoll, Infrastruktur mit IaC-Tools aufzubauen
  • Terraform ist Open Source und das am häufigsten verwendete IaC-Tool
  • Um Terraform-Code effizient und wirkungsvoll zu schreiben, ist es wichtig, die von Terraform bereitgestellten Funktionen passend einzusetzen
  • Terraform-Schleifen
    • Allgemeine deklarative Sprachen haben meist keine Schleifen, aber Terraform unterstützt verschiedene Funktionen, mit denen sich Schleifen verwenden lassen
    • Typische Schleifen sind: count, for_each
      • Parameter count: Wiederholung von Ressourcen und Modulen
      • Ausdruck for_each: Wiederholung von Ressourcen, Inline-Blöcken innerhalb von Ressourcen und Modulen
    • Einsatz der einzelnen Schleifen
      • count: geeignet, wenn die zu erstellenden Ressourcen fast identisch sind und sich nicht ändern; ermöglicht eine schnelle und knappe Erstellung
      • for_each: geeignet für Ressourcen mit eindeutigen Namen oder Daten sowie für Ressourcen, die nicht neu erstellt werden sollten; ermöglicht sichere Erstellung und Änderungen
  • Count
    • Der Parameter count akzeptiert ganze Zahlen und erstellt durch Wiederholung komplette Ressourcen oder Module
    • Bei einer Konfiguration mit count kann man über count.index auf den von count erzeugten Index zugreifen
    • Einschränkungen von Count
      • count wiederholt die gesamte Ressource, aber keine Inline-Blöcke innerhalb der Ressource
      • Wenn bei mit count erzeugten Ressourcen ein Wert in der Mitte entfernt wird, werden alle nachfolgenden Werte gelöscht und neu erstellt. Das Endergebnis ist zwar identisch, kann aber problematisch sein, wenn Ressourcen nicht neu erstellt werden dürfen
  • For_each
    • Der Ausdruck for_each iteriert über list, set und map und erstellt durch Wiederholung komplette Ressourcen, Inline-Blöcke innerhalb von Ressourcen und Module
    • Bei einer Konfiguration mit for_each kann man mit each.key und each.value auf den jeweiligen Schlüssel und Wert zugreifen
    • Bei der Verwendung von for_each für Ressourcen werden Listen nicht unterstützt
    • In der Collection werden das zu iterierende set oder map definiert, und in der Config kann man mit each.value die in der Collection definierten Schlüssel und Werte verwenden

Noch keine Kommentare.

Noch keine Kommentare.