Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var ( DisruptionQueueFailuresTotal = opmetrics.NewPrometheusCounter( crmetrics.Registry, prometheus.CounterOpts{ Namespace: metrics.Namespace, Subsystem: voluntaryDisruptionSubsystem, Name: "queue_failures_total", Help: "The number of times that an enqueued disruption decision failed. Labeled by disruption method.", }, []string{decisionLabel, metrics.ReasonLabel, consolidationTypeLabel}, ) )
Functions ¶
func IsUnrecoverableError ¶
Types ¶
type Command ¶
type Command struct { Replacements []Replacement // contains filtered or unexported fields }
type Queue ¶
type Queue struct { workqueue.RateLimitingInterface // contains filtered or unexported fields }
func NewQueue ¶
func NewQueue(kubeClient client.Client, recorder events.Recorder, cluster *state.Cluster, clock clock.Clock, provisioner *provisioning.Provisioner, ) *Queue
NewQueue creates a queue that will asynchronously orchestrate disruption commands
func (*Queue) Add ¶
Add adds commands to the Queue Each command added to the queue should already be validated and ready for execution.
func (*Queue) HasAny ¶
HasAny checks to see if the candidate is part of an currently executing command.
type Replacement ¶
type Replacement struct { // Use a bool track if a node has already been initialized so we can fire metrics for intialization once. // This intentionally does not capture nodes that go initialized then go NotReady after as other pods can // schedule to this node as well. Initialized bool // contains filtered or unexported fields }
Replacement wraps a NodeClaim name with an initialized field to save on readiness checks and identify when a NodeClaim is first initialized for metrics and events.
type UnrecoverableError ¶
type UnrecoverableError struct {
// contains filtered or unexported fields
}
func NewUnrecoverableError ¶
func NewUnrecoverableError(err error) *UnrecoverableError
Click to show internal directories.
Click to hide internal directories.