You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Terraform出现Unsupported block type错误:autoscaling_group的scaling_policy问题

解决Terraform配置AWS Auto Scaling Group时的Unsupported block type错误

报错原因

aws_autoscaling_group资源本身不支持嵌套的scaling_policy块,扩缩容策略需要通过独立的aws_autoscaling_policy资源定义,同时配合CloudWatch指标告警触发策略执行。

修正步骤及示例代码

  1. 移除ASG资源内的scaling_policy块
    直接删除你当前aws_autoscaling_group "ASG_asg"里的scaling_policy相关代码块。

  2. 定义独立的扩容策略
    这里提供两种常用的扩容配置方式:

    • 步骤扩容策略(适合自定义不同阈值的扩缩容幅度):
      resource "aws_autoscaling_policy" "cpu_scale_out" {
        name                   = "cpu-scale-out-policy"
        scaling_adjustment     = 1
        adjustment_type        = "ChangeInCapacity"
        autoscaling_group_name = aws_autoscaling_group.ASG_asg.name
      }
      
    • 目标追踪策略(自动维持CPU使用率在目标值,无需手动配置告警):
      resource "aws_autoscaling_policy" "cpu_target_tracking" {
        name                   = "cpu-target-tracking-policy"
        autoscaling_group_name = aws_autoscaling_group.ASG_asg.name
        policy_type            = "TargetTrackingScaling"
      
        target_tracking_configuration {
          predefined_metric_specification {
            predefined_metric_type = "ASGAverageCPUUtilization"
          }
      
          target_value = 70.0
        }
      }
      
  3. 配置CloudWatch告警(仅步骤扩容策略需要)
    如果用步骤扩容,需要创建告警触发策略:

    resource "aws_cloudwatch_metric_alarm" "high_cpu" {
      alarm_name          = "high-cpu-alarm"
      comparison_operator = "GreaterThanThreshold"
      evaluation_periods  = "2"
      metric_name         = "CPUUtilization"
      namespace           = "AWS/EC2"
      period              = "60"
      statistic           = "Average"
      threshold           = "70"
      alarm_description   = "EC2平均CPU使用率超过70%时触发扩容"
      alarm_actions       = [aws_autoscaling_policy.cpu_scale_out.arn]
    
      dimensions = {
        AutoScalingGroupName = aws_autoscaling_group.ASG_asg.name
      }
    }
    

说明

  • 目标追踪策略会自动生成对应的CloudWatch告警,适合简单的指标维持场景;
  • 步骤扩容策略可自定义多阈值对应不同扩缩容幅度,灵活性更高,但需手动配置告警。

内容的提问来源于stack exchange,提问作者Ankit Singh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.17 17:30:00