作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我们有一个基于 CPU 和内存为 ecs 容器化应用程序配置目标跟踪自动缩放的简单示例。我们通过以下代码自动配置了 4 个警报(2 个 CPU - 1 个放大,1 个缩小,2 个内存,1 个放大和 1 个缩小)
我们看到,当 cloudwatch 警报触发自动扩展时,我们的 ecs 服务任务会立即自动扩展(在 ecs 端,会立即出现事件以向上设置所需的计数)。但是,当 cloudwatch 警报触发自动缩减时,我们观察到不同的行为:
在 cloudwatch 警报方面,我们观察到警报总是在预期的扩展和缩减时响起,我们认为问题出在 ecs 方面。
自动缩放代码如下:
resource aws_appautoscaling_target this {
max_capacity = 5
min_capacity = 1
resource_id = "service/dev/service1"
scalable_dimension = "ecs:service:DesiredCount"
service_namespace = "ecs"
}
resource aws_appautoscaling_policy memory {
name = "memory"
policy_type = "TargetTrackingScaling"
resource_id = aws_appautoscaling_target.this.resource_id
scalable_dimension = aws_appautoscaling_target.this.scalable_dimension
service_namespace = aws_appautoscaling_target.this.service_namespace
target_tracking_scaling_policy_configuration {
predefined_metric_specification {
predefined_metric_type = "ECSServiceAverageMemoryUtilization"
}
scale_in_cooldown = 60
scale_out_cooldown = 60
target_value = 50
}
}
resource aws_appautoscaling_policy cpu {
name = "cpu"
policy_type = "TargetTrackingScaling"
resource_id = aws_appautoscaling_target.this.resource_id
scalable_dimension = aws_appautoscaling_target.this.scalable_dimension
service_namespace = aws_appautoscaling_target.this.service_namespace
target_tracking_scaling_policy_configuration {
predefined_metric_specification {
predefined_metric_type = "ECSServiceAverageCPUUtilization"
}
scale_in_cooldown = 60
scale_out_cooldown = 60
target_value = 60
}
}
有没有人看到这种行为,即 cloudwatch 中的警报正常响起,ecs 服务总是在预期的时候扩大但并不总是在预期的时候缩小?我们在这里遗漏了一些明显的东西吗?非常感谢帮助
最佳答案
检查您的策略配置。当您有多个缩放策略时,它们必须都准备好一起缩减。
如果您的目标是在不活动后缩减规模,您可以尝试禁用某些政策的规模缩减,以减少规模缩减的变量和/或提高某些政策的目标利用率。如果事件是间歇性的,这可能是给定策略的一个信号,它不应该缩减。它需要持续的低事件来缩小规模。
关于containers - Fargate 向上扩展始终如一,但向下扩展并不始终如一,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66227797/
我是一名优秀的程序员,十分优秀!