首页 > 解决方案 > 如何在 terraform 脚本中使用 Google gcloud 命令

问题描述

我正在使用 terraform 脚本创建一个 AZURE DNS 区域和 NS 记录。

resource "azurerm_resource_group" "dns_management" {
name     = "dns-managment"
location = "West US"
}

resource "azurerm_dns_zone" "mydomaincom" {
name                = "mdomain.com"
resource_group_name = "${azurerm_resource_group.dns_management.name}"
}

resource "azurerm_dns_a_record" "projectmydomain" {
name                = "project"
zone_name           = "${azurerm_dns_zone.mydomaincom.name}"
resource_group_name = "${azurerm_resource_group.dns_management.name}"
ttl                 = 300
records             = ["127.0.0.1"]
}

我想将这些 AZURE NS 记录复制到 gcp 云 DNS 托管区域。我正在尝试Gcloud commands使用 terraform 脚本来做到这一点。如何在 Terraform 中使用 Gcloud 命令?

标签: azureterraformgcloudgoogle-cloud-dnsazure-dns

解决方案


Google 和 Hashicorp 共同为 GCP 开发了一个 Terraform 提供程序:

https://cloud.google.com/docs/terraform

gcloud是 Google 的 GCP CLI,但它是与 Terraform 提供者不同的工具。

您可以直接使用 Terraform 提供程序gcloud、SDK 或 REST API 对 Cloud DNS 进行编程。

不幸的是,我怀疑,虽然使用 Terraform 应该很熟悉,但它使用的 Google 提供程序和 Cloud DNS API 将与 Azure 等效项有很大不同,您必须学习如何将脚本映射到 GCP。


推荐阅读