Google cloud platform 无法使用terraform停止GCP VM
我尝试使用所需的\u status=“TERMINATED”停止terraform中的GCP VM,但得到以下错误代码: 错误:不支持的参数 在main.tf第24行的资源“google\u compute\u instance”“default”中: 24:所需状态=“已终止” 此处不应出现名为“所需_状态”的参数 完整的地形代码为:Google cloud platform 无法使用terraform停止GCP VM,google-cloud-platform,terraform,Google Cloud Platform,Terraform,我尝试使用所需的\u status=“TERMINATED”停止terraform中的GCP VM,但得到以下错误代码: 错误:不支持的参数 在main.tf第24行的资源“google\u compute\u instance”“default”中: 24:所需状态=“已终止” 此处不应出现名为“所需_状态”的参数 完整的地形代码为: terraform { required_providers { google = { source = "hashicorp
terraform {
required_providers {
google = {
source = "hashicorp/google"
}
}
}
provider "google" {
version = "3.5.0"
credentials = file("cred.json")
project = "project-gcp-25625415"
region = "us-central1"
zone = "us-central1-c"
}
resource "google_compute_instance" "default"{
name = "terra2"
machine_type = "f1-micro"
zone = "us-central1-a"
desired_status = "TERMINATED"
boot_disk {
initialize_params {
image = "debian-cloud/debian-9"
}
}
network_interface {
network = "default"
access_config {
// Ephemeral IP
}
}
}
请查看的发行说明 要能够使用
所需的\u状态字段停止和启动GCE VM实例
,您应使用至少或更新的gcp provider:
计算:添加了管理
google\u compute\u实例
带有所需\u状态
字段的资源
()
Terraform实际上是为声明性操作而设计的,停止实例更像是一种过程性或命令性操作 请注意,InfraQL允许访问所有Google provider方法,可以以非交互方式或交互方式运行
EXEC compute.instances.stop
@instance = 'demo-instance-1',
@project = 'infraql-demo',
@zone = 'australia-southeast1-a';
谢谢Serhii。我将版本改为3.11.0,再次初始化,它成功了。