Documentation
¶
Index ¶
- Constants
- type Checker
- type ModelResult
- type RecommendationScaleFactorChecker
- type Recommender
- type ScaleAlgorithm
- type SimpleRecommender
- func (r *SimpleRecommender) EvaluateScaleRate(ctx context.Context, scaleFactor *autoscalev1alpha1.RecommendationScaleFactor, ...) (scaleRate float64, err error)
- func (r *SimpleRecommender) GetRecommendResourceValue(ctx context.Context, scaleFactor autoscalev1alpha1.RecommendationScaleFactor) (queryResult metric.HistoryMetric, err error)
- func (r *SimpleRecommender) GetRecommendedResult(ctx context.Context, queryResult metric.HistoryMetric) (result ModelResult)
- func (r *SimpleRecommender) RegisterAlgorithm(algorithm ScaleAlgorithm)
- func (r *SimpleRecommender) RegisterCollector(collector history.HistoryProvider)
- func (r *SimpleRecommender) RunOnce(ctx context.Context)
- func (r *SimpleRecommender) Update(ctx context.Context, scaleFactor autoscalev1alpha1.RecommendationScaleFactor, ...)
- func (r *SimpleRecommender) UpdateRecommendationScaleFactorStatus(ctx context.Context, scaleFactor autoscalev1alpha1.RecommendationScaleFactor)
- type SimpleScaleModel
Constants ¶
View Source
const ( DefaultDesiredValue = "50" DefaultCooldown = "30s" DefaultMinScope = 20 )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Checker ¶
type Checker interface {
CheckAndSetDefault(*autoscalev1alpha1.RecommendationScaleFactor) error
}
type ModelResult ¶
type RecommendationScaleFactorChecker ¶
type RecommendationScaleFactorChecker struct {
// contains filtered or unexported fields
}
func (*RecommendationScaleFactorChecker) CheckAndSetDefault ¶
func (c *RecommendationScaleFactorChecker) CheckAndSetDefault(factor *autoscalev1alpha1.RecommendationScaleFactor) error
type Recommender ¶
type Recommender interface { RunOnce() GetRecommendedResourceValue() Update() Checkpoints() }
type ScaleAlgorithm ¶
type ScaleAlgorithm interface {
PredictNextStage(metricValue metric.HistoryMetric, stageTime time.Duration) ModelResult
}
type SimpleRecommender ¶
type SimpleRecommender struct {
// contains filtered or unexported fields
}
func NewSimpleRecommender ¶
func NewSimpleRecommender() (*SimpleRecommender, error)
func (*SimpleRecommender) EvaluateScaleRate ¶
func (r *SimpleRecommender) EvaluateScaleRate(ctx context.Context, scaleFactor *autoscalev1alpha1.RecommendationScaleFactor, result ModelResult) (scaleRate float64, err error)
get rate of scale
func (*SimpleRecommender) GetRecommendResourceValue ¶
func (r *SimpleRecommender) GetRecommendResourceValue(ctx context.Context, scaleFactor autoscalev1alpha1.RecommendationScaleFactor) (queryResult metric.HistoryMetric, err error)
func (*SimpleRecommender) GetRecommendedResult ¶
func (r *SimpleRecommender) GetRecommendedResult(ctx context.Context, queryResult metric.HistoryMetric) (result ModelResult)
get the recommended resource value
func (*SimpleRecommender) RegisterAlgorithm ¶
func (r *SimpleRecommender) RegisterAlgorithm(algorithm ScaleAlgorithm)
func (*SimpleRecommender) RegisterCollector ¶
func (r *SimpleRecommender) RegisterCollector(collector history.HistoryProvider)
func (*SimpleRecommender) RunOnce ¶
func (r *SimpleRecommender) RunOnce(ctx context.Context)
run once
func (*SimpleRecommender) Update ¶
func (r *SimpleRecommender) Update(ctx context.Context, scaleFactor autoscalev1alpha1.RecommendationScaleFactor, result ModelResult)
update the recommended value
func (*SimpleRecommender) UpdateRecommendationScaleFactorStatus ¶
func (r *SimpleRecommender) UpdateRecommendationScaleFactorStatus(ctx context.Context, scaleFactor autoscalev1alpha1.RecommendationScaleFactor)
update the recommendscalefactors status
type SimpleScaleModel ¶
type SimpleScaleModel struct {
// contains filtered or unexported fields
}
recommend model and algorithm
func NewSimpleScaleModel ¶
func NewSimpleScaleModel() *SimpleScaleModel
func (*SimpleScaleModel) PredictNextStage ¶
func (m *SimpleScaleModel) PredictNextStage(metricValue metric.HistoryMetric, stageTime time.Duration) (result ModelResult)
the function predict next stage value use Periodic laws
Click to show internal directories.
Click to hide internal directories.