ai newsDo., 15. Okt.
EilmeldungMeta and Apple team up to make Muse AI models run better on Macs

Terraform Google Cloud Provider 8.0 ist allgemein verfügbar

HashiCorp hat Version 8.0 des Terraform Providers für Google Cloud veröffentlicht. Das Major-Release passt das Standard-Load-Balancing für zwei Compute Engine Ressourcen an und entfernt Ressourcen, die zu eingestellten Google Cloud Diensten gehören.

InfoQFreitag 10:00 · 09.10.DE3 Min. Lesezeit
Bild: InfoQ

Die auffälligste Verhaltensänderung betrifft google_compute_backend_service und google_compute_global_forwarding_rule. Deren standardmaessig gesetztes load-balancing_scheme wechselt nun von EXTERNAL zu EXTERNAL_MANAGED. Das bedeutet, dass Konfigurationen, die dieses Feld nicht setzen, den neuen externen Application Load Balancer verwenden statt des klassischen. Teams, die auf das klassische Verhalten angewiesen sind, muessen load_balancing_scheme = "EXTERNAL" ausdruecklich setzen, da ein Plan sonst möglicherweise Aenderungen an bestehenden Load Balancern vorschlaegt.

Das Release entfernt zudem Ressourcen und Datenquellen. Der Grund ist, dass die zugrunde liegenden Dienste abgeschaltet oder ersetzt wurden. Zu den entfernten Ressourcen gehoeren google_iap_brand und google_iap_client (nach der Abschaltung der IAP OAuth Admin APIs), die drei google_notebooks_* Ressourcen (Nutzer sollten zu google_workbench_instance wechseln), google_ml_engine_model sowie die BeyondCorp Ressourcen fuer App Connection, Connector und Gateway, fuer die Security Gateway Ressourcen als Ersatz dienen. google_vertex_ai_schedule wird durch google_colab_schedule ersetzt. Konfigurationen, die auf eine dieser Ressourcen verweisen, muessen vor dem Upgrade angepasst werden.

Beim Schema-Verhalten wurden Attribute, bei denen die Reihenfolge keine Bedeutung hat, von Listen in Sets umgewandelt. Dazu gehoeren Felder in Compute Service Attachments, in der GKE Logging- und Monitoring-Konfiguration sowie in Cloud Security Compliance Frameworks. HashiCorp erklaert, dass dies dauerhafte Diffs verhindert, wenn eine API Werte in einer anderen Reihenfolge zurueckgibt als in der Konfiguration angegeben.

Die Validierung ist fuer einige Google Cloud APIs strikter. Beispielsweise ist source_contents jetzt fuer google_workflows_workflow erforderlich. Ausserdem wird claim_mapping benoetigt, wenn Workforce Identity Pool Provider SCIM Tenants erstellt werden.

Einige Statusaenderungen, etwa bestimmte Konvertierungen von Integer zu String, werden automatisch migriert. Andere erfordern jedoch Anpassungen an der Konfiguration.

Die Ankündigung fasst zudem die Faehigkeiten aus der 7.x-Aera zusammen, auf denen 8.0 aufbaut. Der Provider unterstuetzt jetzt Terraform List Resources. Diese Ressourcen funktionieren mit dem terraform query Workflow.

Damit laesst sich bestehende Infrastruktur ausserhalb des States durchsuchen und optional koennen Resource- und Import-Konfigurationen erstellt werden. Die Abdeckung umfasst Compute Engine, IAM, BigQuery, Pub/Sub, Secret Manager, Migration Center und Network Services. Die Unterstuetzung fuer Resource Identity wurde ausgebaut.

Sie bietet Providern nun eine klare Moeglichkeit, ein Remote-Objekt zu repraesentieren. Dies kann neben traditionellen IDs auch fuer Imports genutzt werden. Write-only-Attribute uebermitteln sensitive Werte an APIs, ohne sie zu speichern.

Sie umfassen jetzt auch private Zertifikatsschluessel, AlloyDB Passwoerter und IAP Credentials.

Der Provider wird gemeinsam vom Google Cloud Engineering Team, HashiCorp und der Terraform Community entwickelt, und 8.0 ist in der Terraform Registry verfuegbar. Der Beitrag enthaelt keine Benchmarks oder Verbreitungszahlen und liste nicht jede entfernte Ressource auf, daher sind der Upgrade Guide und das GitHub Changelog die massgeblichen Referenzen.

Teams, die OpenTofu einsetzen, koennen den Grossteil des Release uebernehmen, jedoch nicht alles. Die Breaking Changes des Providers umfassen den EXTERNAL_MANAGED Standard, entfernte Ressourcen und die Listen-zu-Sets-Konvertierungen. Diese Aenderungen liegen im Provider selbst und greifen unabhaengig von der CLI. Write-only-Attribute benoetigen OpenTofu 1.11 oder neuer, die Version, in der sie eingefuehrt wurden.

Der Discovery-Workflow, der Terraform zum Abfragen und Auflisten von Ressourcen verwendet, hat kein Equivalent in OpenTofu. Ein Feature Request fuer tofu query (issue #3787) ist noch offen. Diese Teams werden daher weiterhin Import Blocks und generierte Konfigurationen fuer ihre bestehende Infrastruktur nutzen.

Ob OpenTofu Resource Identity unterstuetzt, war zum Zeitpunkt der Erstellung noch nicht bestaetigt, daher sollten Teams, die identity-basierte Imports planen, zunaechst das OpenTofu Changelog pruefen. Teams sollten ausserdem vor dem Fixieren der Version sicherstellen, dass der 8.0er Provider-Build in der OpenTofu Registry verfuegbar ist.

Finden Sie die Fehler, die Ihre Tests verpassen. Antithesis nutzt deterministische Simulation, um tausende Fehlerszenarien zu durchleuchten und schwer reproduzierbare Bugs aufzudecken, bevor sie in die Produktion gelangen. Sehen Sie selbst, wie es funktioniert.

Automatisch übersetzt. Das Original auf Englisch ist unten aufklappbar.

Original (Englisch) anzeigen

The most visible behavioral change affects google_compute_backend_service and google_compute_global_forwarding_rule. Their default load-balancing_scheme now shifts from EXTERNAL to EXTERNAL_MANAGED. This means configurations that don't set the field will use the new external Application Load Balancer instead of the Classic one. Teams that depend on Classic behavior must set load_balancing_scheme = "EXTERNAL" explicitly, or a plan may propose changes to existing load balancers.

The release also removes resources and data sources. This is because their backing services have been shut down or replaced. Removed resources include google_iap_brand and google_iap_client (after the IAP OAuth Admin APIs shutdown), the three google_notebooks_* resources (users should move to google_workbench_instance ), google_ml_engine_model, and the BeyondCorp app connection, connector, and gateway resources, with Security Gateway resources as the replacement. google_vertex_ai_schedule is replaced by google_colab_schedule. Configurations referencing any of these must be updated before upgrading.

On schema behavior, attributes where ordering carries no meaning have changed from lists to sets. These include fields in Compute Service Attachments, GKE logging and monitoring configuration, and Cloud Security Compliance Frameworks. HashiCorp says this prevents perpetual diffs when an API returns values in a different order than the configuration. Validation is stricter for some Google Cloud APIs. For example, source_contents is now required for google_workflows_workflow. Also, claim_mapping is needed when creating Workforce Identity Pool Provider SCIM tenants. Some state changes, like some integer-to-string conversions, migrate automatically. But others need configuration edits.

The announcement also summarizes 7.x-era capabilities that 8.0 builds on. The provider now supports Terraform list resources. These resources work with the terraform query workflow. You can search for existing infrastructure outside of the state and optionally create resource and import configurations. Coverage spans Compute Engine, IAM, BigQuery, Pub/Sub, Secret Manager, Migration Center, and Network Services. Resource Identity support grew. It now offers providers a clear way to represent a remote object. This can be used for import, along with traditional IDs. Write-only attributes send sensitive values to APIs without saving them. They now include certificate private keys, AlloyDB passwords, and IAP credentials.

The provider is developed jointly by the Google Cloud engineering team, HashiCorp, and the Terraform community, and 8.0 is available in the Terraform Registry. The post does not include benchmarks or adoption figures, and it does not list every removed resource, so the upgrade guide and GitHub changelog are the authoritative references.

Teams running OpenTofu can adopt most of the release, but not all of it. The provider's breaking changes include the EXTERNAL_MANAGED default, removed resources, and list-to-set conversions. These changes are in the provider and apply no matter the CLI. Write-only attributes need OpenTofu 1.11 or later, which is the version that introduced them.

The discovery workflow using Terraform to query and list resources has no equivalent in OpenTofu. A feature request for a tofu query ( issue #3787 ) is still pending. So, those teams will continue using import blocks and generated configuration for their current infrastructure.

OpenTofu's support for Resource Identity was not confirmed at the time of writing, so teams that plan to use identity-based import should check the OpenTofu changelog first. Teams should also verify that the 8.0 provider build is available in the OpenTofu registry before pinning it.

Find the bugs your tests miss. Antithesis uses deterministic simulation to explore thousands of failure scenarios, uncovering hard-to-reproduce bugs before they reach production. See how it works.

Originaltitel: HashiCorp Relased Terraform Google Cloud Provider 8.0 in General AvailabilityQuelle: InfoQ (InfoQ). Original öffnen
Terraform Google Cloud Provider 8.0 ist allgemein verfügbar · AI News