Nomad
Threshold Strategy Plugin
The threshold strategy defines a range of metric values with a lower and an
upper bound, and an action to take when the current metric value is considered
to be within bounds.
Multiple tiers can be defined by declaring more than one check in the
same scaling policy. If there is any overlap between the bounds, the safest
check will be used.
Note: When using the threshold strategy with multiple checks make sure
they all have the same group value, otherwise your target
may not be able to scale down.
Agent Configuration Options
strategy "threshold" {
  driver = "threshold"
}
Policy Configuration Options
policy {
  # ...
  check "high-memory-usage" {
    # ...
    group = "memory-usage"
    strategy "threshold" {
      upper_bound = 100
      lower_bound = 70
      delta       = 1
    }
  }
  check "low-memory-usage" {
    # ...
    group = "memory-usage"
    strategy "threshold" {
      upper_bound = 30
      lower_bound = 0
      delta       = -1
    }
  }
  # ...
}
- lower_bound- (float: <optional>)- The minimum value a metric must have to be considered within bounds. This value is always inclusive, meaning a metric with the exact same value as- lower_boundis considered within bounds.
- upper_bound- (float: <optional>)- The maximum value a metric must have to be considered within bounds. This value is always exclusive, meaning a metric with the exact same value as- upper_boundis considered out of bounds.
- delta- (int: <optional>)- Specifies the relative amount to add (positive value) or remove (negative value) from the current target count. Conflicts with- percentageand- value.
- percentage- (float: <optional>)- Specifies a percentage value by which the current count should be increased (positive value) or decreased (negative value). Conflicts with- deltaand- value.
- value- (int: <optional>)- Specifies an absolute value that should be set as the new target count. Conflicts with- deltaand- percentage.
- within_bounds_trigger- (int: 5)- The number of data points in the query result time series that must be within the bound values to trigger the action.
At least one of lower_bound or upper_bound must be defined. If
lower_bound is not defined, any value below upper_bound is considered
within bounds. Similarly, if upper_bound is not defined, any value above or
equal to lower_bound will be considered within bounds.
One, and only one, of delta, percentage, or value must be defined.