通过地形管理自动缩放组



假设我有一个通过terraform管理的自动缩放组。我希望这个自动扩展小组根据我们的工作时间来扩大和缩小规模。

管理ASG的TF模板:

resource "aws_autoscaling_group" "foobar" {
availability_zones        = ["us-west-2a"]
name                      = "terraform-test-foobar5"
max_size                  = 1
min_size                  = 1
health_check_grace_period = 300
health_check_type         = "ELB"
force_delete              = true
termination_policies      = ["OldestInstance"]
}
resource "aws_autoscaling_schedule" "foobar" {
scheduled_action_name  = "foobar"
min_size               = 0
max_size               = 1
desired_capacity       = 0
start_time             = "2016-12-11T18:00:00Z"
end_time               = "2016-12-12T06:00:00Z"
autoscaling_group_name = aws_autoscaling_group.foobar.name
}

正如我们在这里看到的,我必须为行动设定一个特定的日期和时间。

我想要的是:我想在周六晚上9点缩减我目前容量的10%,然后在周一早上6点再次缩减10%。

我怎样才能做到这一点。

非常感谢您的帮助。请让我知道如何度过难关。

该解决方案并不简单,但可行。所需步骤为:

  • 创建一个Lambda函数,以缩小ASG(例如,使用Boto3和Python(
  • 分配具有正确权限的IAM角色
  • 创建Cron触发器;每周六晚上9点";带aws_cloudwatch_event_rule
  • 使用之前创建的Cron触发器和Lambda函数创建aws_cloudwatch_event_target
  • 重复放大

这个模块可能会满足您的需求,您只需要对Lambda进行编码,并使用该模块按计划触发它。

相关内容

  • 没有找到相关文章

最新更新