Terraform的monitor_autoscale_setting无endtime属性,如何配置周末自动缩放?
解决方案
目前Terraform的azurerm_monitor_autoscale_setting资源的**重复周期(recurrence)**配置块中,确实没有直接对应Azure门户里endtime的属性。你可以通过以下两种方式实现类似需求:
用固定日期配置替代重复周期
如果你的周末缩放规则有明确的有效期范围,可以放弃recurrence块,改用fixed_date块定义起始和结束时间,示例代码如下:profile { name = "Weekends" capacity { default = 1 minimum = 1 maximum = 1 } fixed_date { start = "2024-01-06T00:00:00-08:00" end = "2024-12-29T23:59:59-08:00" timezone = "Pacific Standard Time" } }这种方式适合有明确起止时间的规则,但无法自动重复每周周末。
通过Azure REST API补充配置
如果必须保留每周重复的规则并设置结束时间,可以在Terraform部署完成后,调用Azure Monitor的REST API更新自动缩放配置,添加recurrence.endTime参数。你可以用Terraform的null_resource配合local-exec执行Azure CLI或curl命令来完成这个操作。
另外,你也可以在Terraform官方GitHub仓库提交功能请求,推动官方添加该属性的支持。
内容的提问来源于stack exchange,提问作者Uday Kiran
相关产品推荐
相关产品推荐

