Ein Tool, um Ihre vorhandenen Azure-Ressourcen unter die Verwaltung von Terraform zu bringen.
Azure Export for Terraform exportiert unterstützte Ressourcen in den Terraform-Status und generiert die entsprechende Terraform-Konfiguration. Es wird erwartet, dass sowohl der Terraform-Status als auch die Konfiguration mit dem Remote-Status der Ressourcen übereinstimmen, d. h. terraform plan
zeigt keinen Unterschied. Der Benutzer kann dann Terraform verwenden, um diese Ressourcen zu verwalten.
Es unterstützt sowohl den Terraform AzureRM-Anbieter als auch den Terraform AzAPI-Anbieter.
Die von aztfexport
generierten Terraform-Konfigurationen erheben keinen Anspruch auf Vollständigkeit und stellen nicht sicher, dass die Infrastruktur aus den generierten Konfigurationen vollständig reproduziert werden kann. Einzelheiten finden Sie unter Einschränkungen).
Vorkompilierte Binärdateien und Windows MSI sind unter „Releases“ verfügbar.
go install github.com/Azure/aztfexport@latest
winget install aztfexport
brew install aztfexport
Unterstützte Versionen:
Importieren Sie den Microsoft-Repository-Schlüssel:
rpm --import https://packages.microsoft.com/keys/microsoft.asc
Fügen Sie das Repository packages-microsoft-com-prod
hinzu:
ver=8 # or 9
dnf install -y https://packages.microsoft.com/config/rhel/${ver}/packages-microsoft-prod.rpm
Installieren:
dnf install aztfexport
Unterstützte Versionen:
Importieren Sie den Microsoft-Repository-Schlüssel:
curl -sSL https://packages.microsoft.com/keys/microsoft.asc > /etc/apt/trusted.gpg.d/microsoft.asc
Fügen Sie das Repository packages-microsoft-com-prod
hinzu:
ver=20.04 # or 22.04
apt-add-repository https://packages.microsoft.com/ubuntu/${ver}/prod
Installieren:
apt-get install aztfexport
yay -S aztfexport
aztfexport
ist eine im $PATH
installierte ausführbare terraform
Datei mit einer Version >= v0.12
erforderlich.
aztfexport
nutzt aztft
, um den Terraform-Ressourcentyp zu identifizieren, der einer Azure-Ressourcen-ID entspricht. Dann führt es unter der Haube terraform import
aus, um jede Ressource zu importieren. Anschließend wird tfadd
ausgeführt, um den Terraform HCL-Code für jede importierte Ressource zu generieren.
Lesen Sie die Azure Export-Dokumentation, die Szenarien und Verwendung behandelt.
aztfexport
erstellt eine Konfigurationsdatei unter $HOME/.aztfexport/config.json
. Diese Datei soll mit dem Befehl aztfexport config [subcommand]
verwaltet werden, der die folgenden Unterbefehle enthält:
get
: Holen Sie sich ein Konfigurationselementset
: Legen Sie ein Konfigurationselement festshow
: Zeigt die vollständige Konfiguration anDerzeit werden die folgenden Konfigurationselemente unterstützt:
installation_id
: Eine UUID, die beim ersten Start erstellt wurde. Wenn auf dem aktuellen Computer Azure CLI oder Azure Powershell installiert ist, hat die UUID bei diesen Tools denselben Wert. Andernfalls wird ein neues erstellt. Dies wird als Kennung im Telemetrie-Trace verwendet.telemetry_enabled
: Aktiviert Telemetrie. Wir verwenden Telemetrie, um Probleme und Verbesserungsbereiche zu identifizieren und dieses Tool für eine bessere Leistung, Zuverlässigkeit und Benutzererfahrung zu optimieren. Wenn Sie unsere Telemetrie deaktivieren möchten, setzen Sie dies auf „false“. Besuchen Sie diese Seite in der Azure Export for Terraform-Dokumentation, auf der die derzeit bekannten Einschränkungen des Tools erläutert werden.