Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AntiAffinityNoisyProjectsStep ¶
type AntiAffinityNoisyProjectsStep struct {
// BaseStep is a helper struct that provides common functionality for all steps.
scheduler.BaseStep[api.ExternalSchedulerRequest, AntiAffinityNoisyProjectsStepOpts]
}
Step to avoid noisy projects by downvoting the hosts they are running on.
func (*AntiAffinityNoisyProjectsStep) GetName ¶
func (s *AntiAffinityNoisyProjectsStep) GetName() string
Get the name of this step, used for identification in config, logs, metrics, etc.
func (*AntiAffinityNoisyProjectsStep) Run ¶
func (s *AntiAffinityNoisyProjectsStep) Run(traceLog *slog.Logger, request api.ExternalSchedulerRequest) (*scheduler.StepResult, error)
Downvote the hosts a project is currently running on if it's noisy.
type AntiAffinityNoisyProjectsStepOpts ¶
type AntiAffinityNoisyProjectsStepOpts struct {
AvgCPUUsageLowerBound float64 `json:"avgCPUUsageLowerBound"` // -> mapped to ActivationLowerBound
AvgCPUUsageUpperBound float64 `json:"avgCPUUsageUpperBound"` // -> mapped to ActivationUpperBound
AvgCPUUsageActivationLowerBound float64 `json:"avgCPUUsageActivationLowerBound"`
AvgCPUUsageActivationUpperBound float64 `json:"avgCPUUsageActivationUpperBound"`
}
Options for the scheduling step, given through the step config in the service yaml file. Use the options contained in this struct to configure the bounds for min-max scaling.
func (AntiAffinityNoisyProjectsStepOpts) Validate ¶
func (o AntiAffinityNoisyProjectsStepOpts) Validate() error
type AvoidLongTermContendedHostsStep ¶
type AvoidLongTermContendedHostsStep struct {
// BaseStep is a helper struct that provides common functionality for all steps.
scheduler.BaseStep[api.ExternalSchedulerRequest, AvoidLongTermContendedHostsStepOpts]
}
Step to avoid long term contended hosts by downvoting them.
func (*AvoidLongTermContendedHostsStep) GetName ¶
func (s *AvoidLongTermContendedHostsStep) GetName() string
Get the name of this step, used for identification in config, logs, metrics, etc.
func (*AvoidLongTermContendedHostsStep) Run ¶
func (s *AvoidLongTermContendedHostsStep) Run(traceLog *slog.Logger, request api.ExternalSchedulerRequest) (*scheduler.StepResult, error)
Downvote hosts that are highly contended.
type AvoidLongTermContendedHostsStepOpts ¶
type AvoidLongTermContendedHostsStepOpts struct {
AvgCPUContentionLowerBound float64 `json:"avgCPUContentionLowerBound"` // -> mapped to ActivationLowerBound
AvgCPUContentionUpperBound float64 `json:"avgCPUContentionUpperBound"` // -> mapped to ActivationUpperBound
AvgCPUContentionActivationLowerBound float64 `json:"avgCPUContentionActivationLowerBound"`
AvgCPUContentionActivationUpperBound float64 `json:"avgCPUContentionActivationUpperBound"`
MaxCPUContentionLowerBound float64 `json:"maxCPUContentionLowerBound"` // -> mapped to ActivationLowerBound
MaxCPUContentionUpperBound float64 `json:"maxCPUContentionUpperBound"` // -> mapped to ActivationUpperBound
MaxCPUContentionActivationLowerBound float64 `json:"maxCPUContentionActivationLowerBound"`
MaxCPUContentionActivationUpperBound float64 `json:"maxCPUContentionActivationUpperBound"`
}
Options for the scheduling step, given through the step config in the service yaml file.
func (AvoidLongTermContendedHostsStepOpts) Validate ¶
func (o AvoidLongTermContendedHostsStepOpts) Validate() error
type AvoidShortTermContendedHostsStep ¶
type AvoidShortTermContendedHostsStep struct {
// BaseStep is a helper struct that provides common functionality for all steps.
scheduler.BaseStep[api.ExternalSchedulerRequest, AvoidShortTermContendedHostsStepOpts]
}
Step to avoid recently contended hosts by downvoting them.
func (*AvoidShortTermContendedHostsStep) GetName ¶
func (s *AvoidShortTermContendedHostsStep) GetName() string
Get the name of this step, used for identification in config, logs, metrics, etc.
func (*AvoidShortTermContendedHostsStep) Run ¶
func (s *AvoidShortTermContendedHostsStep) Run(traceLog *slog.Logger, request api.ExternalSchedulerRequest) (*scheduler.StepResult, error)
Downvote hosts that are highly contended.
type AvoidShortTermContendedHostsStepOpts ¶
type AvoidShortTermContendedHostsStepOpts struct {
AvgCPUContentionLowerBound float64 `json:"avgCPUContentionLowerBound"` // -> mapped to ActivationLowerBound
AvgCPUContentionUpperBound float64 `json:"avgCPUContentionUpperBound"` // -> mapped to ActivationUpperBound
AvgCPUContentionActivationLowerBound float64 `json:"avgCPUContentionActivationLowerBound"`
AvgCPUContentionActivationUpperBound float64 `json:"avgCPUContentionActivationUpperBound"`
MaxCPUContentionLowerBound float64 `json:"maxCPUContentionLowerBound"` // -> mapped to ActivationLowerBound
MaxCPUContentionUpperBound float64 `json:"maxCPUContentionUpperBound"` // -> mapped to ActivationUpperBound
MaxCPUContentionActivationLowerBound float64 `json:"maxCPUContentionActivationLowerBound"`
MaxCPUContentionActivationUpperBound float64 `json:"maxCPUContentionActivationUpperBound"`
}
Options for the scheduling step, given through the step config in the service yaml file.
func (AvoidShortTermContendedHostsStepOpts) Validate ¶
func (o AvoidShortTermContendedHostsStepOpts) Validate() error