Documentation
¶
Index ¶
- Constants
- func GetKey(configurable *Configurable) string
- func LoadKubeConfig() (*rest.Config, error)
- type Annotable
- type ApplyMode
- type Configurable
- type ContainerConfig
- type LimitApplyTarget
- type LoadCfg
- type RequestApplyTarget
- type ScaleDirection
- type StrategyConfig
- func (v *StrategyConfig) GetDryRun() bool
- func (v *StrategyConfig) GetIncreaseRequestCpuAlgo(containerName string) calculator.CalculatorAlgo
- func (v *StrategyConfig) GetIncreaseRequestCpuValue(containerName string) string
- func (v *StrategyConfig) GetIncreaseRequestMemoryAlgo(containerName string) calculator.CalculatorAlgo
- func (v *StrategyConfig) GetIncreaseRequestMemoryValue(containerName string) string
- func (v *StrategyConfig) GetLimitApplyTarget(containerName string) LimitApplyTarget
- func (v *StrategyConfig) GetLimitCPUApplyMode(containerName string) ApplyMode
- func (v *StrategyConfig) GetLimitCPUCalculatorAlgo(containerName string) calculator.CalculatorAlgo
- func (v *StrategyConfig) GetLimitCPUCalculatorValue(containerName string) string
- func (v *StrategyConfig) GetLimitCpuApplyTarget(containerName string) LimitApplyTarget
- func (v *StrategyConfig) GetLimitCpuScaleDirection(containerName string) ScaleDirection
- func (v *StrategyConfig) GetLimitCpuValue(containerName string) *string
- func (v *StrategyConfig) GetLimitMemoryApplyMode(containerName string) ApplyMode
- func (v *StrategyConfig) GetLimitMemoryApplyTarget(containerName string) LimitApplyTarget
- func (v *StrategyConfig) GetLimitMemoryCalculatorAlgo(containerName string) calculator.CalculatorAlgo
- func (v *StrategyConfig) GetLimitMemoryCalculatorValue(containerName string) string
- func (v *StrategyConfig) GetLimitMemoryScaleDirection(containerName string) ScaleDirection
- func (v *StrategyConfig) GetLimitMemoryValue(containerName string) *string
- func (v *StrategyConfig) GetMaxAllowedRecommendationCpu(containerName string) *resource.Quantity
- func (v *StrategyConfig) GetMaxAllowedRecommendationMemory(containerName string) *resource.Quantity
- func (v *StrategyConfig) GetMaxLimitCpu(containerName string) *resource.Quantity
- func (v *StrategyConfig) GetMaxLimitMemory(containerName string) *resource.Quantity
- func (v *StrategyConfig) GetMaxRequestCpu(containerName string) *resource.Quantity
- func (v *StrategyConfig) GetMaxRequestMemory(containerName string) *resource.Quantity
- func (v *StrategyConfig) GetMemoryLimitFromCpuAlgo(containerName string) calculator.CalculatorAlgo
- func (v *StrategyConfig) GetMemoryLimitFromCpuEnabled(containerName string) bool
- func (v *StrategyConfig) GetMemoryLimitFromCpuValue(containerName string) string
- func (v *StrategyConfig) GetMemoryRequestFromCpuAlgo(containerName string) calculator.CalculatorAlgo
- func (v *StrategyConfig) GetMemoryRequestFromCpuEnabled(containerName string) bool
- func (v *StrategyConfig) GetMemoryRequestFromCpuValue(containerName string) string
- func (v *StrategyConfig) GetMinAllowedRecommendationCpu(containerName string) *resource.Quantity
- func (v *StrategyConfig) GetMinAllowedRecommendationMemory(containerName string) *resource.Quantity
- func (v *StrategyConfig) GetMinDiffCpuLimitAlgo(containerName string) calculator.CalculatorAlgo
- func (v *StrategyConfig) GetMinDiffCpuLimitValue(containerName string) string
- func (v *StrategyConfig) GetMinDiffCpuRequestAlgo(containerName string) calculator.CalculatorAlgo
- func (v *StrategyConfig) GetMinDiffCpuRequestValue(containerName string) string
- func (v *StrategyConfig) GetMinDiffMemoryLimitAlgo(containerName string) calculator.CalculatorAlgo
- func (v *StrategyConfig) GetMinDiffMemoryLimitValue(containerName string) string
- func (v *StrategyConfig) GetMinDiffMemoryRequestAlgo(containerName string) calculator.CalculatorAlgo
- func (v *StrategyConfig) GetMinDiffMemoryRequestValue(containerName string) string
- func (v *StrategyConfig) GetMinLimitCpu(containerName string) *resource.Quantity
- func (v *StrategyConfig) GetMinLimitMemory(containerName string) *resource.Quantity
- func (v *StrategyConfig) GetMinRequestCpu(containerName string) *resource.Quantity
- func (v *StrategyConfig) GetMinRequestMemory(containerName string) *resource.Quantity
- func (v *StrategyConfig) GetRequestApplyTarget(containerName string) RequestApplyTarget
- func (v *StrategyConfig) GetRequestCPUApplyMode(containerName string) ApplyMode
- func (v *StrategyConfig) GetRequestCpuApplyTarget(containerName string) RequestApplyTarget
- func (v *StrategyConfig) GetRequestCpuScaleDirection(containerName string) ScaleDirection
- func (v *StrategyConfig) GetRequestCpuValue(containerName string) *string
- func (v *StrategyConfig) GetRequestMemoryApplyMode(containerName string) ApplyMode
- func (v *StrategyConfig) GetRequestMemoryApplyTarget(containerName string) RequestApplyTarget
- func (v *StrategyConfig) GetRequestMemoryScaleDirection(containerName string) ScaleDirection
- func (v *StrategyConfig) GetRequestMemoryValue(containerName string) *string
- func (v *StrategyConfig) GetUnprovidedApplyDefaultRequestCPUSource(containerName string) UnprovidedApplyDefaultMode
- func (v *StrategyConfig) GetUnprovidedApplyDefaultRequestCPUValue(containerName string) string
- func (v *StrategyConfig) GetUnprovidedApplyDefaultRequestMemorySource(containerName string) UnprovidedApplyDefaultMode
- func (v *StrategyConfig) GetUnprovidedApplyDefaultRequestMemoryValue(containerName string) string
- type UnprovidedApplyDefaultMode
Constants ¶
View Source
const VpaPrefix = "oblik-"
Variables ¶
This section is empty.
Functions ¶
func GetKey ¶ added in v0.2.4
func GetKey(configurable *Configurable) string
func LoadKubeConfig ¶
Types ¶
type Configurable ¶
type Configurable struct {
Object interface{}
}
func CreateConfigurable ¶
func CreateConfigurable(object interface{}) *Configurable
func (*Configurable) Get ¶
func (co *Configurable) Get() interface{}
func (*Configurable) GetAnnotations ¶
func (co *Configurable) GetAnnotations() map[string]string
func (*Configurable) GetContainerNames ¶
func (co *Configurable) GetContainerNames() []string
func (*Configurable) GetLabels ¶
func (co *Configurable) GetLabels() map[string]string
func (*Configurable) GetName ¶
func (co *Configurable) GetName() string
func (*Configurable) GetNamespace ¶
func (co *Configurable) GetNamespace() string
type ContainerConfig ¶
type LimitApplyTarget ¶
type LimitApplyTarget int
const ( LimitApplyTargetAuto LimitApplyTarget = iota LimitApplyTargetFrugal LimitApplyTargetBalanced LimitApplyTargetPeak )
type LoadCfg ¶
type LoadCfg struct {
Key string
// Direct resource specifications
RequestCpuValue *string
RequestMemoryValue *string
LimitCpuValue *string
LimitMemoryValue *string
RequestCPUApplyMode *ApplyMode
RequestMemoryApplyMode *ApplyMode
LimitCPUApplyMode *ApplyMode
LimitMemoryApplyMode *ApplyMode
LimitCPUCalculatorAlgo *calculator.CalculatorAlgo
LimitMemoryCalculatorAlgo *calculator.CalculatorAlgo
LimitMemoryCalculatorValue *string
LimitCPUCalculatorValue *string
UnprovidedApplyDefaultRequestCPUSource *UnprovidedApplyDefaultMode
UnprovidedApplyDefaultRequestCPUValue *string
UnprovidedApplyDefaultRequestMemorySource *UnprovidedApplyDefaultMode
UnprovidedApplyDefaultRequestMemoryValue *string
IncreaseRequestCpuAlgo *calculator.CalculatorAlgo
IncreaseRequestMemoryAlgo *calculator.CalculatorAlgo
IncreaseRequestCpuValue *string
IncreaseRequestMemoryValue *string
MinLimitCpu *resource.Quantity
MaxLimitCpu *resource.Quantity
MinLimitMemory *resource.Quantity
MaxLimitMemory *resource.Quantity
MinRequestCpu *resource.Quantity
MaxRequestCpu *resource.Quantity
MinRequestMemory *resource.Quantity
MaxRequestMemory *resource.Quantity
MinAllowedRecommendationCpu *resource.Quantity
MaxAllowedRecommendationCpu *resource.Quantity
MinAllowedRecommendationMemory *resource.Quantity
MaxAllowedRecommendationMemory *resource.Quantity
MinDiffCpuRequestAlgo *calculator.CalculatorAlgo
MinDiffCpuRequestValue *string
MinDiffMemoryRequestAlgo *calculator.CalculatorAlgo
MinDiffMemoryRequestValue *string
MinDiffCpuLimitAlgo *calculator.CalculatorAlgo
MinDiffCpuLimitValue *string
MinDiffMemoryLimitAlgo *calculator.CalculatorAlgo
MinDiffMemoryLimitValue *string
MemoryRequestFromCpuEnabled *bool
MemoryRequestFromCpuAlgo *calculator.CalculatorAlgo
MemoryRequestFromCpuValue *string
MemoryLimitFromCpuEnabled *bool
MemoryLimitFromCpuAlgo *calculator.CalculatorAlgo
MemoryLimitFromCpuValue *string
RequestApplyTarget *RequestApplyTarget
RequestCpuApplyTarget *RequestApplyTarget
RequestMemoryApplyTarget *RequestApplyTarget
LimitApplyTarget *LimitApplyTarget
LimitCpuApplyTarget *LimitApplyTarget
LimitMemoryApplyTarget *LimitApplyTarget
RequestCpuScaleDirection *ScaleDirection
RequestMemoryScaleDirection *ScaleDirection
LimitCpuScaleDirection *ScaleDirection
LimitMemoryScaleDirection *ScaleDirection
}
type RequestApplyTarget ¶
type RequestApplyTarget int
const ( RequestApplyTargetFrugal RequestApplyTarget = iota RequestApplyTargetBalanced RequestApplyTargetPeak )
type ScaleDirection ¶
type ScaleDirection int
const ( ScaleDirectionBoth ScaleDirection = iota ScaleDirectionUp ScaleDirectionDown )
type StrategyConfig ¶
type StrategyConfig struct {
Key string
CronExpr string
CronMaxRandomDelay time.Duration
DryRun bool
Enabled bool
WebhookEnabled bool
Containers map[string]*ContainerConfig
*LoadCfg
}
func CreateStrategyConfig ¶
func CreateStrategyConfig(configurable *Configurable) *StrategyConfig
func (*StrategyConfig) GetDryRun ¶
func (v *StrategyConfig) GetDryRun() bool
func (*StrategyConfig) GetIncreaseRequestCpuAlgo ¶
func (v *StrategyConfig) GetIncreaseRequestCpuAlgo(containerName string) calculator.CalculatorAlgo
func (*StrategyConfig) GetIncreaseRequestCpuValue ¶
func (v *StrategyConfig) GetIncreaseRequestCpuValue(containerName string) string
func (*StrategyConfig) GetIncreaseRequestMemoryAlgo ¶
func (v *StrategyConfig) GetIncreaseRequestMemoryAlgo(containerName string) calculator.CalculatorAlgo
func (*StrategyConfig) GetIncreaseRequestMemoryValue ¶
func (v *StrategyConfig) GetIncreaseRequestMemoryValue(containerName string) string
func (*StrategyConfig) GetLimitApplyTarget ¶
func (v *StrategyConfig) GetLimitApplyTarget(containerName string) LimitApplyTarget
func (*StrategyConfig) GetLimitCPUApplyMode ¶
func (v *StrategyConfig) GetLimitCPUApplyMode(containerName string) ApplyMode
func (*StrategyConfig) GetLimitCPUCalculatorAlgo ¶
func (v *StrategyConfig) GetLimitCPUCalculatorAlgo(containerName string) calculator.CalculatorAlgo
func (*StrategyConfig) GetLimitCPUCalculatorValue ¶
func (v *StrategyConfig) GetLimitCPUCalculatorValue(containerName string) string
func (*StrategyConfig) GetLimitCpuApplyTarget ¶
func (v *StrategyConfig) GetLimitCpuApplyTarget(containerName string) LimitApplyTarget
func (*StrategyConfig) GetLimitCpuScaleDirection ¶
func (v *StrategyConfig) GetLimitCpuScaleDirection(containerName string) ScaleDirection
func (*StrategyConfig) GetLimitCpuValue ¶ added in v0.4.0
func (v *StrategyConfig) GetLimitCpuValue(containerName string) *string
GetLimitCpuValue returns the direct CPU limit value for the container
func (*StrategyConfig) GetLimitMemoryApplyMode ¶
func (v *StrategyConfig) GetLimitMemoryApplyMode(containerName string) ApplyMode
func (*StrategyConfig) GetLimitMemoryApplyTarget ¶
func (v *StrategyConfig) GetLimitMemoryApplyTarget(containerName string) LimitApplyTarget
func (*StrategyConfig) GetLimitMemoryCalculatorAlgo ¶
func (v *StrategyConfig) GetLimitMemoryCalculatorAlgo(containerName string) calculator.CalculatorAlgo
func (*StrategyConfig) GetLimitMemoryCalculatorValue ¶
func (v *StrategyConfig) GetLimitMemoryCalculatorValue(containerName string) string
func (*StrategyConfig) GetLimitMemoryScaleDirection ¶
func (v *StrategyConfig) GetLimitMemoryScaleDirection(containerName string) ScaleDirection
func (*StrategyConfig) GetLimitMemoryValue ¶ added in v0.4.0
func (v *StrategyConfig) GetLimitMemoryValue(containerName string) *string
GetLimitMemoryValue returns the direct memory limit value for the container
func (*StrategyConfig) GetMaxAllowedRecommendationCpu ¶
func (v *StrategyConfig) GetMaxAllowedRecommendationCpu(containerName string) *resource.Quantity
func (*StrategyConfig) GetMaxAllowedRecommendationMemory ¶
func (v *StrategyConfig) GetMaxAllowedRecommendationMemory(containerName string) *resource.Quantity
func (*StrategyConfig) GetMaxLimitCpu ¶
func (v *StrategyConfig) GetMaxLimitCpu(containerName string) *resource.Quantity
func (*StrategyConfig) GetMaxLimitMemory ¶
func (v *StrategyConfig) GetMaxLimitMemory(containerName string) *resource.Quantity
func (*StrategyConfig) GetMaxRequestCpu ¶
func (v *StrategyConfig) GetMaxRequestCpu(containerName string) *resource.Quantity
func (*StrategyConfig) GetMaxRequestMemory ¶
func (v *StrategyConfig) GetMaxRequestMemory(containerName string) *resource.Quantity
func (*StrategyConfig) GetMemoryLimitFromCpuAlgo ¶
func (v *StrategyConfig) GetMemoryLimitFromCpuAlgo(containerName string) calculator.CalculatorAlgo
func (*StrategyConfig) GetMemoryLimitFromCpuEnabled ¶
func (v *StrategyConfig) GetMemoryLimitFromCpuEnabled(containerName string) bool
func (*StrategyConfig) GetMemoryLimitFromCpuValue ¶
func (v *StrategyConfig) GetMemoryLimitFromCpuValue(containerName string) string
func (*StrategyConfig) GetMemoryRequestFromCpuAlgo ¶
func (v *StrategyConfig) GetMemoryRequestFromCpuAlgo(containerName string) calculator.CalculatorAlgo
func (*StrategyConfig) GetMemoryRequestFromCpuEnabled ¶
func (v *StrategyConfig) GetMemoryRequestFromCpuEnabled(containerName string) bool
func (*StrategyConfig) GetMemoryRequestFromCpuValue ¶
func (v *StrategyConfig) GetMemoryRequestFromCpuValue(containerName string) string
func (*StrategyConfig) GetMinAllowedRecommendationCpu ¶
func (v *StrategyConfig) GetMinAllowedRecommendationCpu(containerName string) *resource.Quantity
func (*StrategyConfig) GetMinAllowedRecommendationMemory ¶
func (v *StrategyConfig) GetMinAllowedRecommendationMemory(containerName string) *resource.Quantity
func (*StrategyConfig) GetMinDiffCpuLimitAlgo ¶
func (v *StrategyConfig) GetMinDiffCpuLimitAlgo(containerName string) calculator.CalculatorAlgo
func (*StrategyConfig) GetMinDiffCpuLimitValue ¶
func (v *StrategyConfig) GetMinDiffCpuLimitValue(containerName string) string
func (*StrategyConfig) GetMinDiffCpuRequestAlgo ¶
func (v *StrategyConfig) GetMinDiffCpuRequestAlgo(containerName string) calculator.CalculatorAlgo
func (*StrategyConfig) GetMinDiffCpuRequestValue ¶
func (v *StrategyConfig) GetMinDiffCpuRequestValue(containerName string) string
func (*StrategyConfig) GetMinDiffMemoryLimitAlgo ¶
func (v *StrategyConfig) GetMinDiffMemoryLimitAlgo(containerName string) calculator.CalculatorAlgo
func (*StrategyConfig) GetMinDiffMemoryLimitValue ¶
func (v *StrategyConfig) GetMinDiffMemoryLimitValue(containerName string) string
func (*StrategyConfig) GetMinDiffMemoryRequestAlgo ¶
func (v *StrategyConfig) GetMinDiffMemoryRequestAlgo(containerName string) calculator.CalculatorAlgo
func (*StrategyConfig) GetMinDiffMemoryRequestValue ¶
func (v *StrategyConfig) GetMinDiffMemoryRequestValue(containerName string) string
func (*StrategyConfig) GetMinLimitCpu ¶
func (v *StrategyConfig) GetMinLimitCpu(containerName string) *resource.Quantity
func (*StrategyConfig) GetMinLimitMemory ¶
func (v *StrategyConfig) GetMinLimitMemory(containerName string) *resource.Quantity
func (*StrategyConfig) GetMinRequestCpu ¶
func (v *StrategyConfig) GetMinRequestCpu(containerName string) *resource.Quantity
func (*StrategyConfig) GetMinRequestMemory ¶
func (v *StrategyConfig) GetMinRequestMemory(containerName string) *resource.Quantity
func (*StrategyConfig) GetRequestApplyTarget ¶
func (v *StrategyConfig) GetRequestApplyTarget(containerName string) RequestApplyTarget
func (*StrategyConfig) GetRequestCPUApplyMode ¶
func (v *StrategyConfig) GetRequestCPUApplyMode(containerName string) ApplyMode
func (*StrategyConfig) GetRequestCpuApplyTarget ¶
func (v *StrategyConfig) GetRequestCpuApplyTarget(containerName string) RequestApplyTarget
func (*StrategyConfig) GetRequestCpuScaleDirection ¶
func (v *StrategyConfig) GetRequestCpuScaleDirection(containerName string) ScaleDirection
func (*StrategyConfig) GetRequestCpuValue ¶ added in v0.4.0
func (v *StrategyConfig) GetRequestCpuValue(containerName string) *string
GetRequestCpuValue returns the direct CPU request value for the container
func (*StrategyConfig) GetRequestMemoryApplyMode ¶
func (v *StrategyConfig) GetRequestMemoryApplyMode(containerName string) ApplyMode
func (*StrategyConfig) GetRequestMemoryApplyTarget ¶
func (v *StrategyConfig) GetRequestMemoryApplyTarget(containerName string) RequestApplyTarget
func (*StrategyConfig) GetRequestMemoryScaleDirection ¶
func (v *StrategyConfig) GetRequestMemoryScaleDirection(containerName string) ScaleDirection
func (*StrategyConfig) GetRequestMemoryValue ¶ added in v0.4.0
func (v *StrategyConfig) GetRequestMemoryValue(containerName string) *string
GetRequestMemoryValue returns the direct memory request value for the container
func (*StrategyConfig) GetUnprovidedApplyDefaultRequestCPUSource ¶
func (v *StrategyConfig) GetUnprovidedApplyDefaultRequestCPUSource(containerName string) UnprovidedApplyDefaultMode
func (*StrategyConfig) GetUnprovidedApplyDefaultRequestCPUValue ¶
func (v *StrategyConfig) GetUnprovidedApplyDefaultRequestCPUValue(containerName string) string
func (*StrategyConfig) GetUnprovidedApplyDefaultRequestMemorySource ¶
func (v *StrategyConfig) GetUnprovidedApplyDefaultRequestMemorySource(containerName string) UnprovidedApplyDefaultMode
func (*StrategyConfig) GetUnprovidedApplyDefaultRequestMemoryValue ¶
func (v *StrategyConfig) GetUnprovidedApplyDefaultRequestMemoryValue(containerName string) string
type UnprovidedApplyDefaultMode ¶
type UnprovidedApplyDefaultMode int
const ( UnprovidedApplyDefaultModeOff UnprovidedApplyDefaultMode = iota UnprovidedApplyDefaultModeMinAllowed UnprovidedApplyDefaultModeMaxAllowed UnprovidedApplyDefaultModeValue )
Click to show internal directories.
Click to hide internal directories.