Documentation ¶
Index ¶
- func ConvertToRecommendationInfos(src interface{}, target interface{}) ([]byte, []byte, error)
- func ObjectConversion(object interface{}, target interface{}) error
- func RetrievePodTemplate(ctx *RecommendationContext) error
- func RetrievePods(ctx *RecommendationContext) error
- func RetrieveScale(ctx *RecommendationContext) error
- type Filter
- type ObjectIdentity
- type Observe
- type PostPrepare
- type PostRecommend
- type PrePrepare
- type PreRecommend
- type Prepare
- type Recommend
- type RecommendationContext
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func ObjectConversion ¶
func ObjectConversion(object interface{}, target interface{}) error
func RetrievePodTemplate ¶
func RetrievePodTemplate(ctx *RecommendationContext) error
func RetrievePods ¶
func RetrievePods(ctx *RecommendationContext) error
func RetrieveScale ¶
func RetrieveScale(ctx *RecommendationContext) error
Types ¶
type Filter ¶
type Filter interface { // The Filter will filter resource can`t be recommended via target recommender. Filter(ctx *RecommendationContext) error }
Filter interface
type ObjectIdentity ¶
type ObjectIdentity struct { Namespace string APIVersion string Kind string Name string Labels map[string]string Object unstructured.Unstructured }
func (ObjectIdentity) GetObjectReference ¶
func (id ObjectIdentity) GetObjectReference() corev1.ObjectReference
type Observe ¶
type Observe interface {
Observe(ctx *RecommendationContext) error
}
Observe interface
type PostPrepare ¶
type PostPrepare interface {
PostProcessing(ctx *RecommendationContext) error
}
type PostRecommend ¶
type PostRecommend interface {
Policy(ctx *RecommendationContext) error
}
PostRecommend interface
type PrePrepare ¶
type PrePrepare interface {
CheckDataProviders(ctx *RecommendationContext) error
}
PrePrepare interface
type PreRecommend ¶
type PreRecommend interface {
PreRecommend(ctx *RecommendationContext) error
}
PreRecommend interface
type Prepare ¶
type Prepare interface {
CollectData(ctx *RecommendationContext) error
}
Prepare interface
type Recommend ¶
type Recommend interface {
Recommend(ctx *RecommendationContext) error
}
Recommend interface
type RecommendationContext ¶
type RecommendationContext struct { Context context.Context // The kubernetes resource object reference of recommendation flow. Identity ObjectIdentity // Target Object Object client.Object // Result series from prediction ResultValues []*common.TimeSeries // DataProviders contains data source of your recommendation flow. DataProviders map[providers.DataSourceType]providers.History // Recommendation store result of recommendation flow. Recommendation *v1alpha1.Recommendation // When cancel channel accept signal indicates that the context has been canceled. The recommendation should stop executing as soon as possible. // CancelCh <-chan struct{} // RecommendationRule for the context RecommendationRule *v1alpha1.RecommendationRule // metrics namer for datasource provider MetricNamer metricnaming.MetricNamer // Algorithm Config AlgorithmConfig *config.Config // Manager of predict algorithm PredictorMgr predictormgr.Manager // Pod template PodTemplate corev1.PodTemplateSpec // Client Client client.Client // RestMapper RestMapper meta.RESTMapper // ScalesGetter ScaleClient scale.ScalesGetter // oom.Recorder OOMRecorder oom.Recorder // Scale Scale *autoscalingapiv1.Scale // Pods in recommendation Pods []corev1.Pod // HPA Object HPA *autoscalingv2.HorizontalPodAutoscaler // HPA Object EHPA *autoscalingapi.EffectiveHorizontalPodAutoscaler // contains filtered or unexported fields }
func NewRecommendationContext ¶
func NewRecommendationContext(context context.Context, identity ObjectIdentity, recommendationRule *v1alpha1.RecommendationRule, predictorMgr predictormgr.Manager, dataProviders map[providers.DataSourceType]providers.History, recommendation *v1alpha1.Recommendation, client client.Client, scaleClient scale.ScalesGetter, oomRecorder oom.Recorder) RecommendationContext
func NewRecommendationContextForObserve ¶ added in v0.10.0
func NewRecommendationContextForObserve(recommendation *v1alpha1.Recommendation, restMapper meta.RESTMapper, scaleClient scale.ScalesGetter) RecommendationContext
func (*RecommendationContext) AddInputValue ¶ added in v0.11.0
func (ctx *RecommendationContext) AddInputValue(key string, timeSeries []*common.TimeSeries)
func (*RecommendationContext) InputValue ¶ added in v0.11.0
func (ctx *RecommendationContext) InputValue(key string) []*common.TimeSeries
func (*RecommendationContext) String ¶ added in v0.9.0
func (ctx *RecommendationContext) String() string
Click to show internal directories.
Click to hide internal directories.