dynamicpolicy

package
v0.1.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 27, 2023 License: Apache-2.0 Imports: 34 Imported by: 1

Documentation

Index

Constants

View Source
const (
	CPUResourcePluginPolicyNameDynamic = "dynamic"
)

Variables

This section is empty.

Functions

func GetReadonlyState

func GetReadonlyState() (state.ReadonlyState, error)

func NewDynamicPolicy

func NewDynamicPolicy(agentCtx *agent.GenericContext, conf *config.Configuration, _ interface{}, agentName string) (bool, agent.Component, error)

Types

type DynamicPolicy

type DynamicPolicy struct {
	advisorapi.UnimplementedCPUPluginServer

	sync.RWMutex
	// contains filtered or unexported fields
}

DynamicPolicy is the policy that's used by default; it will consider the dynamic running information to calculate and adjust resource requirements and configurations

func (*DynamicPolicy) Allocate

Allocate is called during pod admit so that the resource plugin can allocate corresponding resource for the container according to resource request

func (*DynamicPolicy) ApplyConfig

func (p *DynamicPolicy) ApplyConfig(conf *config.DynamicConfiguration)

func (*DynamicPolicy) GetCheckpoint

func (*DynamicPolicy) GetResourcePluginOptions

func (p *DynamicPolicy) GetResourcePluginOptions(context.Context, *pluginapi.Empty) (*pluginapi.ResourcePluginOptions, error)

GetResourcePluginOptions returns options to be communicated with Resource Manager

func (*DynamicPolicy) GetResourcesAllocation

GetResourcesAllocation returns allocation results of corresponding resources

func (*DynamicPolicy) GetTopologyAwareAllocatableResources

GetTopologyAwareAllocatableResources returns corresponding allocatable resources as machineInfo aware format

func (*DynamicPolicy) GetTopologyAwareResources

GetTopologyAwareResources returns allocation results of corresponding resources as machineInfo aware format

func (*DynamicPolicy) GetTopologyHints

func (p *DynamicPolicy) GetTopologyHints(ctx context.Context,
	req *pluginapi.ResourceRequest) (resp *pluginapi.ResourceHintsResponse, err error)

GetTopologyHints returns hints of corresponding resources

func (*DynamicPolicy) Name

func (p *DynamicPolicy) Name() string

func (*DynamicPolicy) PreStartContainer

PreStartContainer is called, if indicated by resource plugin during registeration phase, before each container start. Resource plugin can run resource specific operations such as resetting the resource before making resources available to the container

func (*DynamicPolicy) ReclaimDisabled

func (p *DynamicPolicy) ReclaimDisabled(poolsCPUSet map[string]machine.CPUSet, reclaimedCPUs machine.CPUSet) machine.CPUSet

ReclaimDisabled tries to allocate reclaimed cores to none-reclaimed pools, if we disable reclaim on current node. this could be used a down-grade strategy to disable reclaimed workloads in emergency

func (*DynamicPolicy) RemovePod

func (*DynamicPolicy) ResourceName

func (p *DynamicPolicy) ResourceName() string

func (*DynamicPolicy) Start

func (p *DynamicPolicy) Start() (err error)

func (*DynamicPolicy) Stop

func (p *DynamicPolicy) Stop() error

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL