Achten Sie auf bestimmte Einschränkungen und Fehlerbehebungen, wenn Sie Terraform-Konfigurationen als Ressource in vRealize Automation Cloud einbetten.

Einschränkungen für Terraform-Konfigurationen

  • Wenn Sie ein Design mit Terraform-Konfigurationen validieren, wird mit der Schaltfläche TESTEN die Cloud Assembly-Syntax geprüft, aber nicht die Syntax des nativen Terraform-Codes.

    Darüber hinaus validiert die Schaltfläche TESTEN keine den Terraform-Konfigurationen zugeordneten Commit-IDs.

  • Die kürzlich veröffentlichte Version 0.13 von Terraform wird offiziell noch nicht unterstützt.
  • Für eine Cloud-Vorlage, die Terraform-Konfigurationen enthält, erfordert das Klonen der Vorlage in ein anderes Projekt die folgende Problemumgehung.
    1. Kopieren Sie im neuen Projekt auf der Registerkarte Integrationen die repositoryId für Ihre Integration.
    2. Öffnen Sie die Klonvorlage. Ersetzen Sie im Code-Editor die repositoryId durch die von Ihnen kopierte ID.
  • Schließen Sie im Versionskontroll-Repository keine Terraform-Statusdatei mit Konfigurationsdateien ein. Wenn terraform.tfstate vorhanden ist, treten bei der Bereitstellung Fehler auf.

Unterstützte Tag-2-Aktionen für die übergeordnete Terraform-Ressource

Für die übergeordnete Terraform-Ressource können Sie die Terraform-Statusdatei anzeigen oder aktualisieren. Weitere Informationen zu Statusdateiaktionen finden Sie in der umfangreichen Liste der Aktionen unter Welche Aktionen kann ich auf Cloud Assembly-Bereitstellungen ausführen?.

Unterstützte Tag-2-Aktionen für untergeordnete Ressourcen

Nach der Bereitstellung von Terraform-Konfigurationen verstreichen möglicherweise bis zu 20 Minuten, bevor Tag-2-Aktionen für untergeordnete Ressourcen verfügbar werden.

Für untergeordnete Ressourcen in einer Terraform-Konfiguration wird nur der folgenden Teilsatz an Tag-2-Aktionen unterstützt. Weitere Informationen zu den Aktionen finden Sie in der umfangreichen Liste der Aktionen unter Welche Aktionen kann ich auf Cloud Assembly-Bereitstellungen ausführen?.

Anbieter Terraform-Ressourcentyp Unterstützte Tag-2-Aktionen
AWS aws_instance Einschalten
Ausschalten
Neu starten
Zurücksetzen
Azure azurerm_virtual_machine Einschalten
Ausschalten
Neu starten
Anhalten
vSphere vsphere_virtual_machine Einschalten
Ausschalten
Neu starten
Zurücksetzen
Herunterfahren
Anhalten
Snapshot erstellen
Snapshot löschen
Snapshot wiederherstellen
GCP google_compute_instance Einschalten
Ausschalten
Snapshot erstellen
Snapshot löschen

Fehlerbehebung bei der Verfügbarkeit von Tag-2-Aktionen

Vorkonfigurierte Tag-2-Aktionen, die fehlen oder deaktiviert sind, benötigen möglicherweise eine Fehlerbehebung.

Problem Ursache Lösung
Für eine Terraform-Ressource fehlt eine erwartete vorkonfigurierte Tag-2-Aktion im Menü „Aktionen“.

Die Aktion wird für den Anbieter und den Ressourcentyp wie in der vorherigen Liste aufgeführt möglicherweise nicht unterstützt.

Alternativ kann es aufgrund der Ressourcenermittlung und Ressourcenzwischenspeicherung bis zu 20 Minuten dauern, bis die Aktion angezeigt wird.

Überprüfen Sie den Anbieter und den Ressourcentyp im Entwurf.

Warten Sie bis zu 20 Minuten, bis die Datenerfassung abgeschlossen ist.

Auch nachdem 20 Minuten auf die Datenerfassung gewartet wurde, fehlt einer Terraform-Ressource noch eine erwartete Tag-2-Aktion.

Ein Problem mit der Ressourcenermittlung verhindert, dass die Aktion angezeigt wird.

Das kann beispielsweise geschehen, wenn die Ressource versehentlich in einer Cloud-Zone außerhalb des Projekts erstellt wird. Beispielsweise enthält Ihr Projekt nur eine Cloud-Zone mit Cloud-Konto und Region us-east-1, aber die Terraform-Konfiguration enthält eine Anbietersperre für us-west-1, was Sie in der Entwurfsphase nicht geändert haben.

Eine weitere Möglichkeit besteht darin, dass die Datenerfassung nicht funktioniert.

Vergleichen Sie die Cloud-Zonen des Projekts mit den Cloud-Zonen im Entwurf.

Gehen Sie zu Infrastruktur > Verbindungen > Cloud-Konten und überprüfen Sie den Datenerfassungsstatus und die Zeit der letzten erfolgreichen Erfassung für das Cloud-Konto.

Auch wenn keine offensichtlichen Probleme mit dem Ressourcenstatus und der Datenerfassung vorliegen, ist eine Tag-2-Aktion deaktiviert (grau unterlegt). Gelegentlich kann es vorkommen, dass zeitweilige Timing- und Datenerfassungsfehler auftreten. Das Problem sollte innerhalb von 20 Minuten behoben sein.
Die falsche Tag-2-Aktion ist deaktiviert, die basierend auf dem Ressourcenstatus aktiv sein sollte.

So ist z. B. „Ausschalten“ aktiviert und „Einschalten“ deaktiviert, obwohl die Ressource über die Benutzeroberfläche des Anbieters ausgeschaltet wurde.

Der Datenerfassungszeitpunkt kann zu einer vorübergehenden Nichtübereinstimmung führen. Wenn Sie den Betriebszustand von außerhalb vRealize Automation Cloud ändern, dauert es einige Zeit, um die Änderung korrekt wiederzugeben. Warten Sie bis zu 20 Minuten.

Verwenden von benutzerdefinierten Terraform-Anbietern in vRealize Automation Cloud

Wenn Sie einen benutzerdefinierten Terraform-Anbieter erstellt haben und diesen verwenden möchten, führen Sie die folgenden Schritte aus.

  1. Fügen Sie unter dem standardmäßigen Terraform-Verzeichnis im Repository für die Git-Versionskontrolle die folgende Unterverzeichnisstruktur hinzu.

    terraform.d/plugins/linux_amd64

  2. Fügen Sie dem Verzeichnis linux_amd64 die Go-Binärdateien Ihres benutzerdefinierten Terraform-Anbieters hinzu.

    Standardmäßig wird von terraform init in diesem Verzeichnis nach benutzerdefinierten Anbieter-Plug-ins gesucht.

Hinweis: In VMware kommt es gelegentlich vor, dass ein benutzerdefinierter Terraform-Anbieter nicht ausgeführt werden kann und eine no such file or directory-Meldung sendet.

Versuchen Sie in diesem Fall, die Go-Binärdateien des benutzerdefinierten Anbieters bei deaktiviertem CGO (auf Null gesetzt) neu zu kompilieren. CGO wird für Go-Pakete verwendet, die C-Code aufrufen.