HashiCorp Terraform ist ein IaC-Tool (Infrastructure as Code), mit dem Sie eine Cloud-Infrastruktur bereitstellen und verwalten können. Terraform bietet Plug-ins, die als Anbieter bezeichnet werden und mit denen Sie mit Cloud-Anbietern und anderen APIs interagieren können. Sie können mit dem Terraform-Anbieter für Google Cloud bereitstellen und verwalten Google Cloud-Ressourcen, einschließlich Artifact Registry.
So funktioniert Terraform
Terraform hat eine deklarative, konfigurationsorientierte Syntax, mit der Sie die Infrastruktur beschreiben können, die Sie in Ihrem Google Cloud-Projekt bereitstellen möchten. Nachdem Sie diese Konfiguration in einem oder mehreren Terraform-Konfigurationsdateien können Sie mit der Terraform-Befehlszeile anwenden. Artifact Registry-Ressourcen konfigurieren.
In den folgenden Schritten wird die Funktionsweise von Terraform erläutert:
- Sie beschreiben die Infrastruktur, die Sie bereitstellen möchten, in einer Terraform-Konfigurationsdatei. Sie müssen keinen Code schreiben, der beschreibt, wie die Infrastruktur bereitgestellt wird. Terraform stellt die Infrastruktur für Sie bereit.
- Sie führen den Befehl
terraform plan
aus, der Ihre Konfiguration auswertet und einen Ausführungsplan generiert. Sie können den Plan prüfen und bei Bedarf Änderungen vornehmen. -
Anschließend führen Sie den Befehl
terraform apply
aus, der die folgenden Aktionen ausführt:- Es stellt Ihre Infrastruktur gemäß Ihrem Ausführungsplan bereit, indem es die entsprechenden Artifact Registry APIs im Hintergrund ausführen.
- Es wird eine Terraform-Zustandsdatei erstellt, eine JSON-Datei, die die Ressourcen in Ihrer Konfigurationsdatei den Ressourcen in der realen Infrastruktur zuordnet. Terraform verwendet diese Datei, um den aktuellen Status Ihrer Infrastruktur zu erfassen und zu bestimmen, wann Ressourcen erstellt, aktualisiert und gelöscht werden müssen.
-
Wenn Sie anschließend
terraform apply
ausführen, verwendet Terraform die Zuordnung in der Zustandsdatei, um die vorhandene Infrastruktur mit dem Code zu vergleichen und bei Bedarf Aktualisierungen vorzunehmen:- Wenn ein Ressourcenobjekt in der Konfigurationsdatei definiert ist, im wird sie von Terraform erstellt.
- Wenn ein Ressourcenobjekt in der Zustandsdatei vorhanden ist, aber eine andere Konfiguration als die Konfigurationsdatei hat, aktualisiert Terraform die Ressource entsprechend Ihrer Konfigurationsdatei.
- Wenn ein Ressourcenobjekt in der Zustandsdatei mit der Konfigurationsdatei übereinstimmt, lässt Terraform die Ressource unverändert.
Terraform-basierte Anleitungen für Artifact Registry
In der folgenden Tabelle sind alle Terraform-basierten Anleitungen und Tutorials für die Artifact Registry aufgeführt:
Leitfaden | Details |
---|---|
Standardrepository mit Terraform erstellen | In dieser Anleitung wird beschrieben, wie Sie mit Terraform ein Repository im Standardmodus erstellen. |
Remote-Repository mit Terraform erstellen | In dieser Anleitung wird beschrieben, wie Sie mit Terraform ein Repository im Remote-Modus erstellen. |
Repository im virtuellen Modus mit Terraform erstellen | In dieser Anleitung wird beschrieben, wie Sie mit Terraform ein Repository im virtuellen Modus erstellen. |
Terraform-Module und -Blueprints für Artifact Registry
Module und Blueprints unterstützen Sie bei der Automatisierung der Bereitstellung und Verwaltung von Skalierbare Google Cloud-Ressourcen Ein Modul ist ein wiederverwendbarer Satz von Terraform-Konfigurationsdateien, der eine logische Abstraktion von Terraform-Ressourcen erstellt. Ein Blueprint ist ein Paket aus bereitstellbaren und wiederverwendbaren Modulen und einer Richtlinie, mit der eine bestimmte Lösung implementiert und dokumentiert wird.
In der folgenden Tabelle sind alle Module und Blueprints im Zusammenhang mit Artifact Registry:
Modul oder Entwurf | Details |
---|---|
artifact-registry | Artifact Registry-Repositories erstellen und verwalten |
secure-cicd | Erstellt eine sichere CI/CD-Pipeline in Google Cloud |
gcloud | Führt Google Cloud CLI-Befehle in Terraform aus |
Terraform-Ressourcen für Artifact Registry
Ressourcen sind die grundlegenden Elemente der Terraform-Sprache. Jeder Ressourcenblock beschreibt ein oder mehrere Infrastrukturobjekte, z. B. virtuelle Netzwerke oder Compute-Instanzen.
In der folgenden Tabelle sind die Terraform-Ressourcen aufgeführt, die für die Artifact Registry verfügbar sind:
Dienst | Terraform-Ressourcen | Datenquelle |
---|---|---|
Artifact Registry |
|
Nächste Schritte
- Terraform-Codebeispiele für Artifact Registry
- Dokumentation zu Terraform in Google Cloud
- Google Cloud-Anbieterdokumentation in HashiCorp
- Infrastruktur als Code für Google Cloud