Terraform, entwickelt von Hashicorp, ist eine Infrastruktur als Code -Dienstprogramm. Sie ermöglicht es Ihnen, Cloud -Infrastruktur schnell und effizient bereitzustellen. Mit Terraform können Sie Cloud -Ressourcen in einigen Codezeilen erstellen, ändern und zerstören. Es unterstützt Cloud -Anbieter wie Amazon AWS, Google Cloud, Microsoft Azure und mehr, einschließlich benutzerdefinierter Cloud -Infrastruktur.
In diesem Tutorial werden das Abhängigkeits -Meta -Argument unterrichtet, das Sie bei der Bereitstellung von Ressourcen in der Cloud verwenden können.
Voraussetzungen
Bevor wir mit dem Tutorial fortfahren, benötigen Sie:
Achtung: Wir werden Google Cloud als Anbieter für die Beispielkonfigurationen und -Mublikationen verwenden. Sie können sich auch für andere unterstützte Anbieter entscheiden. Der Code in diesem Tutorial wird jedoch nicht an anderen Anbietern getestet.
Was ist Terraform abhängig_on?
Die Abhängigkeit_on ist ein Meta -Tag, mit dem Sie Abhängigkeiten zwischen Ressourcen und Modulen angeben können. Sie können beispielsweise eine Google Cloud -Instanz haben, die von einem bestimmten Eimer abhängt. Durch die Verwendung des Tags abhängig_on ermöglicht Terraform die korrekte Erstellung oder Zerstörung von Ressourcen. Wenn Terraform das Depled_on -Modul sieht, erstellt oder tötet es zunächst den Eimer, bevor die in der Instanz angegebenen Aktionen ausgeführt werden.
Um den Parameter abhängig_on für Modul- und Ressourcenblöcke zu verwenden.13 und darüber.
Beispiel Anwendungsfall
Lassen Sie uns ein einfaches Beispiel verwenden, um das Abhängigkeitsargument in Terraform zu veranschaulichen.
Hinweis: Wir gehen davon aus.
Erstellen Sie zunächst ein Arbeitsverzeichnis als:
MKDIR Terraform-Tutorials
Navigieren Sie zum erstellten Verzeichnis:
CD Terraform-Tutorials
Erstellen Sie eine Terraformdatei und rufen Sie sie ab, hängt davon ab.tf
Berührung hängt davon ab.tf
Fügen Sie als Nächstes Ihren bevorzugten Editor eine Beispielkonfigurationsdatei hinzu, wie gezeigt:
Terraform
fordert_providers
AWS =
Source = "Hashicorp/Google"
Anbieter "Google"
Anmeldeinformationen = Datei ("GCP-Conf.json ")
Project = "Fine-Climber-318807"
Region = "US-Central1"
Zone = "US-Central1-C"
Ressource "google_storage_bucket" "my_archive"
name = "my_archive"
location = "US-Central1-a"
Daten "google_compute_image" "my_ubuntu_image"
family = "ubuntu-20"
Project = "Fine-Climber-318807"
Ressource "google_compute_instance" "Standard"
name = "Ubuntu-instance"
machine_type = "e2-micro"
Zone = "US-Central1-A" "
Boot-Diskette
initialize_params
Bild = "Daten.google_compute_image.my_ubuntu_image.self_link "
Scratch_disk
interface = "scsi" "
Netzwerkschnittstelle
network = "Standard"
access_config
Abhängig von Folgendes_on = [google_storage_bucket.my_archive]
Speichern Sie die Datei und schließen Sie den Editor.
In der Beispiel -Terraform -Datei beginnen wir damit, den Anbieter wie Google einzurichten und alle erforderlichen Anmeldeinformationen hinzuzufügen.
Hinweis: Überprüfen Sie die Dokumentation, um zu erfahren, wie Sie Terraform für Google Cloud einrichten.
Als nächstes erstellen wir einen Google Cloud -Bucket und geben alle erforderlichen Parameter an. Als Nächst.
Überprüfen Sie die Konfigurationsdatei enthält keinen Syntaxfehler als:
Ubuntu@CS: ~/Terraform-Tutorials $ Terraform Validate
Erfolg! Die Konfiguration ist gültig.
Wenn die Konfiguration gültig ist, sollten Sie eine Erfolgsnachricht sehen, wie oben gezeigt.
Führen Sie die Datei aus, um die erforderlichen Ressourcen als:
Terraform gelten
Geben Sie "Ja" in die Eingabeaufforderung ein, um die Änderungen zu bestätigen.
Wenn Sie die Google Cloud -Details korrekt konfiguriert haben, stellt Terraform die angegebenen Ressourcen vor.
Einpacken
In diesem Tutorial werden Sie in den Parameter Terraform abhängt und wie Abhängigkeiten für Ressourcen und Module erstellt werden. Wenn Sie neu in Terraform sind, überprüfen Sie die Dokumentation, um mehr zu erfahren.