Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func GetRegisteredInitializers ¶
func GetRegisteredInitializers() map[types.MemoryHeadroomPolicyName]InitFunc
func RegisterInitializer ¶
func RegisterInitializer(name types.MemoryHeadroomPolicyName, initFunc InitFunc)
Types ¶
type HeadroomPolicy ¶
type HeadroomPolicy interface { Name() types.MemoryHeadroomPolicyName // SetPodSet overwrites policy's pod/container record SetPodSet(types.PodSet) // SetEssentials updates necessary region settings for policy update // Available resource value = total - reservedForAllocate // todo: subtract reserve pool size SetEssentials(essentials types.ResourceEssentials) // Update triggers an epoch of algorithm update Update() error // GetHeadroom returns the latest headroom estimation GetHeadroom() (resource.Quantity, error) }
HeadroomPolicy generates resource headroom estimation based on configured algorithm
func NewPolicyCanonical ¶
func NewPolicyCanonical(conf *config.Configuration, _ interface{}, metaReader metacache.MetaReader, metaServer *metaserver.MetaServer, _ metrics.MetricEmitter) HeadroomPolicy
func NewPolicyNUMAAware ¶ added in v0.4.0
func NewPolicyNUMAAware(conf *config.Configuration, _ interface{}, metaReader metacache.MetaReader, metaServer *metaserver.MetaServer, _ metrics.MetricEmitter) HeadroomPolicy
type InitFunc ¶
type InitFunc func(conf *config.Configuration, extraConfig interface{}, metaReader metacache.MetaReader, metaServer *metaserver.MetaServer, emitter metrics.MetricEmitter) HeadroomPolicy
type PolicyBase ¶
type PolicyBase struct {
// contains filtered or unexported fields
}
func NewPolicyBase ¶
func NewPolicyBase(metaReader metacache.MetaReader, metaServer *metaserver.MetaServer) *PolicyBase
func (*PolicyBase) SetEssentials ¶
func (p *PolicyBase) SetEssentials(essentials types.ResourceEssentials)
func (*PolicyBase) SetPodSet ¶
func (p *PolicyBase) SetPodSet(podSet types.PodSet)
type PolicyCanonical ¶
type PolicyCanonical struct { *PolicyBase // contains filtered or unexported fields }
func (*PolicyCanonical) GetHeadroom ¶
func (p *PolicyCanonical) GetHeadroom() (resource.Quantity, error)
func (*PolicyCanonical) Name ¶ added in v0.4.0
func (p *PolicyCanonical) Name() types.MemoryHeadroomPolicyName
func (*PolicyCanonical) Update ¶
func (p *PolicyCanonical) Update() (err error)
type PolicyNUMAAware ¶ added in v0.4.0
type PolicyNUMAAware struct { *PolicyBase // contains filtered or unexported fields }
func (*PolicyNUMAAware) GetHeadroom ¶ added in v0.4.0
func (p *PolicyNUMAAware) GetHeadroom() (resource.Quantity, error)
func (*PolicyNUMAAware) Name ¶ added in v0.4.0
func (p *PolicyNUMAAware) Name() types.MemoryHeadroomPolicyName
func (*PolicyNUMAAware) Update ¶ added in v0.4.0
func (p *PolicyNUMAAware) Update() (err error)
Click to show internal directories.
Click to hide internal directories.