Ressourcen durch Provisioning bereitstellen
Sie können die Ressourcen mit Terraform oder Terragrunt bereitstellen. Wenn Sie Terraform verwenden, müssen Sie die Konfigurationen in jedem Verzeichnis in einer vorgeschriebenen Folge anwenden. Mit Terragrunt können Sie alle Ressourcen mit einem einzigen Befehl bereitstellen.
Info zu Terraform-Statusdateien
Terraform speichert Statusinformationen, um die verwalteten Infrastrukturressourcen zu überwachen, die bereitgestellten Ressourcen Ihrer Konfiguration zuzuordnen, Metadaten zu überwachen und die Performance für große Infrastruktur-Deployments zu verbessern.
Standardmäßig wird die Datei terraform.tfstate
auf dem lokalen Host gespeichert. Dieses Standardverhalten ist in IT-Umgebungen nicht optimal, in denen mehrere Benutzer die in einer bestimmten Konfiguration definierten Ressourcen erstellen und endgültig löschen müssen. Um das Deployment und die Verwaltung von Ressourcen in einer Mehrbenutzerumgebung zu steuern, speichern Sie die Terraform-Statusdateien in Oracle Cloud Infrastructure Object Storage und geben die Statusdateien und Sperrdateien für alle Benutzer frei. Siehe Objektspeicher für Terraform-Statusdateien verwenden.
Ressourcen mit Terragrunt bereitstellen
Mit Terragrunt können Sie alle Ressourcen in der Topologie mit einem einzigen Befehl bereitstellen. Intern ruft Terragrunt Terraform-Befehle auf und verarbeitet alle in der Konfiguration definierten inter-resource-Abhängigkeiten.
Ressourcen mit Terraform bereitstellen
Wenn Sie die Ressourcen mit Terraform durch Provisioning bereitstellen möchten, müssen Sie die Terraform-Konfiguration in jedem Verzeichnis einzeln in einer vorgeschriebenen Sequenz anwenden.
Topologie ändern
Um die Topologie zu ändern, müssen Sie die Ressourcendefinitionen in den entsprechenden Terraform-Konfigurationen aktualisieren und die überarbeitete Konfiguration dann anwenden. Die Identifizierung der Ressourcendefinitionen, die geändert werden müssen, erfordert einen umfassenden Einblick in den Beispielcode, insbesondere die Terraform-Module, die in jedem Verzeichnis referenziert werden, und die Abhängigkeiten zwischen verschiedenen Regeln.
Alle Ressourcen entfernen
Sie können alle bereitgestellten Ressourcen einfach mit Terraform oder Terragrunt entfernen.
- Gehen Sie zum Verzeichnis
examples/full-deployment
. - Führen Sie einen der folgenden Schritte aus:
- Wenn Terragrunt installiert ist, führen Sie den folgenden Befehl aus:
terragrunt destroy-all
Terragrunt ruft den Befehl
terraform destroy
für Ressourcen in der Konfiguration in einer definierten Sequenz auf.Wenn Sie versuchen,
terragrunt destroy-all
zur Bereinigung eines nicht erfolgreichen oder teilweisen Deployments zu verwenden, kann folgender Fehler auftreten:Error: Unsupported attribute on management_rte_attachment.tf line 8, in module "management_rte_attachement": 8: data.terraform_remote_state.peering_servers.outputs.routing_instance_1_ip_id, |---------------- | data.terraform_remote_state.peering_servers.outputs is object with 3 attributes This object does not have an attribute named "routing_instance_1_ip_id".
Wenn dieser Fehler auftritt, entfernen Sie die Ressourcen, indem Sie
terraform destroy
in jedem Konfigurationsverzeichnis ausführen, wie nachfolgend beschrieben. - Um die Ressourcen mit der Terraform-CLI zu entfernen, führen Sie
terraform destroy
in jedem Konfigurationsverzeichnis unterexamples/full-deployment
in der folgenden Reihenfolge aus.Hinweis:
Warten Sie, bis der Befehl in jedem Verzeichnis ausgeführt wird, bevor Sie mit dem nächsten Verzeichnis fortfahren.tenant/servers management/server_attachment management/servers peering/routing management/access tenant/network management/network peering/network common/compartments common/configuration
- Wenn Terragrunt installiert ist, führen Sie den folgenden Befehl aus: