Terraform配置GCP Autoscaler调度规则报错求助
解决Terraform配置GCP Autoscaler调度规则时
scaling_schedules块不支持的问题 你当前的问题是把scaling_schedules块放在了google_compute_autoscaler资源的根层级,而Terraform的GCP Provider要求这个块必须嵌套在autoscaling_policy内部,同时你的time_zone参数格式也不正确,这两点共同导致了报错。
修正方案
- 将
scaling_schedules块移动到autoscaling_policy块内部 - 把
time_zone的值改为标准时区格式,比如"UTC"(原代码的"utc/utc"是无效值)
修正后的代码片段
resource "google_compute_autoscaler" "autoscaler" { name = "${var.gcp_env}-${var.gcp_project}-autoscaler" zone = "${var.gcp_region}-a" target = google_compute_instance_group_manager.mig.id autoscaling_policy { mode = "ON" cooldown_period = 60 cpu_utilization { target = 0.9 } max_replicas = 2 min_replicas = 1 # 将scaling_schedules移至autoscaling_policy块内 scaling_schedules { name = "every-weekday-morning" description = "Increase to 2 every weekday at 7AM for 12 hours." min_required_replicas = 2 schedule = "0 9 * * MON-FRI" time_zone = "UTC" # 修正为标准时区格式 duration_sec = 32400 } } }
验证步骤
先执行terraform plan确认配置无语法错误,再运行terraform apply -auto-approve即可完成部署。
内容的提问来源于stack exchange,提问作者DarkDead
相关产品推荐
相关产品推荐

