Documentation ¶
Index ¶
- type PodResourceRecommender
- type RecommendedContainerResources
- type RecommendedPodResources
- type ResourceEstimator
- func NewConstEstimator(resources model.Resources) ResourceEstimator
- func NewPercentileEstimator(cpuPercentile float64, memoryPercentile float64) ResourceEstimator
- func WithConfidenceMultiplier(multiplier, exponent float64, baseEstimator ResourceEstimator) ResourceEstimator
- func WithMargin(marginFraction float64, baseEstimator ResourceEstimator) ResourceEstimator
- func WithMinResources(minResources model.Resources, baseEstimator ResourceEstimator) ResourceEstimator
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type PodResourceRecommender ¶
type PodResourceRecommender interface {
GetRecommendedPodResources(containerNameToAggregateStateMap model.ContainerNameToAggregateStateMap) RecommendedPodResources
}
PodResourceRecommender computes resource recommendation for a Vpa object.
func CreatePodResourceRecommender ¶
func CreatePodResourceRecommender() PodResourceRecommender
CreatePodResourceRecommender returns the primary recommender.
type RecommendedContainerResources ¶
type RecommendedContainerResources struct { // Recommended optimal amount of resources. Target model.Resources // Recommended minimum amount of resources. LowerBound model.Resources // Recommended maximum amount of resources. UpperBound model.Resources }
RecommendedContainerResources is the recommendation of resources for a container.
type RecommendedPodResources ¶
type RecommendedPodResources map[string]RecommendedContainerResources
RecommendedPodResources is a Map from container name to recommended resources.
type ResourceEstimator ¶
type ResourceEstimator interface {
GetResourceEstimation(s *model.AggregateContainerState) model.Resources
}
ResourceEstimator is a function from AggregateContainerState to model.Resources, e.g. a prediction of resources needed by a group of containers.
func NewConstEstimator ¶
func NewConstEstimator(resources model.Resources) ResourceEstimator
NewConstEstimator returns a new constEstimator with given resources.
func NewPercentileEstimator ¶
func NewPercentileEstimator(cpuPercentile float64, memoryPercentile float64) ResourceEstimator
NewPercentileEstimator returns a new percentileEstimator that uses provided percentiles.
func WithConfidenceMultiplier ¶
func WithConfidenceMultiplier(multiplier, exponent float64, baseEstimator ResourceEstimator) ResourceEstimator
WithConfidenceMultiplier returns a given ResourceEstimator with confidenceMultiplier applied.
func WithMargin ¶
func WithMargin(marginFraction float64, baseEstimator ResourceEstimator) ResourceEstimator
WithMargin returns a given ResourceEstimator with margin applied. The returned resources are equal to the original resources plus (originalResource * marginFraction)
func WithMinResources ¶
func WithMinResources(minResources model.Resources, baseEstimator ResourceEstimator) ResourceEstimator
WithMinResources returns a given ResourceEstimator with minResources applied. The returned resources are equal to the max(original resources, minResources)