The spec for a CostEfficiencySloMapping.

Hierarchy

Constructors

Properties

elasticityStrategy: ElasticityStrategyKind<SloCompliance, RestServiceTarget, Record<string, any>>

Specifies the type of ElasticityStrategy to use for this SLO mapping.

Configuration parameters for the SLO.

Note

If C is a class, the @PolarisType decorator needs to be applied in the concrete class that implements SloMappingSpec.

stabilizationWindow?: StabilizationWindow

Configures the duration of the period after the last elasticity strategy execution, during which the strategy will not be executed again (to avoid unnecessary scaling).

staticElasticityStrategyConfig?: Record<string, unknown>

Any static configuration parameters, which are unknown to the SLO, but which may be required to configure the chosen kind of elasticity strategy should be specified here. They will be copied over into the spec of the elasticity strategy.

For example, suppose the SLO knows only about the parameters in SloCompliance, but you want to use an elasticity strategy that requires an additional parameter, e.g., maxReplicas. This can be configured when instantiating the SloMapping:

new MySloMapping({
elasticityStrategy: new ElasticityStrategyKind({
kind: 'my-special-elasticity-strategy-kind',
...
}),
...,
staticElasticityStrategyConfig: {
// Anything in here will be copied over to the `staticConfig` property of the elasticity strategy spec.
maxReplicas: 100,
},
});

Specifies the target on which to execute the elasticity strategy.

Generated using TypeDoc