Terraform Ersteinstellung der Statusdatei

8

Gibt es eine Möglichkeit, die terraform-Statusdatei aus der vorhandenen Infrastruktur zu erstellen? Beispiel: Ein AWS-Konto enthält bereits einige Dienste (z. B. Standard-VPC).

Aber Terraform, scheint nur die Ressourcen zu kennen, es schafft. Also,

  1. Was ist der beste Weg, um eine bestehende AWS-Infrastruktur in Terraform-Code
  2. zu migrieren?
  3. Ist es möglich, eine Ressource manuell hinzuzufügen und die Statusdatei manuell zu ändern (schlechte Effekte?)

Aktualisieren

Terraform 0.7.0 unterstützt das Importieren einzelner Ressourcen.

    
Shan 22.01.2016, 17:45
quelle

2 Antworten

4

Für relativ kleine Dinge war es ein wenig erfolgreich, eine Zustandsdatei manuell zu stubben, um Ressourcen hinzuzufügen, die ich dann zu Terraform überging (insbesondere mit bereits existierenden VPCs und Subnetzen und dann Terraform zum Anwenden von Sicherheitsgruppen usw.) ).

Für etwas Komplizierteres gibt es ein inoffizielles Werkzeug namens terraforming , von dem ich gehört habe, dass es ziemlich gut ist, einen Terraform-Zustand zu erzeugen Dateien, aber auch mit bereits vorhandenen Statusdateien zusammengeführt werden. Ich habe es nicht gegeben, aber es könnte einen Blick wert sein.

Aktualisieren

Seit ​​Terraform 0.7 hat Terraform jetzt die erste Klasse Unterstützung für den Import vorhandener Ressourcen mithilfe des Befehlszeilentools import .

Ab 0.7.4 wird die vorhandene Ressource in die Statusdatei importiert, aber keine Konfiguration für die Ressource generiert. Wenn dann ein plan (oder ein apply ) versucht, wird Terraform zeigen, dass er diese verwaiste Ressource zerstören will. Bevor Sie apply ausführen, müssen Sie die Konfiguration erstellen, die der Ressource entspricht, und dann sollten alle zukünftigen plan s (und apply s) keine Änderungen an der Ressource anzeigen und die importierte Ressource speichern.

>     
ydaetskcoR 22.01.2016 23:09
quelle
0

Verwenden Sie Terraforming Ссылка . Bis dato kann es die meisten der Dateien * .tfstate und * .tf mit Ausnahme von Vpc-Peering generieren.

    
padmakarojha 14.06.2016 16:54
quelle